Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | 31x 31x 114x 114x 114x 114x 114x 114x 114x 114x 114x 114x 114x 3x 3x 3x 114x | /* * This module is a custom row for rendering an associated product * * @author Tamara Robichet <tamara.robichet@akeneo.com> * @copyright 2017 Akeneo SAS (http://www.akeneo.com) * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ define( [ 'underscore', 'jquery', 'oro/datagrid/product-row', 'pim/media-url-generator', 'pim/template/product/tab/associated-product-row', 'oro/mediator', 'pim/security-context' ], function( _, $, BaseRow, mediaUrlGenerator, thumbnailTemplate, mediator, SecurityContext ) { return BaseRow.extend({ thumbnailTemplate: _.template(thumbnailTemplate), /** * Return true if the user can remove the association, false otherwise. * * The use can remove an association if he has the permission and if the association * does not come from inheritance. * * @return {Boolean} */ canRemoveAssociation() { const permissionGranted = SecurityContext.isGranted('pim_enrich_associations_remove'); const fromInheritance = this.model.get('from_inheritance'); return permissionGranted && !fromInheritance; }, /** * {@inheritdoc} */ getTemplateOptions() { const isProductModel = this.isProductModel(); const label = this.model.get('label'); const canRemoveAssociation = this.canRemoveAssociation(); return { useLayerStyle: isProductModel, label, identifier: this.model.get('identifier'), imagePath: this.getThumbnailImagePath(), canRemoveAssociation }; }, /** * {@inheritdoc} */ render() { BaseRow.prototype.render.call(this, arguments); const row = this.renderedRow; row.off('click'); $('.AknIconButton--remove', row).on('click', () => { mediator.trigger('datagrid:unselectModel:association-product-grid', this.model); mediator.trigger('datagrid:unselectModel:association-product-model-grid', this.model); row.remove(); }); }, /** * {@inheritdoc} */ getRenderableColumns() { return [this.getCompletenessCellType()]; } }); } ); |