Skip to content

Commit 6164f8e

Browse files
🔃 [EngCom] Public Pull Requests - 2.1-develop
Accepted Public Pull Requests: - #13549: Backport of MAGETWO-80198 for Magento 2.1: Fix issue #10565 #10575 (by @hostep) - #13543: Backport of MAGETWO-69379 for Magento 2.1: use payment method name to� (by @hostep) Fixed GitHub Issues: - #10565: Magento ver. 2.1.8 New Product with Custom attribute set not working (reported by @gilbertsohal) has been fixed in #13549 by @hostep in 2.1-develop branch Related commits: 1. d95e15c - #6207: Checkbox IDs for Terms and Conditions should be unique in Checkout (reported by @bka) has been fixed in #13543 by @hostep in 2.1-develop branch Related commits: 1. 6ec9e22
2 parents afbc7d6 + 785b207 commit 6164f8e

File tree

3 files changed

+23
-3
lines changed

3 files changed

+23
-3
lines changed

app/code/Magento/CheckoutAgreements/view/frontend/web/js/view/checkout-agreements.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,26 @@ define(
4545
agreementsModal.showModal();
4646
},
4747

48+
/**
49+
* build a unique id for the term checkbox
50+
*
51+
* @param {Object} context - the ko context
52+
* @param {Number} agreementId
53+
*/
54+
getCheckboxId: function (context, agreementId) {
55+
var paymentMethodName = '',
56+
paymentMethodRenderer = context.$parents[1];
57+
58+
// corresponding payment method fetched from parent context
59+
if (paymentMethodRenderer) {
60+
// item looks like this: {title: "Check / Money order", method: "checkmo"}
61+
paymentMethodName = paymentMethodRenderer.item ?
62+
paymentMethodRenderer.item.method : '';
63+
}
64+
65+
return 'agreement_' + paymentMethodName + '_' + agreementId;
66+
},
67+
4868
/**
4969
* Init modal window for rendered element
5070
*

app/code/Magento/CheckoutAgreements/view/frontend/web/template/checkout/checkout-agreements.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@
1111
<div class="checkout-agreement required">
1212
<input type="checkbox" class="required-entry"
1313
data-bind="attr: {
14-
'id': 'agreement_' + agreementId,
14+
'id': $parent.getCheckboxId($parentContext, agreementId),
1515
'name': 'agreement[' + agreementId + ']',
1616
'value': agreementId
1717
}"/>
18-
<label data-bind="attr: {'for': 'agreement_' + agreementId}">
18+
<label data-bind="attr: {'for': $parent.getCheckboxId($parentContext, agreementId)}">
1919
<button type="button"
2020
class="action action-show"
2121
data-bind="click: function(data, event) { return $parent.showContent(data, event) }"

app/code/Magento/Ui/view/base/web/js/form/element/multiselect.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ define([
4949
* @param {Array} data - current component value
5050
*/
5151
setPrepareToSendData: function (data) {
52-
if (!data.length) {
52+
if (_.isUndefined(data) || !data.length) {
5353
data = '';
5454
}
5555

0 commit comments

Comments
 (0)