Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <type name="MagentoCatalogUiDataProviderProductProductDataProvider">
- <arguments>
- <argument name="addFieldStrategies" xsi:type="array">
- <item name="configurable_options" xsi:type="object">TrainingUnit6UiDataProviderProductAddConfigurableOptionsToCollection</item>
- </argument>
- </arguments>
- </type>
- <container name="listing_top">
- <filters name="listing_filters">
- <filterSelect name="configurable_options">
- <argument name="optionsProvider" xsi:type="configurableObject">
- <argument name="class" xsi:type="string">TrainingUnit6UiComponentListingColumnOptions</argument>
- </argument>
- <argument name="data" xsi:type="array">
- <item name="config" xsi:type="array">
- <item name="provider" xsi:type="string">${ $.parentName }</item>
- <item name="imports" xsi:type="array">
- <item name="visible" xsi:type="string">componentType = column, index = ${ $.index }:visible</item>
- </item>
- <item name="dataScope" xsi:type="string">configurable_options</item>
- <item name="caption" xsi:type="string" translate="true">Select...</item>
- <item name="label" xsi:type="string" translate="true">Configurable options</item>
- </item>
- </argument>
- </filterSelect>
- </filters>
- </container>
- <container name="listing_top">
- <filters name="listing_filters">
- <filterSelect name="configurable_options">
- <argument name="optionsProvider" xsi:type="configurableObject">
- <argument name="class" xsi:type="string">TrainingUnit6UiComponentListingColumnOptions</argument>
- </argument>
- <argument name="data" xsi:type="array">
- <item name="config" xsi:type="array">
- <item name="provider" xsi:type="string">${ $.parentName }</item>
- <item name="imports" xsi:type="array">
- <item name="visible" xsi:type="string">componentType = column, index = ${ $.index }:visible</item>
- </item>
- <item name="dataScope" xsi:type="string">configurable_options</item>
- <item name="caption" xsi:type="string" translate="true">Select...</item>
- <item name="label" xsi:type="string" translate="true">Configurable options</item>
- </item>
- </argument>
- </filterSelect>
- </filters>
- </container>
- <container name="listing_top">
- <filters name="listing_filters">
- <filterSelect name="configurable_options">
- <argument name="optionsProvider" xsi:type="configurableObject">
- <argument name="class" xsi:type="string">TrainingUnit6UiComponentListingColumnOptions</argument>
- </argument>
- <argument name="data" xsi:type="array">
- <item name="config" xsi:type="array">
- <item name="provider" xsi:type="string">${ $.parentName }</item>
- <item name="imports" xsi:type="array">
- <item name="visible" xsi:type="string">componentType = column, index = ${ $.index }:visible</item>
- </item>
- <item name="dataScope" xsi:type="string">configurable_options</item>
- <item name="caption" xsi:type="string" translate="true">Select...</item>
- <item name="label" xsi:type="string" translate="true">Configurable options</item>
- </item>
- </argument>
- </filterSelect>
- </filters>
- </container>
- <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
- <preference for="MagentoCatalogUiDataProviderProductProductDataProvider" type="TrainingUnit6UiDataProviderProductAddProductSeriesOptionsToCollection"/>
- </config>
- <?xml version="1.0" encoding="UTF-8"?>
- <listing xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
- <listingToolbar name="listing_top">
- </listingToolbar>
- <column name="product_series" class="TrainingUnit6UiComponentListingColumnProductSeries">
- <argument name="data" xsi:type="array">
- <item name="config" xsi:type="array">
- <item name="filter" xsi:type="string">text</item>
- <item name="add_field" xsi:type="boolean">false</item>
- <item name="dataType" xsi:type="string">text</item>
- <item name="label" xsi:type="string" translate="true">Product series</item>
- <item name="sortOrder" xsi:type="number">100</item>
- </item>
- </argument>
- </column>
- </columns>
- </listing>
- namespace TrainingUnit6UiComponentListingColumn;
- use MagentoFrameworkViewElementUiComponentFactory;
- use MagentoFrameworkViewElementUiComponentContextInterface;
- /**
- * Class Price
- */
- class ProductSeries extends MagentoUiComponentListingColumnsColumn
- {
- protected $_productloader;
- public function __construct(
- ContextInterface $context,
- UiComponentFactory $uiComponentFactory,
- MagentoCatalogModelProductFactory $_productloader,
- array $components = [],
- array $data = []
- ) {
- parent::__construct($context,$uiComponentFactory, $components, $data);
- $this->_productloader = $_productloader;
- }
- /**
- * Prepare Data Source
- *
- * @param array $dataSource
- * @return array
- */
- public function prepareDataSource(array $dataSource)
- {
- //$fieldName = $this->getData('name');
- return $dataSource;
- }
- }
- namespace TrainingUnit6UiDataProviderProduct;
- class AddProductSeriesOptionsToCollection extends MagentoCatalogUiDataProviderProductProductDataProvider
- {
- public function addFilter(MagentoFrameworkApiFilter $filter)
- {
- if($filter->getField()=='unit6'){
- $this->getCollection()->addCategoriesFilter(array('in' => $filter->getValue()));
- }
- elseif (isset($this->addFilterStrategies[$filter->getField()])) {
- $this->addFilterStrategies[$filter->getField()]
- ->addFilter(
- $this->getCollection(),
- $filter->getField(),
- [$filter->getConditionType() => $filter->getValue()]
- );
- } else {
- parent::addFilter($filter);
- }
- }
- }
Add Comment
Please, Sign In to add comment