Skip to content

Commit c0663fd

Browse files
committed
PB-235: Story Bug for PB-107: Adding Condition Filter will Not Update Total until After Saving Edit Form & Reopening
1 parent f570486 commit c0663fd

File tree

4 files changed

+10
-9
lines changed

4 files changed

+10
-9
lines changed

app/code/Magento/PageBuilder/Controller/Adminhtml/Form/Element/ProductTotals.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ class ProductTotals extends \Magento\Backend\App\Action implements HttpPostActio
6666
* @param \Magento\Widget\Helper\Conditions $conditionsHelper
6767
* @param \Magento\Catalog\Api\CategoryRepositoryInterface $categoryRepository
6868
* @param \Magento\Framework\Controller\Result\JsonFactory $jsonFactory
69+
* @param \Magento\CatalogInventory\Helper\Stock $stockFilter
6970
*/
7071
public function __construct(
7172
\Magento\Backend\App\Action\Context $context,
@@ -159,7 +160,7 @@ public function execute()
159160

160161
// Only display enabled products in totals count
161162
$collection->addAttributeToFilter('status', Status::STATUS_ENABLED);
162-
$collection->setVisibility(Visibility::VISIBILITY_BOTH);
163+
$collection->setVisibility([Visibility::VISIBILITY_BOTH]);
163164
$this->stockFilter->addIsInStockFilterToCollection($collection);
164165

165166
return $this->jsonFactory->create()

app/code/Magento/PageBuilder/view/adminhtml/ui_component/pagebuilder_products_form.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,7 @@
231231
<dataType>text</dataType>
232232
<imports>
233233
<link name="conditionOption">ns = ${ $.ns }, index = condition_option:value</link>
234-
<link name="updateProductTotals">ns = ${ $.ns }, index = category_ids:value</link>
234+
<link name="category_ids">ns = ${ $.ns }, index = category_ids:value</link>
235235
<link name="updateProductTotals">ns = ${ $.ns }, index = sku:value</link>
236236
<link name="conditionValue">ns = ${ $.ns }, index = conditions_form:value</link>
237237
</imports>

app/code/Magento/PageBuilder/view/adminhtml/web/js/form/element/html.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,11 @@ define(['Magento_Ui/js/form/components/html', 'jquery'], function (Html, $) {
3737
}, function (el) {
3838
this.elements.push(el);
3939
$(el).on('change', this.updateValue.bind(this));
40-
$('.rule-param-apply').on('click', function(e) {
41-
$(e.target).closest('.rule-param-apply').prevAll('input.element-value-changer').change();
40+
$(el).nextAll('.rule-param-apply').on('click', function() {
41+
$(el).change();
42+
});
43+
$(el).closest('li').find('.rule-param-remove').on('click', function() {
44+
$(el).val('').change();
4245
});
4346
this.updateValue(this);
4447
}.bind(this));

app/code/Magento/PageBuilder/view/adminhtml/web/js/form/element/product-totals.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ define([
2323
listens: {
2424
conditionOption: 'updateProductTotals',
2525
conditionValue: 'updateProductTotals',
26-
formData: 'updateProductTotals'
26+
category_ids: 'updateProductTotals'
2727
},
2828
imports: {
2929
formData: '${ $.provider }:data'
@@ -48,17 +48,14 @@ define([
4848
*
4949
*/
5050
updateProductTotals: _.debounce(function () {
51-
if (!this.conditionOption || _.isEmpty(this.formData) ||
52-
(this.conditionOption === 'category_ids' && this.category_ids === this.formData['category_ids'])) {
51+
if (!this.conditionOption || _.isEmpty(this.formData)) {
5352
return;
5453
}
5554

5655
if (this.conditionOption === 'category_ids' && typeof this.formData['category_ids'] != "string") {
5756
this.formData['category_ids'] = '';
5857
}
5958

60-
this.category_ids = this.conditionOption === 'category_ids' ? this.formData['category_ids'] : '';
61-
6259
_.extend(this.formData, this.conditionValue);
6360
conditionsDataProcessor(this.formData, this.conditionOption + '_source');
6461

0 commit comments

Comments
 (0)