/** * Render action. * * @param \Magento\Framework\DataObject $row * * @return string */ public function render(\Magento\Framework\DataObject $row) { $storeViewId = $this->getRequest()->getParam('store'); $banner = $this->_bannerFactory->create()->setStoreViewId($storeViewId)->load($row->getId()); $srcImage = $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . $banner->getImage(); return '<image width="150" height="50" src ="' . $srcImage . '" alt="' . $banner->getImage() . '" >'; }
/** * before save. */ public function beforeSave() { if ($this->getStoreViewId()) { $defaultStore = $this->_bannerFactory->create()->setStoreViewId(null)->load($this->getId()); $storeAttributes = $this->getStoreAttributes(); $data = $this->getData(); foreach ($storeAttributes as $attribute) { if (isset($data['use_default']) && isset($data['use_default'][$attribute])) { $this->setData($attribute . '_in_store', false); } else { $this->setData($attribute . '_in_store', true); $this->setData($attribute . '_value', $this->getData($attribute)); } $this->setData($attribute, $defaultStore->getData($attribute)); } } return parent::beforeSave(); }