wickes-css2 2.104.0-develop.1 → 2.104.0-develop.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/css/components/checkout-chip.css +1 -0
- package/build/css/components/checkout-payment-repayment-terms.css +1 -0
- package/build/css/main.css +1 -1
- package/build/js/emulation.min.js +210 -98
- package/build/js/page/billie-business-type.js +11 -6
- package/build/js/page/checkout-payment-details.js +175 -51
- package/package.json +1 -1
- package/src/components/address-billie.hbs +38 -36
- package/src/components/billie-modal.hbs +2 -2
- package/src/components/checkout-chip.hbs +15 -0
- package/src/components/checkout-edit-billing-address.hbs +1 -3
- package/src/components/checkout-payment-details-v2.hbs +35 -23
- package/src/components/checkout-payment-repayment-terms.hbs +12 -0
- package/src/components/my-account/active-orders/list-orders.hbs +1 -1
- package/src/data/data_billie-terms.json +7 -0
- package/src/data/my-account/data_my-account.json +153 -3
- package/src/js/emulation/billie-modal.js +45 -0
- package/src/js/emulation/checkout-payment-details.js +8 -8
- package/src/js/emulation/forms.js +118 -89
- package/src/js/emulation/paymentLoader.js +4 -3
- package/src/js/emulation/repayment-toggle.js +35 -0
- package/src/js/page/billie-business-type.js +11 -6
- package/src/js/page/checkout-payment-details.js +175 -51
- package/src/page_my-account.html +0 -1
- package/src/scss/components/checkout-chip.scss +65 -0
- package/src/scss/components/checkout-payment-repayment-terms.scss +39 -0
- package/src/scss/main.scss +2 -0
|
@@ -1,107 +1,203 @@
|
|
|
1
1
|
var Wick = Wick || {};
|
|
2
2
|
Wick.CheckoutPaymentDetails = (function() {
|
|
3
3
|
const $modal = $('#modal-terms-and-conditions');
|
|
4
|
+
|
|
5
|
+
let prevPaymentMethod = null;
|
|
4
6
|
let prevClearableMethod;
|
|
7
|
+
|
|
5
8
|
let detailsLabel = {
|
|
6
|
-
inputName: 'card-name',
|
|
7
|
-
buttonName: 'btn-enter-details',
|
|
9
|
+
inputName: 'card-name', buttonName: 'btn-enter-details',
|
|
8
10
|
};
|
|
9
11
|
|
|
10
12
|
const elements = {
|
|
13
|
+
$billieRepaymentTerms: $('.js-billie-repayment-terms'),
|
|
14
|
+
$billieInfoBlock: $('.checkout-payment-details__billie'),
|
|
11
15
|
$wrapperPaymentInput: $('.checkout-payment-details__row'),
|
|
12
16
|
paymentInputName: '[name=payment-method]',
|
|
13
17
|
$cardDetails: $('.checkout-payment-details__card-details'),
|
|
14
18
|
$placeOrder: $('.checkout-payment-details__place-order'),
|
|
15
19
|
$billingAddress: $('.billing-address'),
|
|
16
20
|
hiddenCardDetailsClass: 'checkout-payment-details__card-details_hidden',
|
|
21
|
+
$billieBusiness: $('[data-billie-business]'),
|
|
22
|
+
businessTypeName: '[name="businessType"]',
|
|
23
|
+
$unregisteredFields: $('#unregistered-fields'),
|
|
24
|
+
$registeredFields: $('#registered-fields'),
|
|
17
25
|
hiddenClass: 'd-none',
|
|
18
|
-
}
|
|
26
|
+
};
|
|
19
27
|
|
|
20
28
|
function preparePage() {
|
|
21
|
-
var modalOpened = $(
|
|
22
|
-
if (!modalOpened)
|
|
23
|
-
|
|
24
|
-
}
|
|
29
|
+
var modalOpened = $('.modal.show').length;
|
|
30
|
+
if (!modalOpened) return;
|
|
31
|
+
|
|
25
32
|
var modalContent = $modal.find('.modal-content').clone();
|
|
26
|
-
$modal.modal(
|
|
27
|
-
modalContent.addClass(
|
|
28
|
-
|
|
29
|
-
|
|
33
|
+
$modal.modal('hide');
|
|
34
|
+
modalContent.addClass('print-area');
|
|
35
|
+
|
|
36
|
+
$('body')
|
|
37
|
+
.addClass('print-mode')
|
|
30
38
|
.append(modalContent);
|
|
31
39
|
}
|
|
32
40
|
|
|
33
41
|
function resetPage() {
|
|
34
|
-
var modalPrintModeActive = $(
|
|
35
|
-
if (!modalPrintModeActive)
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
$(
|
|
39
|
-
$
|
|
40
|
-
$modal.modal("show");
|
|
42
|
+
var modalPrintModeActive = $('body.print-mode').length;
|
|
43
|
+
if (!modalPrintModeActive) return;
|
|
44
|
+
|
|
45
|
+
$('body').removeClass('print-mode');
|
|
46
|
+
$('.print-area').remove();
|
|
47
|
+
$modal.modal('show');
|
|
41
48
|
}
|
|
42
49
|
|
|
43
50
|
function getPaymentMethods() {
|
|
44
51
|
return $(elements.paymentInputName)
|
|
45
52
|
.map((_, item) => $(item).val())
|
|
46
|
-
.get()
|
|
53
|
+
.get();
|
|
47
54
|
}
|
|
48
55
|
|
|
49
56
|
function togglePaymentBlocks(paymentMethods, checkedMethod) {
|
|
50
57
|
paymentMethods.forEach(method => {
|
|
51
|
-
$(`[data-${method}]`).toggle(checkedMethod === method)
|
|
52
|
-
})
|
|
58
|
+
$(`[data-${method}]`).toggle(checkedMethod === method);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
function resetAllCheckoutForms(keepPaymentMethod) {
|
|
63
|
+
const $container = elements.$wrapperPaymentInput.closest('.checkout-payment-details');
|
|
64
|
+
if (!$container.length) return;
|
|
65
|
+
|
|
66
|
+
$container.find('form').each(function() {
|
|
67
|
+
if (Wick.Forms && typeof Wick.Forms.clearValidationErrors === 'function') {
|
|
68
|
+
Wick.Forms.clearValidationErrors(this);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
$container
|
|
73
|
+
.find('input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], textarea')
|
|
74
|
+
.val('');
|
|
75
|
+
|
|
76
|
+
$container.find('select').each(function() {
|
|
77
|
+
this.selectedIndex = 0;
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
$container.find('input[type="checkbox"]').prop('checked', false);
|
|
81
|
+
|
|
82
|
+
$container.find('input[type="radio"]').each(function() {
|
|
83
|
+
const $radio = $(this);
|
|
84
|
+
const name = $radio.attr('name');
|
|
85
|
+
const val = $radio.val();
|
|
86
|
+
|
|
87
|
+
if (name === 'payment-method') {
|
|
88
|
+
$radio.prop('checked', val === keepPaymentMethod);
|
|
89
|
+
} else {
|
|
90
|
+
$radio.prop('checked', false);
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
$container.find('.radio-expanded-content').hide();
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
function setBillingDetailsRowVisibility(isVisible) {
|
|
98
|
+
const $row = elements.$billingAddress.find('.checkout-payment-details__row');
|
|
99
|
+
$row.toggle(isVisible);
|
|
100
|
+
$row.find(':input').prop('disabled', !isVisible);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
function setBillieStepVisibility(isReady) {
|
|
104
|
+
setBillingDetailsRowVisibility(isReady);
|
|
105
|
+
elements.$billieInfoBlock.toggle(isReady);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function resetBillieRepaymentSelection() {
|
|
109
|
+
elements.$billieRepaymentTerms
|
|
110
|
+
.find('input[name="repaymentTerms"]')
|
|
111
|
+
.prop('checked', false);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
function showBillieBusiness() {
|
|
115
|
+
elements.$billieBusiness.removeClass(elements.hiddenClass);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
function hideBillieBusiness() {
|
|
119
|
+
elements.$billieBusiness.addClass(elements.hiddenClass);
|
|
120
|
+
|
|
121
|
+
elements.$unregisteredFields
|
|
122
|
+
.addClass(elements.hiddenClass)
|
|
123
|
+
.removeAttr('style');
|
|
124
|
+
|
|
125
|
+
elements.$registeredFields
|
|
126
|
+
.addClass(elements.hiddenClass)
|
|
127
|
+
.removeAttr('style');
|
|
128
|
+
|
|
129
|
+
elements.$billieBusiness.find('input[type="radio"]').prop('checked', false);
|
|
130
|
+
elements.$billieBusiness.find('input.tbx').val('');
|
|
53
131
|
}
|
|
54
132
|
|
|
133
|
+
function toggleBusinessTypeFields(type) {
|
|
134
|
+
const isUnregistered = type === 'unregistered';
|
|
135
|
+
const isRegistered = type === 'registered';
|
|
136
|
+
|
|
137
|
+
elements.$unregisteredFields.toggleClass(elements.hiddenClass, !isUnregistered);
|
|
138
|
+
elements.$registeredFields.toggleClass(elements.hiddenClass, !isRegistered);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
|
|
55
142
|
function changeDetailsBlock(checkedMethod) {
|
|
56
|
-
|
|
143
|
+
if (checkedMethod !== 'billie') {
|
|
144
|
+
setBillingDetailsRowVisibility(true);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
switch (checkedMethod) {
|
|
57
148
|
case 'paypal':
|
|
58
149
|
hideCardDetails();
|
|
59
150
|
showPlaceOrder();
|
|
60
151
|
hideBillingAddres();
|
|
61
152
|
break;
|
|
153
|
+
|
|
62
154
|
case 'klarna':
|
|
63
155
|
hideBillingAddres();
|
|
64
156
|
break;
|
|
157
|
+
|
|
65
158
|
case 'billie':
|
|
66
159
|
detailsLabel = {
|
|
67
|
-
...detailsLabel,
|
|
68
|
-
|
|
69
|
-
buttonText: 'Pay with Billie'
|
|
70
|
-
}
|
|
160
|
+
...detailsLabel, labelText: 'Name on Billie account', buttonText: 'Pay with Billie',
|
|
161
|
+
};
|
|
71
162
|
changeLabelText(detailsLabel);
|
|
163
|
+
|
|
164
|
+
setBillieStepVisibility(false);
|
|
165
|
+
resetBillieRepaymentSelection();
|
|
166
|
+
showBillieBusiness();
|
|
72
167
|
break;
|
|
168
|
+
|
|
73
169
|
case 'clearpay':
|
|
74
170
|
detailsLabel = {
|
|
75
|
-
...detailsLabel,
|
|
76
|
-
|
|
77
|
-
buttonText: 'Pay with Clearpay'
|
|
78
|
-
}
|
|
171
|
+
...detailsLabel, labelText: 'Name on Clearpay account', buttonText: 'Pay with Clearpay',
|
|
172
|
+
};
|
|
79
173
|
prevClearableMethod === 'card' && clearInputFields();
|
|
80
174
|
changeLabelText(detailsLabel);
|
|
81
175
|
prevClearableMethod = checkedMethod;
|
|
82
176
|
break;
|
|
177
|
+
|
|
83
178
|
case 'apple':
|
|
84
|
-
hideCardDetails()
|
|
85
|
-
hidePlaceOrder()
|
|
86
|
-
hideBillingAddres()
|
|
179
|
+
hideCardDetails();
|
|
180
|
+
hidePlaceOrder();
|
|
181
|
+
hideBillingAddres();
|
|
87
182
|
break;
|
|
183
|
+
|
|
88
184
|
case 'google':
|
|
89
|
-
hideCardDetails()
|
|
90
|
-
hidePlaceOrder()
|
|
91
|
-
hideBillingAddres()
|
|
185
|
+
hideCardDetails();
|
|
186
|
+
hidePlaceOrder();
|
|
187
|
+
hideBillingAddres();
|
|
92
188
|
break;
|
|
189
|
+
|
|
93
190
|
case 'card':
|
|
94
191
|
detailsLabel = {
|
|
95
|
-
...detailsLabel,
|
|
96
|
-
|
|
97
|
-
buttonText: 'Enter card details'
|
|
98
|
-
}
|
|
192
|
+
...detailsLabel, labelText: 'Name on card', buttonText: 'Enter card details',
|
|
193
|
+
};
|
|
99
194
|
prevClearableMethod === 'clearpay' && clearInputFields();
|
|
100
195
|
changeLabelText(detailsLabel);
|
|
101
196
|
prevClearableMethod = checkedMethod;
|
|
102
197
|
break;
|
|
198
|
+
|
|
103
199
|
default:
|
|
104
|
-
showPlaceOrder()
|
|
200
|
+
showPlaceOrder();
|
|
105
201
|
}
|
|
106
202
|
}
|
|
107
203
|
|
|
@@ -115,9 +211,11 @@ Wick.CheckoutPaymentDetails = (function() {
|
|
|
115
211
|
|
|
116
212
|
function changeLabelText(params) {
|
|
117
213
|
const { inputName, labelText, buttonName, buttonText } = params;
|
|
214
|
+
|
|
118
215
|
elements.$billingAddress.removeClass(elements.hiddenClass);
|
|
216
|
+
|
|
119
217
|
let labelElement = elements.$billingAddress.find('[for="' + inputName + '"]');
|
|
120
|
-
let buttonElement = elements.$billingAddress.find(
|
|
218
|
+
let buttonElement = elements.$billingAddress.find('.' + buttonName + ' .btn__text');
|
|
121
219
|
|
|
122
220
|
labelElement && labelElement.text(labelText);
|
|
123
221
|
buttonElement && buttonElement.text(buttonText);
|
|
@@ -135,14 +233,43 @@ Wick.CheckoutPaymentDetails = (function() {
|
|
|
135
233
|
elements.$placeOrder.addClass(elements.hiddenClass);
|
|
136
234
|
}
|
|
137
235
|
|
|
236
|
+
function initBillieBusinessTypeToggle() {
|
|
237
|
+
$(document).on('change', elements.businessTypeName, function () {
|
|
238
|
+
toggleBusinessTypeFields($(this).val());
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
|
|
138
242
|
function init() {
|
|
139
243
|
const paymentMethods = getPaymentMethods();
|
|
244
|
+
initBillieBusinessTypeToggle();
|
|
245
|
+
hideBillieBusiness();
|
|
246
|
+
|
|
247
|
+
$(document).on('change', 'input[name="repaymentTerms"]', function() {
|
|
248
|
+
const currentMethod = $(elements.paymentInputName + ':checked').val();
|
|
249
|
+
if (currentMethod !== 'billie') return;
|
|
250
|
+
|
|
251
|
+
const hasSelection = $('input[name="repaymentTerms"]:checked').length > 0;
|
|
252
|
+
setBillieStepVisibility(hasSelection);
|
|
253
|
+
|
|
254
|
+
const $row = $(this).closest('.form-row[data-row-required]');
|
|
255
|
+
$row.removeClass('form-row_validation-error')
|
|
256
|
+
.find('.form-row__error').remove();
|
|
257
|
+
});
|
|
140
258
|
|
|
141
259
|
elements.$wrapperPaymentInput.on('change', elements.paymentInputName, function() {
|
|
142
260
|
const checkedMethod = $(this).val();
|
|
143
261
|
|
|
144
|
-
|
|
145
|
-
|
|
262
|
+
if (prevPaymentMethod && prevPaymentMethod !== checkedMethod) {
|
|
263
|
+
resetAllCheckoutForms(checkedMethod);
|
|
264
|
+
} else {
|
|
265
|
+
const form = $(this).closest('form')[0];
|
|
266
|
+
form && Wick.Forms && Wick.Forms.clearValidationErrors && Wick.Forms.clearValidationErrors(form);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
togglePaymentBlocks(paymentMethods, checkedMethod);
|
|
270
|
+
changeDetailsBlock(checkedMethod);
|
|
271
|
+
|
|
272
|
+
prevPaymentMethod = checkedMethod;
|
|
146
273
|
});
|
|
147
274
|
|
|
148
275
|
$('.btn-new-card').on('click', function() {
|
|
@@ -157,17 +284,14 @@ Wick.CheckoutPaymentDetails = (function() {
|
|
|
157
284
|
return false;
|
|
158
285
|
});
|
|
159
286
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
}
|
|
287
|
+
prevPaymentMethod = $(elements.paymentInputName + ':checked').val() || null;
|
|
288
|
+
|
|
289
|
+
if (!$modal.length) return;
|
|
164
290
|
|
|
165
|
-
if (typeof(window.onbeforeprint) !== 'undefined') {
|
|
166
|
-
// subscriptions for browsers
|
|
291
|
+
if (typeof (window.onbeforeprint) !== 'undefined') {
|
|
167
292
|
window.onbeforeprint = preparePage;
|
|
168
293
|
window.onafterprint = resetPage;
|
|
169
294
|
} else if (window.matchMedia) {
|
|
170
|
-
// subscriptions for iOS devices
|
|
171
295
|
var mediaQueryList = window.matchMedia('print');
|
|
172
296
|
mediaQueryList.addListener(function(mql) {
|
|
173
297
|
if (mql.matches) {
|
package/package.json
CHANGED
|
@@ -1,42 +1,44 @@
|
|
|
1
|
-
<div class="
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
<div class="d-none" data-billie-business>
|
|
2
|
+
<div class="form-row radio-group" data-row-required>
|
|
3
|
+
<label class="form-row__label form-row__label_required">
|
|
4
|
+
Select your business type
|
|
5
|
+
</label>
|
|
5
6
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
<div class="form-row">
|
|
8
|
+
<div class="form-row__field">
|
|
9
|
+
{{> radiobutton
|
|
10
|
+
id="businessTypeUnregistered"
|
|
11
|
+
name="businessType"
|
|
12
|
+
value="unregistered"
|
|
13
|
+
label="Unregistered Sole Trader / Business"}}
|
|
14
|
+
</div>
|
|
13
15
|
</div>
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
16
|
+
<div class="form-row">
|
|
17
|
+
<div class="form-row__field">
|
|
18
|
+
{{> radiobutton
|
|
19
|
+
id="businessTypeRegistered"
|
|
20
|
+
name="businessType"
|
|
21
|
+
value="registered"
|
|
22
|
+
labelClass="registered-label"
|
|
23
|
+
label="Registered Sole Trader / Business"
|
|
24
|
+
tooltip="A Registered Business is one that has undergone the official process of being recognised and registered with Companies House, establishing its legal identity and enabling it to operate within a specific jurisdiction, such as a limited company. A Registered Business will have been issued a Company Registration Number (CRN) from Companies House."}}
|
|
25
|
+
</div>
|
|
24
26
|
</div>
|
|
25
27
|
</div>
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
>
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
</div>
|
|
28
|
+
<div
|
|
29
|
+
id="unregistered-fields"
|
|
30
|
+
class="radio-expanded-content d-none"
|
|
31
|
+
>
|
|
32
|
+
{{> form-row id="first-name" label="First name" required="true" row-mod="first-name"}}
|
|
33
|
+
{{> form-row id="last-name" label="Last name" required="true" row-mod="last-name"}}
|
|
34
|
+
{{> form-row id="business-name" label="Business name" required="true" row-mod="unregistered-business"}}
|
|
35
|
+
</div>
|
|
35
36
|
|
|
36
|
-
<div
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
>
|
|
40
|
-
|
|
41
|
-
|
|
37
|
+
<div
|
|
38
|
+
id="registered-fields"
|
|
39
|
+
class="radio-expanded-content d-none"
|
|
40
|
+
>
|
|
41
|
+
{{> form-row id="business-name-2" label="Business name" required="true" row-mod="registered-business"}}
|
|
42
|
+
{{> form-row id="company-reg-number" label="Company registration number" row-mod="reg-number"}}
|
|
43
|
+
</div>
|
|
42
44
|
</div>
|
|
@@ -12,13 +12,13 @@
|
|
|
12
12
|
<li>View all your Wickes / Billie Orders in one place with your Trade Pro Account, on the Order History page.</li>
|
|
13
13
|
</ul>
|
|
14
14
|
|
|
15
|
-
<h4 class="billie-modal__heading">Buy now, pay within 30 days</h4>
|
|
15
|
+
<h4 class="billie-modal__heading js-billie-terms-heading">Buy now, pay within 30 days</h4>
|
|
16
16
|
<ol class="billie-modal__list billie-modal__list--ordered">
|
|
17
17
|
<li>Add items to your basket and proceed to checkout</li>
|
|
18
18
|
<li>Select Billie as your payment method</li>
|
|
19
19
|
<li>Enter your Business details on the payments page and Billie portal where necessary</li>
|
|
20
20
|
<li>Billie review your submitted details in real-time and gives instant feedback if your order was successful</li>
|
|
21
|
-
<li>From the point of collection / delivery of goods you’ll have 30 days to pay</li>
|
|
21
|
+
<li class="js-billie-repayment-line">From the point of collection / delivery of goods you’ll have 30 days to pay</li>
|
|
22
22
|
<li>Billie will send you the invoice document via email and remind you when it is time to pay</li>
|
|
23
23
|
</ol>
|
|
24
24
|
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<div class="checkout-chip">
|
|
2
|
+
<input
|
|
3
|
+
class="checkout-chip__input"
|
|
4
|
+
type="radio"
|
|
5
|
+
name="{{name}}"
|
|
6
|
+
id="{{id}}"
|
|
7
|
+
value="{{value}}"
|
|
8
|
+
{{#if checked}}checked{{/if}}
|
|
9
|
+
/>
|
|
10
|
+
|
|
11
|
+
<label class="checkout-chip__label" for="{{id}}">
|
|
12
|
+
<span class="checkout-chip__label-top">{{top}}</span>
|
|
13
|
+
<span class="checkout-chip__label-bottom">{{bottom}}</span>
|
|
14
|
+
</label>
|
|
15
|
+
</div>
|
|
@@ -67,13 +67,13 @@
|
|
|
67
67
|
<div class="form-row">
|
|
68
68
|
<div class="form-row__field form-row__field-clearpay">
|
|
69
69
|
<label
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
class="rbn rbn_align clearpay-label__rbn"
|
|
71
|
+
for="checkout-payment-details-clearpay">
|
|
72
72
|
<input
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
73
|
+
type="radio"
|
|
74
|
+
id="checkout-payment-details-clearpay"
|
|
75
|
+
name="payment-method"
|
|
76
|
+
value="clearpay">
|
|
77
77
|
<ins></ins>
|
|
78
78
|
<div class="clearpay-logo">
|
|
79
79
|
<img class="payments-checkout__image" src="./img/payment/checkout/clearpay.svg" alt="clearpay">
|
|
@@ -86,13 +86,13 @@
|
|
|
86
86
|
<div class="form-row">
|
|
87
87
|
<div class="form-row__field form-row__field-apple">
|
|
88
88
|
<label
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
class="rbn rbn_align apple-label__rbn"
|
|
90
|
+
for="checkout-payment-details-apple">
|
|
91
91
|
<input
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
92
|
+
type="radio"
|
|
93
|
+
id="checkout-payment-details-apple"
|
|
94
|
+
name="payment-method"
|
|
95
|
+
value="apple">
|
|
96
96
|
<ins></ins>
|
|
97
97
|
<div class="apple-logo">
|
|
98
98
|
<img src="img/apple-pay.svg" alt="apple pay">
|
|
@@ -105,13 +105,13 @@
|
|
|
105
105
|
<div class="form-row">
|
|
106
106
|
<div class="form-row__field form-row__field-google">
|
|
107
107
|
<label
|
|
108
|
-
|
|
109
|
-
|
|
108
|
+
class="rbn rbn_align google-label__rbn"
|
|
109
|
+
for="checkout-payment-details-google">
|
|
110
110
|
<input
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
111
|
+
type="radio"
|
|
112
|
+
id="checkout-payment-details-google"
|
|
113
|
+
name="payment-method"
|
|
114
|
+
value="google">
|
|
115
115
|
<ins></ins>
|
|
116
116
|
<div class="google-logo">
|
|
117
117
|
<img src="img/google-pay-mark.png" alt="google pay">
|
|
@@ -125,7 +125,8 @@
|
|
|
125
125
|
<label class="rbn rbn_align" for="checkout-payment-details-paypal">
|
|
126
126
|
<input type="radio" id="checkout-payment-details-paypal" name="payment-method" value="paypal">
|
|
127
127
|
<ins></ins>
|
|
128
|
-
<img class="checkout-payment-details__icon" src="img/payments_paypal-large.png" width="90" height="24"
|
|
128
|
+
<img class="checkout-payment-details__icon" src="img/payments_paypal-large.png" width="90" height="24"
|
|
129
|
+
alt="paypal">
|
|
129
130
|
</label>
|
|
130
131
|
</div>
|
|
131
132
|
</div>
|
|
@@ -164,7 +165,18 @@
|
|
|
164
165
|
</div>
|
|
165
166
|
</div>
|
|
166
167
|
|
|
168
|
+
<div class="form-row js-billie-repayment-terms" style="display: none" data-billie data-row-required data-message="Please select repayment terms">
|
|
169
|
+
<div class="form-row__field">
|
|
170
|
+
{{> checkout-payment-repayment-terms
|
|
171
|
+
name="repaymentTerms"
|
|
172
|
+
title="Select repayment terms"
|
|
173
|
+
repaymentTerms=billieTerms
|
|
174
|
+
}}
|
|
175
|
+
</div>
|
|
176
|
+
</div>
|
|
177
|
+
|
|
167
178
|
{{> checkout-payment-info-block
|
|
179
|
+
showRepaymentTerms=false
|
|
168
180
|
dataAttr="data-klarna"
|
|
169
181
|
blockClass="checkout-payment-details__klarna"
|
|
170
182
|
infoClass="klarna-info"
|
|
@@ -198,10 +210,11 @@
|
|
|
198
210
|
|
|
199
211
|
{{> checkout-payment-info-block
|
|
200
212
|
dataAttr="data-billie"
|
|
213
|
+
showRepaymentTerms=true
|
|
201
214
|
blockClass="checkout-payment-details__billie"
|
|
202
215
|
infoClass="billie-info"
|
|
203
216
|
|
|
204
|
-
heading="Get first. Pay later <br> Pay 30 days after shipment"
|
|
217
|
+
heading="Get first. Pay later <br> Pay <span class='term'>30</span> days after shipment"
|
|
205
218
|
brandLogoHtml="<img
|
|
206
219
|
src='https://static.billie.io/badges/Billie_Checkout_Default.svg'
|
|
207
220
|
alt='Billie Pay Later'
|
|
@@ -224,12 +237,11 @@
|
|
|
224
237
|
<img class="clearpay-widget__image" src="./img/payment/checkout/clearpay-widget.png" alt="clearpay widget">
|
|
225
238
|
</div>
|
|
226
239
|
</div>
|
|
227
|
-
|
|
228
|
-
|
|
229
240
|
<div class="billing-address">
|
|
230
241
|
{{> checkout-edit-billing-address actionBlock="true" no-set-card="true" billie-form=billie-form}}
|
|
231
242
|
</div>
|
|
232
|
-
<div data-existing-card
|
|
243
|
+
<div data-existing-card
|
|
244
|
+
class="form-row form-row__action form-row__action_custom checkout-payment-details__place-order paypal__row">
|
|
233
245
|
<div class="form-row__col-btn" data-paypal style="display: none;">
|
|
234
246
|
<a class="pay-pal_wrap" href="./page_checkout_confirmation-new.html">
|
|
235
247
|
<div class="buttons-container">
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<div class="repayment-terms">
|
|
2
|
+
<div class="repayment-terms__title">
|
|
3
|
+
<span class="repayment-terms__asterisk">*</span>
|
|
4
|
+
<span>{{title}}</span>
|
|
5
|
+
</div>
|
|
6
|
+
|
|
7
|
+
<div class="repayment-terms__chips" role="radiogroup">
|
|
8
|
+
{{#each repaymentTerms}}
|
|
9
|
+
{{> checkout-chip name=../name }}
|
|
10
|
+
{{/each}}
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|