![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/vendor/magento/module-ui/view/base/web/js/grid/columns/ |
/** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ /** * @api */ define([ './column', 'jquery', 'mage/template', 'text!Magento_Ui/templates/grid/cells/thumbnail/preview.html', 'underscore', 'Magento_Ui/js/modal/modal', 'mage/translate' ], function (Column, $, mageTemplate, thumbnailPreviewTemplate, _) { 'use strict'; return Column.extend({ defaults: { bodyTmpl: 'ui/grid/cells/thumbnail', fieldClass: { 'data-grid-thumbnail-cell': true } }, /** * Get image source data per row. * * @param {Object} row * @returns {String} */ getSrc: function (row) { return row[this.index + '_src']; }, /** * Get original image source data per row. * * @param {Object} row * @returns {String} */ getOrigSrc: function (row) { return row[this.index + '_orig_src']; }, /** * Get link data per row. * * @param {Object} row * @returns {String} */ getLink: function (row) { return row[this.index + '_link']; }, /** * Get alternative text data per row. * * @param {Object} row * @returns {String} */ getAlt: function (row) { return _.escape(row[this.index + '_alt']); }, /** * Check if preview available. * * @returns {Boolean} */ isPreviewAvailable: function () { return this['has_preview'] || false; }, /** * Build preview. * * @param {Object} row */ preview: function (row) { var modalHtml = mageTemplate( thumbnailPreviewTemplate, { src: this.getOrigSrc(row), alt: this.getAlt(row), link: this.getLink(row), linkText: $.mage.__('Go to Details Page') } ), previewPopup = $('<div></div>').html(modalHtml); previewPopup.modal({ title: this.getAlt(row), innerScroll: true, modalClass: '_image-box', buttons: [] }).trigger('openModal'); }, /** * Get field handler per row. * * @param {Object} row * @returns {Function} */ getFieldHandler: function (row) { if (this.isPreviewAvailable()) { return this.preview.bind(this, row); } } }); });