From c9a9d6406aaa5a4d68e2ed35abe5f847c394285c Mon Sep 17 00:00:00 2001 From: Mahesh Singh Date: Fri, 15 Feb 2019 23:56:52 +0530 Subject: [PATCH 1/3] sort order added to downloable product links column --- .../Product/Form/Modifier/Links.php | 36 ++++++++++++------- .../Product/Form/Modifier/Samples.php | 12 ++++--- 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php index a352c4bdf7bc3..e367405416f0d 100644 --- a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php +++ b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php @@ -208,12 +208,12 @@ protected function getRecord() 'children', $record, [ - 'container_link_title' => $this->getTitleColumn(), - 'container_link_price' => $this->getPriceColumn(), - 'container_file' => $this->getFileColumn(), - 'container_sample' => $this->getSampleColumn(), - 'is_shareable' => $this->getShareableColumn(), - 'max_downloads' => $this->getMaxDownloadsColumn(), + 'container_link_title' => $this->getTitleColumn(10), + 'container_link_price' => $this->getPriceColumn(20), + 'container_file' => $this->getFileColumn(30), + 'container_sample' => $this->getSampleColumn(40), + 'is_shareable' => $this->getShareableColumn(50), + 'max_downloads' => $this->getMaxDownloadsColumn(60), 'position' => $recordPosition, 'action_delete' => $recordActionDelete, ] @@ -221,9 +221,10 @@ protected function getRecord() } /** + * @param int $sortOrder * @return array */ - protected function getTitleColumn() + protected function getTitleColumn($sortOrder) { $titleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -232,6 +233,7 @@ protected function getTitleColumn() 'label' => __('Title'), 'showLabel' => false, 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $titleField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, @@ -247,9 +249,10 @@ protected function getTitleColumn() } /** + * @param int $sortOrder * @return array */ - protected function getPriceColumn() + protected function getPriceColumn($sortOrder) { $priceContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -258,6 +261,7 @@ protected function getPriceColumn() 'label' => __('Price'), 'showLabel' => false, 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $priceField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, @@ -281,9 +285,10 @@ protected function getPriceColumn() } /** + * @param int $sortOrder * @return array */ - protected function getFileColumn() + protected function getFileColumn($sortOrder) { $fileContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -292,6 +297,7 @@ protected function getFileColumn() 'label' => __('File'), 'showLabel' => false, 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $fileTypeField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Select::NAME, @@ -344,9 +350,10 @@ protected function getFileColumn() } /** + * @param int $sortOrder * @return array */ - protected function getSampleColumn() + protected function getSampleColumn($sortOrder) { $sampleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -355,6 +362,7 @@ protected function getSampleColumn() 'label' => __('Sample'), 'showLabel' => false, 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $sampleTypeField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Select::NAME, @@ -403,9 +411,10 @@ protected function getSampleColumn() } /** + * @param int $sortOrder * @return array */ - protected function getShareableColumn() + protected function getShareableColumn($sortOrder) { $shareableField['arguments']['data']['config'] = [ 'label' => __('Shareable'), @@ -413,6 +422,7 @@ protected function getShareableColumn() 'componentType' => Form\Field::NAME, 'dataType' => Form\Element\DataType\Number::NAME, 'dataScope' => 'is_shareable', + 'sortOrder' => $sortOrder, 'options' => $this->shareable->toOptionArray(), ]; @@ -420,9 +430,10 @@ protected function getShareableColumn() } /** + * @param int $sortOrder * @return array */ - protected function getMaxDownloadsColumn() + protected function getMaxDownloadsColumn($sortOrder) { $maxDownloadsContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -431,6 +442,7 @@ protected function getMaxDownloadsColumn() 'label' => __('Max. Downloads'), 'showLabel' => false, 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $numberOfDownloadsField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, diff --git a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php index 1587163ba8121..0dd94f2584218 100644 --- a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php +++ b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php @@ -183,8 +183,8 @@ protected function getRecord() 'children', $record, [ - 'container_sample_title' => $this->getTitleColumn(), - 'container_sample' => $this->getSampleColumn(), + 'container_sample_title' => $this->getTitleColumn(10), + 'container_sample' => $this->getSampleColumn(20), 'position' => $recordPosition, 'action_delete' => $recordActionDelete, ] @@ -192,9 +192,10 @@ protected function getRecord() } /** + * @param int $sortOrder * @return array */ - protected function getTitleColumn() + protected function getTitleColumn($sortOrder) { $titleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -203,6 +204,7 @@ protected function getTitleColumn() 'showLabel' => false, 'label' => __('Title'), 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $titleField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, @@ -218,9 +220,10 @@ protected function getTitleColumn() } /** + * @param int $sortOrder * @return array */ - protected function getSampleColumn() + protected function getSampleColumn($sortOrder) { $sampleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -229,6 +232,7 @@ protected function getSampleColumn() 'label' => __('File'), 'showLabel' => false, 'dataScope' => '', + 'sortOrder' => $sortOrder, ]; $sampleType['arguments']['data']['config'] = [ 'formElement' => Form\Element\Select::NAME, From 92d2a3c1e5a2f71c67b1335b7d909136e106b554 Mon Sep 17 00:00:00 2001 From: Mahesh Singh Date: Tue, 19 Feb 2019 22:42:35 +0530 Subject: [PATCH 2/3] backward compatibilty fixed --- .../Product/Form/Modifier/Links.php | 42 ++++++++----------- .../Product/Form/Modifier/Samples.php | 14 +++---- 2 files changed, 24 insertions(+), 32 deletions(-) diff --git a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php index e367405416f0d..e4889b160963f 100644 --- a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php +++ b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php @@ -208,12 +208,12 @@ protected function getRecord() 'children', $record, [ - 'container_link_title' => $this->getTitleColumn(10), - 'container_link_price' => $this->getPriceColumn(20), - 'container_file' => $this->getFileColumn(30), - 'container_sample' => $this->getSampleColumn(40), - 'is_shareable' => $this->getShareableColumn(50), - 'max_downloads' => $this->getMaxDownloadsColumn(60), + 'container_link_title' => $this->getTitleColumn(), + 'container_link_price' => $this->getPriceColumn(), + 'container_file' => $this->getFileColumn(), + 'container_sample' => $this->getSampleColumn(), + 'is_shareable' => $this->getShareableColumn(), + 'max_downloads' => $this->getMaxDownloadsColumn(), 'position' => $recordPosition, 'action_delete' => $recordActionDelete, ] @@ -221,10 +221,9 @@ protected function getRecord() } /** - * @param int $sortOrder * @return array */ - protected function getTitleColumn($sortOrder) + protected function getTitleColumn() { $titleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -233,7 +232,7 @@ protected function getTitleColumn($sortOrder) 'label' => __('Title'), 'showLabel' => false, 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 10, ]; $titleField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, @@ -249,10 +248,9 @@ protected function getTitleColumn($sortOrder) } /** - * @param int $sortOrder * @return array */ - protected function getPriceColumn($sortOrder) + protected function getPriceColumn() { $priceContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -261,7 +259,7 @@ protected function getPriceColumn($sortOrder) 'label' => __('Price'), 'showLabel' => false, 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 20, ]; $priceField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, @@ -285,10 +283,9 @@ protected function getPriceColumn($sortOrder) } /** - * @param int $sortOrder * @return array */ - protected function getFileColumn($sortOrder) + protected function getFileColumn() { $fileContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -297,7 +294,7 @@ protected function getFileColumn($sortOrder) 'label' => __('File'), 'showLabel' => false, 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 30, ]; $fileTypeField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Select::NAME, @@ -350,10 +347,9 @@ protected function getFileColumn($sortOrder) } /** - * @param int $sortOrder * @return array */ - protected function getSampleColumn($sortOrder) + protected function getSampleColumn() { $sampleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -362,7 +358,7 @@ protected function getSampleColumn($sortOrder) 'label' => __('Sample'), 'showLabel' => false, 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 40, ]; $sampleTypeField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Select::NAME, @@ -411,10 +407,9 @@ protected function getSampleColumn($sortOrder) } /** - * @param int $sortOrder * @return array */ - protected function getShareableColumn($sortOrder) + protected function getShareableColumn() { $shareableField['arguments']['data']['config'] = [ 'label' => __('Shareable'), @@ -422,7 +417,7 @@ protected function getShareableColumn($sortOrder) 'componentType' => Form\Field::NAME, 'dataType' => Form\Element\DataType\Number::NAME, 'dataScope' => 'is_shareable', - 'sortOrder' => $sortOrder, + 'sortOrder' => 50, 'options' => $this->shareable->toOptionArray(), ]; @@ -430,10 +425,9 @@ protected function getShareableColumn($sortOrder) } /** - * @param int $sortOrder * @return array */ - protected function getMaxDownloadsColumn($sortOrder) + protected function getMaxDownloadsColumn() { $maxDownloadsContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -442,7 +436,7 @@ protected function getMaxDownloadsColumn($sortOrder) 'label' => __('Max. Downloads'), 'showLabel' => false, 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 60, ]; $numberOfDownloadsField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, diff --git a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php index 0dd94f2584218..b12c415b0b0b1 100644 --- a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php +++ b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php @@ -183,8 +183,8 @@ protected function getRecord() 'children', $record, [ - 'container_sample_title' => $this->getTitleColumn(10), - 'container_sample' => $this->getSampleColumn(20), + 'container_sample_title' => $this->getTitleColumn(), + 'container_sample' => $this->getSampleColumn(), 'position' => $recordPosition, 'action_delete' => $recordActionDelete, ] @@ -192,10 +192,9 @@ protected function getRecord() } /** - * @param int $sortOrder * @return array */ - protected function getTitleColumn($sortOrder) + protected function getTitleColumn() { $titleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -204,7 +203,7 @@ protected function getTitleColumn($sortOrder) 'showLabel' => false, 'label' => __('Title'), 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 10, ]; $titleField['arguments']['data']['config'] = [ 'formElement' => Form\Element\Input::NAME, @@ -220,10 +219,9 @@ protected function getTitleColumn($sortOrder) } /** - * @param int $sortOrder * @return array */ - protected function getSampleColumn($sortOrder) + protected function getSampleColumn() { $sampleContainer['arguments']['data']['config'] = [ 'componentType' => Container::NAME, @@ -232,7 +230,7 @@ protected function getSampleColumn($sortOrder) 'label' => __('File'), 'showLabel' => false, 'dataScope' => '', - 'sortOrder' => $sortOrder, + 'sortOrder' => 20, ]; $sampleType['arguments']['data']['config'] = [ 'formElement' => Form\Element\Select::NAME, From 03f0c3aa6c5e9bc2207c197b54e89ae727e15342 Mon Sep 17 00:00:00 2001 From: nmalevanec Date: Mon, 4 Mar 2019 15:31:18 +0200 Subject: [PATCH 3/3] Fix static tests. --- .../Product/Form/Modifier/Links.php | 32 +++++++++++++++---- .../Product/Form/Modifier/Samples.php | 22 +++++++++---- 2 files changed, 41 insertions(+), 13 deletions(-) diff --git a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php index e4889b160963f..9ab664cb27839 100644 --- a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php +++ b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Links.php @@ -3,22 +3,24 @@ * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ + namespace Magento\Downloadable\Ui\DataProvider\Product\Form\Modifier; -use Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\AbstractModifier; use Magento\Catalog\Model\Locator\LocatorInterface; +use Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\AbstractModifier; use Magento\Downloadable\Model\Product\Type; -use Magento\Downloadable\Model\Source\TypeUpload; use Magento\Downloadable\Model\Source\Shareable; -use Magento\Store\Model\StoreManagerInterface; +use Magento\Downloadable\Model\Source\TypeUpload; use Magento\Framework\Stdlib\ArrayManager; -use Magento\Ui\Component\DynamicRows; use Magento\Framework\UrlInterface; +use Magento\Store\Model\StoreManagerInterface; use Magento\Ui\Component\Container; +use Magento\Ui\Component\DynamicRows; use Magento\Ui\Component\Form; /** - * Class adds a grid with links + * Class adds a grid with links. + * * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ class Links extends AbstractModifier @@ -86,7 +88,7 @@ public function __construct( } /** - * {@inheritdoc} + * @inheritdoc */ public function modifyData(array $data) { @@ -101,7 +103,7 @@ public function modifyData(array $data) } /** - * {@inheritdoc} + * @inheritdoc * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ public function modifyMeta(array $meta) @@ -160,6 +162,8 @@ public function modifyMeta(array $meta) } /** + * Get dynamic rows meta. + * * @return array */ protected function getDynamicRows() @@ -180,6 +184,8 @@ protected function getDynamicRows() } /** + * Get single link record meta. + * * @return array */ protected function getRecord() @@ -221,6 +227,8 @@ protected function getRecord() } /** + * Get link title meta. + * * @return array */ protected function getTitleColumn() @@ -248,6 +256,8 @@ protected function getTitleColumn() } /** + * Get link price meta. + * * @return array */ protected function getPriceColumn() @@ -283,6 +293,8 @@ protected function getPriceColumn() } /** + * Get link file element meta. + * * @return array */ protected function getFileColumn() @@ -347,6 +359,8 @@ protected function getFileColumn() } /** + * Get sample container meta. + * * @return array */ protected function getSampleColumn() @@ -407,6 +421,8 @@ protected function getSampleColumn() } /** + * Get link "is sharable" element meta. + * * @return array */ protected function getShareableColumn() @@ -425,6 +441,8 @@ protected function getShareableColumn() } /** + * Get link "max downloads" element meta. + * * @return array */ protected function getMaxDownloadsColumn() diff --git a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php index b12c415b0b0b1..3890ee5b9e2b2 100644 --- a/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php +++ b/app/code/Magento/Downloadable/Ui/DataProvider/Product/Form/Modifier/Samples.php @@ -3,21 +3,23 @@ * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ + namespace Magento\Downloadable\Ui\DataProvider\Product\Form\Modifier; -use Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\AbstractModifier; use Magento\Catalog\Model\Locator\LocatorInterface; +use Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\AbstractModifier; use Magento\Downloadable\Model\Product\Type; use Magento\Downloadable\Model\Source\TypeUpload; -use Magento\Store\Model\StoreManagerInterface; use Magento\Framework\Stdlib\ArrayManager; -use Magento\Ui\Component\DynamicRows; use Magento\Framework\UrlInterface; +use Magento\Store\Model\StoreManagerInterface; use Magento\Ui\Component\Container; +use Magento\Ui\Component\DynamicRows; use Magento\Ui\Component\Form; /** - * Class adds a grid with samples + * Class adds a grid with samples. + * * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ class Samples extends AbstractModifier @@ -77,7 +79,7 @@ public function __construct( } /** - * {@inheritdoc} + * @inheritdoc */ public function modifyData(array $data) { @@ -90,7 +92,7 @@ public function modifyData(array $data) } /** - * {@inheritdoc} + * @inheritdoc * @SuppressWarnings(PHPMD.ExcessiveMethodLength) */ public function modifyMeta(array $meta) @@ -135,6 +137,8 @@ public function modifyMeta(array $meta) } /** + * Get sample rows meta. + * * @return array */ protected function getDynamicRows() @@ -155,6 +159,8 @@ protected function getDynamicRows() } /** + * Get single sample row meta. + * * @return array */ protected function getRecord() @@ -192,6 +198,8 @@ protected function getRecord() } /** + * Get sample title meta. + * * @return array */ protected function getTitleColumn() @@ -219,6 +227,8 @@ protected function getTitleColumn() } /** + * Get sample element meta. + * * @return array */ protected function getSampleColumn()