![]() 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/old/vendor/amasty/product-attachment/Model/File/DataProvider/Modifiers/ |
<?php /** * @author Amasty Team * @copyright Copyright (c) Amasty (https://www.amasty.com) * @package Product Attachments Base for Magento 2 */ namespace Amasty\ProductAttachment\Model\File\DataProvider\Modifiers; class Category { /** * @var \Magento\Framework\Registry */ private $registry; /** * @var \Magento\Store\Model\StoreManagerInterface */ private $storeManager; /** * @var \Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\Categories */ private $categoriesModifier; /** * @var \Magento\Catalog\Model\ProductFactory */ private $productFactory; public function __construct( \Magento\Framework\Registry $registry, \Magento\Store\Model\StoreManagerInterface $storeManager, \Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\Categories $categoriesModifier, \Magento\Catalog\Model\ProductFactory $productFactory ) { $this->registry = $registry; $this->storeManager = $storeManager; $this->categoriesModifier = $categoriesModifier; $this->productFactory = $productFactory; } /** * @param array $meta * * @return void */ public function addCategoryField(&$meta, $store) { $this->setCategoriesContainer($meta); /** Magento 2.3 support */ $currentStore = $this->registry->registry('current_store'); $this->registry->unregister('current_store'); $this->registry->register('current_store', $this->storeManager->getStore($store)); $this->registry->register('current_product', $this->productFactory->create()); $meta = $this->categoriesModifier->modifyMeta($meta); $this->registry->unregister('current_store'); $this->registry->register('current_store', $currentStore); unset($meta['create_category_modal']); unset($meta['additional']['children']['container_category_ids']['children']['create_category_button']); } /** * @param array $meta * * @return void */ public function setCategoriesContainer(&$meta) { $meta['additional']['children']['container_category_ids'] = [ 'arguments' => [ 'data' => [ 'config' => [ 'formElement' => 'container', 'componentType' => 'container', 'breakLine' => false, 'label' => 'Categories', 'required' => '0', 'sortOrder' => 90, ] ] ], 'children' => [ 'category_ids' => [ 'arguments' => [ 'data' => [ 'config' => [ 'dataType' => 'text', 'formElement' => 'input', 'visible' => '1', 'required' => '0', 'label' => 'Categories', 'code' => 'category_ids', 'sortOrder' => 90, 'componentType' => 'field', ] ] ] ] ] ]; } }