Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace WageCategorylistSetup;
- use MagentoFrameworkModuleSetupMigration;
- use MagentoFrameworkSetupInstallDataInterface;
- use MagentoFrameworkSetupModuleContextInterface;
- use MagentoFrameworkSetupModuleDataSetupInterface;
- use MagentoCatalogSetupCategorySetupFactory;
- class InstallData implements InstallDataInterface
- {
- public function __construct(CategorySetupFactory $categorySetupFactory)
- {
- $this->categorySetupFactory = $categorySetupFactory;
- }
- public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
- {
- $installer = $setup;
- $installer->startSetup();
- $categorySetup = $this->categorySetupFactory->create(['setup' => $setup]);
- $entityTypeId = $categorySetup->getEntityTypeId(MagentoCatalogModelCategory::ENTITY);
- $attributeSetId = $categorySetup->getDefaultAttributeSetId($entityTypeId);
- $categorySetup->removeAttribute(
- MagentoCatalogModelCategory::ENTITY, 'banner_image' );
- $categorySetup->addAttribute(
- MagentoCatalogModelCategory::ENTITY, 'banner_image', [
- 'type' => 'varchar',
- 'label' => 'Featured Image',
- 'input' => 'image',
- 'backend' => 'MagentoCatalogModelCategoryAttributeBackendImage',
- 'required' => false,
- 'sort_order' => 5,
- 'global' => MagentoEavModelEntityAttributeScopedAttributeInterface::SCOPE_STORE,
- 'group' => 'General Information',
- ]
- );
- $installer->endSetup();
- }
- }
- <?xml version="1.0" encoding="UTF-8"?>
- <form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
- <fieldset name="content">
- <field name="thumbnail">
- <argument name="data" xsi:type="array">
- <item name="config" xsi:type="array">
- <item name="dataType" xsi:type="string">string</item>
- <item name="source" xsi:type="string">category</item>
- <item name="label" xsi:type="string" translate="true">Thumbnail Image</item>
- <item name="visible" xsi:type="boolean">true</item>
- <item name="formElement" xsi:type="string">fileUploader</item>
- <item name="elementTmpl" xsi:type="string">ui/form/element/uploader/uploader</item>
- <item name="previewTmpl" xsi:type="string">Magento_Catalog/image-preview</item>
- <item name="required" xsi:type="boolean">false</item>
- <item name="sortOrder" xsi:type="number">30</item>
- <item name="uploaderConfig" xsi:type="array">
- <item name="url" xsi:type="url" path="categorylist/category_thumbnailimage/upload"/>
- </item>
- </item>
- </argument>
- </field>
- </fieldset>
- </form>
- namespace WageCategorylistControllerAdminhtmlCategoryThumbnailimage;
- use MagentoFrameworkControllerResultFactory;
- /**
- * Class Upload
- */
- class Upload extends MagentoBackendAppAction
- {
- protected $baseTmpPath;
- protected $imageUploader;
- public function __construct(
- MagentoBackendAppActionContext $context,
- MagentoCatalogModelImageUploader $imageUploader
- ) {
- $this->imageUploader = $imageUploader;
- parent::__construct($context);
- }
- public function execute() {
- try {
- $result = $this->imageUploader->saveFileToTmpDir('thumbnail');
- $result['cookie'] = [
- 'name' => $this->_getSession()->getName(),
- 'value' => $this->_getSession()->getSessionId(),
- 'lifetime' => $this->_getSession()->getCookieLifetime(),
- 'path' => $this->_getSession()->getCookiePath(),
- 'domain' => $this->_getSession()->getCookieDomain(),
- ];
- } catch (Exception $e) {
- $result = ['error' => $e->getMessage(), 'errorcode' => $e->getCode()];
- }
- return $this->resultFactory->create(ResultFactory::TYPE_JSON)->setData($result);
- }
- }
- <?xml version="1.0"?>
- <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
- <type name="WageCategorylistControllerAdminhtmlCategoryThumbnailimageUpload">
- <arguments>
- <argument name="imageUploader" xsi:type="object">MagentoCatalogCategoryImageUpload</argument>
- </arguments>
- </type>
- <virtualType name="MagentoCatalogCategoryImageUpload" type="MagentoCatalogModelImageUploader">
- <arguments>
- <argument name="baseTmpPath" xsi:type="string">catalog/tmp/category</argument>
- <argument name="basePath" xsi:type="string">catalog/category</argument>
- <argument name="allowedExtensions" xsi:type="array">
- <item name="jpg" xsi:type="string">jpg</item>
- <item name="jpeg" xsi:type="string">jpeg</item>
- <item name="gif" xsi:type="string">gif</item>
- <item name="png" xsi:type="string">png</item>
- </argument>
- </arguments>
- </virtualType>
- </config>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement