Skip to content

Commit dd6fe09

Browse files
committed
ACP2E-3286: Related products SelectAll/Unselect All Issue
1 parent bb4ea82 commit dd6fe09

File tree

2 files changed

+6
-11
lines changed

2 files changed

+6
-11
lines changed

app/code/Magento/Catalog/view/frontend/web/js/related-products.js

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,11 @@ define([
4747
* @return {Boolean} - Prevent default event action and event propagation.
4848
*/
4949
_selectAllRelated: function (e) {
50-
var self = this,
51-
innerHTML = this.options.relatedProductsCheckFlag ?
52-
this.options.selectAllMessage : this.options.unselectAllMessage;
50+
let isChecked = this.options.relatedProductsCheckFlag;
51+
$(e.target).html(isChecked ? this.options.selectAllMessage : this.options.unselectAllMessage);
52+
this.options.relatedProductsCheckFlag = !isChecked;
5353

54-
$(e.target).html(innerHTML);
55-
56-
this.options.relatedProductsCheckFlag = !this.options.relatedProductsCheckFlag;
57-
$(this.options.relatedCheckbox + ':visible').each(function () {
58-
$(this).prop('checked', self.options.relatedProductsCheckFlag); });
54+
$(this.options.relatedCheckbox + ':visible').prop('checked', this.options.relatedProductsCheckFlag);
5955
this._addRelatedToProduct();
6056

6157
return false;

dev/tests/js/jasmine/tests/app/code/Magento/Catalog/frontend/js/related-products.test.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
*/
55
define([
66
'jquery',
7-
'Magento_Catalog/js/related-products',
8-
'jquery-ui-modules/widget'
7+
'Magento_Catalog/js/related-products'
98
], function ($) {
109
'use strict';
1110

@@ -46,7 +45,7 @@ define([
4645
expect($(relatedCheckboxSelector + ':checked').length).toBe(0);
4746
});
4847

49-
it('should select all except manually selected product when "Select All" is clicked after manual selection',
48+
it('should select all products, including those manually selected, when "Select All" is clicked',
5049
function () {
5150
$(relatedCheckboxSelector).first().prop('checked', true).trigger('click');
5251
$(selectAllLinkSelector).trigger('click');

0 commit comments

Comments
 (0)