wickes-css2 2.103.0-RG-1587-replace-klarna-logo-with-svg-image.1 → 2.103.0-RG-1742-billie-30-60-90-days.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/Readme.md +1 -0
- package/build/css/components/card-product-banner.css +1 -1
- package/build/css/components/checkout-payment-details-v2.css +1 -1
- package/build/css/components/checkout-payment-repayment-terms.css +1 -0
- package/build/css/main.css +1 -1
- package/build/css/pages/page_products-list-combined.css +1 -1
- package/build/css/pages/page_products-list.css +1 -1
- package/build/css/pdp-main-non-critical.css +1 -1
- package/build/css/plp-main.css +1 -1
- package/build/js/basket.min.js +1 -1
- package/build/js/bundle.min.js +1 -1
- package/build/js/checkout.min.js +1 -1
- package/build/js/emulation.min.js +164 -152
- package/build/js/merged-checkout.min.js +1 -1
- package/build/js/page/checkout-payment-details.js +96 -43
- package/build/js/page/plp-cards-v2.js +6 -15
- package/build/js/page/plp-load-more.js +1 -1
- package/build/js/plp.bundle.min.js +1 -1
- package/build/js/project-list.min.js +1 -1
- package/package.json +2 -2
- package/src/components/card_product_v2.hbs +5 -10
- package/src/components/checkout-payment-details-v2.hbs +48 -30
- package/src/components/checkout-payment-repayment-terms.hbs +25 -0
- package/src/components/checkout_payment-new.hbs +4 -1
- package/src/components/checkout_payment-other-methods.hbs +4 -1
- package/src/components/injected-content.hbs +1 -1
- package/src/components/payments-checkout-v2.hbs +7 -2
- package/src/components/payments-checkout.hbs +6 -1
- package/src/components/payments.hbs +5 -1
- package/src/components/table_order-details-klarna.hbs +1 -1
- package/src/components/table_payment.hbs +4 -1
- package/src/data/data_search-results_v2.json +141 -56
- package/src/data/data_wismo.json +1 -1
- package/src/js/components/product-banner.js +148 -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/checkout-payment-details.js +96 -43
- package/src/js/page/plp-cards-v2.js +6 -15
- package/src/js/page/plp-load-more.js +1 -1
- package/src/page_checkout_payment-details_guest-with-checkout-journey.html +1 -1
- package/src/page_my-order.html +1 -1
- package/src/page_payment-details-with-clearpay.html +2 -2
- package/src/page_plp_v2.html +6 -16
- package/src/page_search-results.html +2 -12
- package/src/page_shopping-cart-v2.html +2 -2
- package/src/page_split-orders-klarna.html +106 -0
- package/src/scss/components/card-product-banner.scss +3 -91
- package/src/scss/components/checkout-payment-details-v2.scss +1 -0
- package/src/scss/components/checkout-payment-repayment-terms.scss +104 -0
- package/src/scss/pages/page_products-list-combined.scss +0 -11
- package/src/scss/pages/page_products-list.scss +0 -8
- package/src/sitemap.html +6 -0
- package/build/img/klarna.svg +0 -10
- package/build/img/payment/checkout/klarna.svg +0 -10
- package/build/img/payment/footer/klarna.svg +0 -10
- package/src/components/card_sponsor_banner.hbs +0 -8
- package/src/components/card_sponsor_product.hbs +0 -6
- package/src/img/klarna.svg +0 -10
- package/src/img/payment/checkout/klarna.svg +0 -10
- package/src/img/payment/footer/klarna.svg +0 -10
- package/src/js/components/banner-placement-manager.js +0 -267
- package/src/js/emulation/banner-placement-manager.js +0 -53
|
@@ -303,60 +303,6 @@ Wick.Autocomplete = (function(){
|
|
|
303
303
|
init();
|
|
304
304
|
})();
|
|
305
305
|
|
|
306
|
-
// Simulate prompt for input
|
|
307
|
-
function getInputs() {
|
|
308
|
-
const productBannerPositions = prompt("Enter Product Banner Positions:", "2") || "";
|
|
309
|
-
const sponsorProductPositions = prompt("Enter Sponsor Product Positions (comma-separated):", "6,7,8") || "";
|
|
310
|
-
const sponsorBannerPositions = prompt("Enter Sponsor Banner Positions:", "10") || "";
|
|
311
|
-
|
|
312
|
-
return {
|
|
313
|
-
productBannerPositions: productBannerPositions ? productBannerPositions.split(",").map(Number) : [],
|
|
314
|
-
sponsorProductPositions: sponsorProductPositions ? sponsorProductPositions.split(",").map(Number) : [],
|
|
315
|
-
sponsorBannerPositions: sponsorBannerPositions ? sponsorBannerPositions.split(",").map(Number) : [],
|
|
316
|
-
};
|
|
317
|
-
}
|
|
318
|
-
|
|
319
|
-
function getPositionAttr() {
|
|
320
|
-
const isMobile = Wick.BannerPlacementManager.isMobileResolution();
|
|
321
|
-
return isMobile
|
|
322
|
-
? 'data-mobile-position'
|
|
323
|
-
: 'data-desktop-position';
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
function updatePositions(inputs) {
|
|
327
|
-
const productBannerElements = document.querySelectorAll(".card-product-banner");
|
|
328
|
-
productBannerElements.forEach((el, index) => {
|
|
329
|
-
if (inputs.productBannerPositions[index] !== undefined) {
|
|
330
|
-
el.setAttribute(getPositionAttr(), inputs.productBannerPositions[index]);
|
|
331
|
-
}
|
|
332
|
-
});
|
|
333
|
-
|
|
334
|
-
const sponsorProductElements = document.querySelectorAll(".card-sponsor-product");
|
|
335
|
-
sponsorProductElements.forEach((el, index) => {
|
|
336
|
-
if (inputs.sponsorProductPositions[index] !== undefined) {
|
|
337
|
-
el.setAttribute(getPositionAttr(), inputs.sponsorProductPositions[index]);
|
|
338
|
-
}
|
|
339
|
-
});
|
|
340
|
-
|
|
341
|
-
const sponsorBannerElements = document.querySelectorAll(".card-sponsor-banner");
|
|
342
|
-
sponsorBannerElements.forEach((el, index) => {
|
|
343
|
-
if (inputs.sponsorBannerPositions[index] !== undefined) {
|
|
344
|
-
el.setAttribute(getPositionAttr(), inputs.sponsorBannerPositions[index]);
|
|
345
|
-
}
|
|
346
|
-
});
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
function init() {
|
|
350
|
-
const inputs = getInputs();
|
|
351
|
-
updatePositions(inputs);
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
$(document).ready(function () {
|
|
355
|
-
if ($('.retail-media .products-list.products-list-v2').length) {
|
|
356
|
-
setTimeout(() => init(), 100)
|
|
357
|
-
}
|
|
358
|
-
});
|
|
359
|
-
|
|
360
306
|
var Wick = Wick || {};
|
|
361
307
|
Wick.BasketData = (function () {
|
|
362
308
|
return {
|
|
@@ -3520,21 +3466,21 @@ Wick.DeliveryDetails = (function () {
|
|
|
3520
3466
|
|
|
3521
3467
|
var Wick = Wick || {};
|
|
3522
3468
|
|
|
3523
|
-
Wick.PaymentDetails = (function
|
|
3469
|
+
Wick.PaymentDetails = (function() {
|
|
3524
3470
|
var $btnEnterDetails = $('.btn-enter-details'),
|
|
3525
3471
|
$form = $btnEnterDetails.parents('form'),
|
|
3526
3472
|
isGuestPage = $('.page_checkout-payment-details_guest').length;
|
|
3527
3473
|
|
|
3528
|
-
function bindEvents
|
|
3529
|
-
$btnEnterDetails.on('click', function(){
|
|
3530
|
-
if ($form.find('#card-name').val()
|
|
3474
|
+
function bindEvents() {
|
|
3475
|
+
$btnEnterDetails.on('click', function() {
|
|
3476
|
+
if ($form.find('#card-name').val()?.length &&
|
|
3531
3477
|
$form.find('#first-line-address').val().length &&
|
|
3532
3478
|
$form.find('#address-line-1').val().length &&
|
|
3533
3479
|
$form.find('#town-city').val().length &&
|
|
3534
|
-
$form.find('#postcode_additional').val().length){
|
|
3480
|
+
$form.find('#postcode_additional').val().length) {
|
|
3535
3481
|
$('.checkout-payment-details__card-details').removeClass('checkout-payment-details__card-details_hidden');
|
|
3536
3482
|
$('html, body').animate({
|
|
3537
|
-
scrollTop: $('.checkout-payment-details__card-details').offset().top - 15
|
|
3483
|
+
scrollTop: $('.checkout-payment-details__card-details').offset().top - 15,
|
|
3538
3484
|
}, 700);
|
|
3539
3485
|
return false;
|
|
3540
3486
|
}
|
|
@@ -3542,14 +3488,14 @@ Wick.PaymentDetails = (function () {
|
|
|
3542
3488
|
return false;
|
|
3543
3489
|
});
|
|
3544
3490
|
|
|
3545
|
-
$('.checkout-payment-details__card-details').on('submit', function(){
|
|
3491
|
+
$('.checkout-payment-details__card-details').on('submit', function() {
|
|
3546
3492
|
var $form = $(this);
|
|
3547
3493
|
if ($form.find('#card-type').val() &&
|
|
3548
3494
|
$form.find('#card-name1').val().length &&
|
|
3549
3495
|
$form.find('#card-number').val().length &&
|
|
3550
3496
|
$form.find('#month').val() &&
|
|
3551
3497
|
$form.find('#year').val() &&
|
|
3552
|
-
$form.find('#security-code').val()){
|
|
3498
|
+
$form.find('#security-code').val()) {
|
|
3553
3499
|
window.location.href = isGuestPage
|
|
3554
3500
|
? './page_checkout_confirmation_guest.html'
|
|
3555
3501
|
: './page_checkout_confirmation.html';
|
|
@@ -4015,7 +3961,7 @@ Wick.FooterСurrentYear = (function () {
|
|
|
4015
3961
|
})();
|
|
4016
3962
|
|
|
4017
3963
|
var Wick = Wick || {};
|
|
4018
|
-
Wick.Forms = (function(){
|
|
3964
|
+
Wick.Forms = (function() {
|
|
4019
3965
|
var fieldRow = '.form-row[data-row-required]',
|
|
4020
3966
|
field = '.form-row__field',
|
|
4021
3967
|
fieldError = '.form-row__error',
|
|
@@ -4025,43 +3971,44 @@ Wick.Forms = (function(){
|
|
|
4025
3971
|
// validationError = '<div class="form-row__error">Error message here</div>',
|
|
4026
3972
|
$forgotPassword = $('.link-forgot-password'),
|
|
4027
3973
|
scenarios = [{
|
|
4028
|
-
|
|
4029
|
-
|
|
4030
|
-
|
|
4031
|
-
|
|
4032
|
-
},
|
|
4033
|
-
action: function(){
|
|
4034
|
-
// redirected to the homepage
|
|
4035
|
-
Wick.User.login();
|
|
4036
|
-
window.location.href = './';
|
|
4037
|
-
}
|
|
3974
|
+
condition: function() {
|
|
3975
|
+
// fill in the valid returning customer's details
|
|
3976
|
+
// Email: responsive@test.com; Password: 123456
|
|
3977
|
+
return $('#login-email').val() === 'responsive@test.com' && $('#password').val() === '123456';
|
|
4038
3978
|
},
|
|
3979
|
+
action: function() {
|
|
3980
|
+
// redirected to the homepage
|
|
3981
|
+
Wick.User.login();
|
|
3982
|
+
window.location.href = './';
|
|
3983
|
+
},
|
|
3984
|
+
},
|
|
4039
3985
|
{
|
|
4040
|
-
condition: function(){
|
|
3986
|
+
condition: function() {
|
|
4041
3987
|
// continue as a new user with "test+random@user.com"
|
|
4042
3988
|
return $('#registration-email').val().length;
|
|
4043
3989
|
// return $('#registration-email').val() === 'test+random@user.com';
|
|
4044
3990
|
},
|
|
4045
|
-
action: function(){
|
|
3991
|
+
action: function() {
|
|
4046
3992
|
// redirected to the register form
|
|
4047
3993
|
window.location.href = './page_registration.html';
|
|
4048
|
-
}
|
|
3994
|
+
},
|
|
4049
3995
|
},
|
|
4050
3996
|
{
|
|
4051
|
-
condition: function(){
|
|
3997
|
+
condition: function() {
|
|
4052
3998
|
// When I click forgotten password link
|
|
4053
3999
|
},
|
|
4054
|
-
action: function(){
|
|
4000
|
+
action: function() {
|
|
4055
4001
|
// redirected on the "Forgotten Password" page
|
|
4056
4002
|
window.location.href = './page_forgotten-password.html';
|
|
4057
|
-
}
|
|
4058
|
-
}
|
|
4059
|
-
]
|
|
4003
|
+
},
|
|
4004
|
+
},
|
|
4005
|
+
],
|
|
4060
4006
|
|
|
4061
|
-
|
|
4062
|
-
|
|
4063
|
-
|
|
4064
|
-
|
|
4007
|
+
validationError = function(errorMsg) {
|
|
4008
|
+
return `<div class="form-row__error"> ${errorMsg || 'Error message here'}</div>`;
|
|
4009
|
+
};
|
|
4010
|
+
|
|
4011
|
+
function isElementInViewport(el) {
|
|
4065
4012
|
if (typeof jQuery === 'function' && el instanceof jQuery) {
|
|
4066
4013
|
el = el[0];
|
|
4067
4014
|
}
|
|
@@ -4074,15 +4021,21 @@ Wick.Forms = (function(){
|
|
|
4074
4021
|
);
|
|
4075
4022
|
}
|
|
4076
4023
|
|
|
4077
|
-
var showValidationErrors = function
|
|
4024
|
+
var showValidationErrors = function(form, errorMsg) {
|
|
4078
4025
|
var $form = $(form);
|
|
4079
4026
|
if (!$form.hasClass(formInvalid)) {
|
|
4080
4027
|
$form.find('.form-row__error').remove();
|
|
4081
|
-
$form.
|
|
4028
|
+
var $rows = $form.find(fieldRow).filter(function() {
|
|
4029
|
+
return $(this).css('display') !== 'none';
|
|
4030
|
+
});
|
|
4031
|
+
|
|
4032
|
+
$rows.append(validationError(errorMsg)).addClass(rowValidationError);
|
|
4082
4033
|
}
|
|
4083
4034
|
|
|
4084
|
-
var $firstMsg = $form.find(fieldRow).
|
|
4085
|
-
|
|
4035
|
+
var $firstMsg = $form.find(fieldRow).filter(function() {
|
|
4036
|
+
return $(this).css('display') !== 'none';
|
|
4037
|
+
}).first();
|
|
4038
|
+
if ($firstMsg.length && !isElementInViewport($firstMsg)) {
|
|
4086
4039
|
var inModal = $firstMsg.closest('.modal').length,
|
|
4087
4040
|
$scrollableEl = inModal ? $firstMsg.closest('.modal') : $('html, body'),
|
|
4088
4041
|
y = inModal ? 0 : $firstMsg.offset().top - 30;
|
|
@@ -4091,22 +4044,26 @@ Wick.Forms = (function(){
|
|
|
4091
4044
|
}
|
|
4092
4045
|
};
|
|
4093
4046
|
|
|
4094
|
-
var clearValidationErrors = function
|
|
4047
|
+
var clearValidationErrors = function(form) {
|
|
4095
4048
|
var $form = $(form);
|
|
4096
|
-
|
|
4097
|
-
|
|
4098
|
-
|
|
4099
|
-
|
|
4100
|
-
|
|
4049
|
+
|
|
4050
|
+
$form.removeClass(formInvalid);
|
|
4051
|
+
|
|
4052
|
+
$form.find(fieldRow)
|
|
4053
|
+
.removeClass(rowValidationError)
|
|
4054
|
+
.find(fieldError).remove();
|
|
4055
|
+
|
|
4056
|
+
$form.find(fieldError).remove();
|
|
4101
4057
|
};
|
|
4102
4058
|
|
|
4103
|
-
|
|
4059
|
+
|
|
4060
|
+
var handleSmoothScroll = function() {
|
|
4104
4061
|
$('html, body').animate({
|
|
4105
|
-
scrollTop: $('.cards-store-list').offset().top - 60
|
|
4062
|
+
scrollTop: $('.cards-store-list').offset().top - 60,
|
|
4106
4063
|
}, 300);
|
|
4107
4064
|
};
|
|
4108
4065
|
|
|
4109
|
-
var handleFormSubmit = function
|
|
4066
|
+
var handleFormSubmit = function() {
|
|
4110
4067
|
var form = this;
|
|
4111
4068
|
|
|
4112
4069
|
if ($(form).is('#form-login') || $(form).is('#form-register')) {
|
|
@@ -4120,21 +4077,21 @@ Wick.Forms = (function(){
|
|
|
4120
4077
|
}
|
|
4121
4078
|
|
|
4122
4079
|
if ($(form).is('#form-forgotten-password')) {
|
|
4123
|
-
if ($(form).find('#email').val().length){
|
|
4080
|
+
if ($(form).find('#email').val().length) {
|
|
4124
4081
|
window.location.href = './page_upd-pass.html';
|
|
4125
4082
|
return false;
|
|
4126
4083
|
}
|
|
4127
4084
|
}
|
|
4128
4085
|
|
|
4129
4086
|
if ($(form).is('#form-forgotten-password-popup')) {
|
|
4130
|
-
if ($(form).find('#email').val().length){
|
|
4087
|
+
if ($(form).find('#email').val().length) {
|
|
4131
4088
|
window.location.href = './page_checkout_sign-in.html';
|
|
4132
4089
|
return false;
|
|
4133
4090
|
}
|
|
4134
4091
|
}
|
|
4135
4092
|
|
|
4136
4093
|
if ($(form).is('#checkout-form-forgotten-password-popup')) {
|
|
4137
|
-
if ($(form).find('#email').val().length){
|
|
4094
|
+
if ($(form).find('#email').val().length) {
|
|
4138
4095
|
$('.modal-reset-wrap').addClass('d-block');
|
|
4139
4096
|
$('.request-pass').addClass('d-none');
|
|
4140
4097
|
$('.modal-title').text('Password Reset');
|
|
@@ -4143,7 +4100,7 @@ Wick.Forms = (function(){
|
|
|
4143
4100
|
}
|
|
4144
4101
|
|
|
4145
4102
|
if ($(form).is('.update-pass')) {
|
|
4146
|
-
if ($(form).find('#new-password').val().length && $(form).find('#confirmed-password').val().length){
|
|
4103
|
+
if ($(form).find('#new-password').val().length && $(form).find('#confirmed-password').val().length) {
|
|
4147
4104
|
window.location.href = './page_login.html';
|
|
4148
4105
|
return false;
|
|
4149
4106
|
}
|
|
@@ -4152,7 +4109,7 @@ Wick.Forms = (function(){
|
|
|
4152
4109
|
if ($(form).is('.change-email')) {
|
|
4153
4110
|
if ($(form).find('#new-email').val().length &&
|
|
4154
4111
|
$(form).find('#confirm-new-email').val().length &&
|
|
4155
|
-
$(form).find('#password').val().length){
|
|
4112
|
+
$(form).find('#password').val().length) {
|
|
4156
4113
|
window.location.href = './page_my-account.html';
|
|
4157
4114
|
return false;
|
|
4158
4115
|
}
|
|
@@ -4161,7 +4118,7 @@ Wick.Forms = (function(){
|
|
|
4161
4118
|
if ($(form).is('.form-change-password')) {
|
|
4162
4119
|
if ($(form).find('#current-password').val().length &&
|
|
4163
4120
|
$(form).find('#new-password').val().length &&
|
|
4164
|
-
$(form).find('#confirm-password').val().length){
|
|
4121
|
+
$(form).find('#confirm-password').val().length) {
|
|
4165
4122
|
window.location.href = './page_my-account.html';
|
|
4166
4123
|
return false;
|
|
4167
4124
|
}
|
|
@@ -4173,14 +4130,14 @@ Wick.Forms = (function(){
|
|
|
4173
4130
|
$(form).find('#postcode').val().length &&
|
|
4174
4131
|
$(form).find('#email').val().length &&
|
|
4175
4132
|
$(form).find('#password').val().length &&
|
|
4176
|
-
$(form).find('#confirm-password').val().length){
|
|
4133
|
+
$(form).find('#confirm-password').val().length) {
|
|
4177
4134
|
window.location.href = './page_my-account.html';
|
|
4178
4135
|
return false;
|
|
4179
4136
|
}
|
|
4180
4137
|
}
|
|
4181
4138
|
|
|
4182
4139
|
if ($(form).is('.form-personal-details')) {
|
|
4183
|
-
if ($(form).find('#first-name').val().length && $(form).find('#surname').val().length){
|
|
4140
|
+
if ($(form).find('#first-name').val().length && $(form).find('#surname').val().length) {
|
|
4184
4141
|
window.location.href = './page_my-account.html';
|
|
4185
4142
|
return false;
|
|
4186
4143
|
}
|
|
@@ -4188,26 +4145,26 @@ Wick.Forms = (function(){
|
|
|
4188
4145
|
|
|
4189
4146
|
if ($(form).is('.form-address-details')) {
|
|
4190
4147
|
if ($(form).find('#first-name').val().length &&
|
|
4191
|
-
|
|
4192
|
-
|
|
4193
|
-
|
|
4194
|
-
|
|
4148
|
+
$(form).find('#second-name').val().length &&
|
|
4149
|
+
$(form).find('#address1').val().length &&
|
|
4150
|
+
$(form).find('#town-city').val().length &&
|
|
4151
|
+
$(form).find('#mobile-telephone').val().length) {
|
|
4195
4152
|
window.location.href = './page_my-account_address-book.html';
|
|
4196
4153
|
return false;
|
|
4197
4154
|
}
|
|
4198
4155
|
}
|
|
4199
4156
|
|
|
4200
4157
|
if ($(form).is('.form-locator')) {
|
|
4201
|
-
if ($(form).find('#store-id').val()){
|
|
4158
|
+
if ($(form).find('#store-id').val()) {
|
|
4202
4159
|
window.location.href = './page_store-locator-details.html';
|
|
4203
4160
|
return false;
|
|
4204
4161
|
}
|
|
4205
4162
|
}
|
|
4206
4163
|
|
|
4207
4164
|
if ($(form).is('.form-locator-list')) {
|
|
4208
|
-
if ($(form).find('#postcode-town').val().length){
|
|
4165
|
+
if ($(form).find('#postcode-town').val().length) {
|
|
4209
4166
|
var actionAfterSubmit = $(form).attr('data-action');
|
|
4210
|
-
if (actionAfterSubmit === 'scroll-to-list'){
|
|
4167
|
+
if (actionAfterSubmit === 'scroll-to-list') {
|
|
4211
4168
|
clearValidationErrors(this);
|
|
4212
4169
|
handleSmoothScroll();
|
|
4213
4170
|
} else {
|
|
@@ -4218,7 +4175,7 @@ Wick.Forms = (function(){
|
|
|
4218
4175
|
}
|
|
4219
4176
|
|
|
4220
4177
|
if ($(form).is('#form-mini-basket')) {
|
|
4221
|
-
if (Wick.User.isLoggedIn()){
|
|
4178
|
+
if (Wick.User.isLoggedIn()) {
|
|
4222
4179
|
window.location.href = './page_checkout_delivery-address.html';
|
|
4223
4180
|
} else {
|
|
4224
4181
|
window.location.href = './page_checkout_sign-in.html';
|
|
@@ -4226,13 +4183,31 @@ Wick.Forms = (function(){
|
|
|
4226
4183
|
return false;
|
|
4227
4184
|
}
|
|
4228
4185
|
|
|
4229
|
-
function isNotEmpty(field){
|
|
4230
|
-
|
|
4186
|
+
function isNotEmpty(field) {
|
|
4187
|
+
var $field = $(field);
|
|
4188
|
+
var type = ($field.attr('type') || '').toLowerCase();
|
|
4189
|
+
|
|
4190
|
+
if (type === 'checkbox') {
|
|
4191
|
+
return $field.is(':checked');
|
|
4192
|
+
}
|
|
4193
|
+
|
|
4194
|
+
if (type === 'radio') {
|
|
4195
|
+
var name = $field.attr('name');
|
|
4196
|
+
if (!name) return false;
|
|
4197
|
+
|
|
4198
|
+
var $scope = $field.closest('[data-row-required]');
|
|
4199
|
+
if (!$scope.length) $scope = $field.closest('form');
|
|
4200
|
+
|
|
4201
|
+
return $scope.find('input[type="radio"][name="' + name.replace(/"/g, '\\"') + '"]').is(':checked');
|
|
4202
|
+
}
|
|
4203
|
+
|
|
4204
|
+
return !!$field.val();
|
|
4231
4205
|
}
|
|
4232
4206
|
|
|
4207
|
+
|
|
4233
4208
|
if ($(form).is('#form-checkout-your-details')) {
|
|
4234
4209
|
var requiredFields = $(form).find('[data-row-required]:visible :input');
|
|
4235
|
-
if (_.every(requiredFields, isNotEmpty)){
|
|
4210
|
+
if (_.every(requiredFields, isNotEmpty)) {
|
|
4236
4211
|
window.location.href = $(form).attr('data-action');
|
|
4237
4212
|
return false;
|
|
4238
4213
|
}
|
|
@@ -4240,7 +4215,7 @@ Wick.Forms = (function(){
|
|
|
4240
4215
|
|
|
4241
4216
|
if ($(form).is('#checkout-your-details-modal')) {
|
|
4242
4217
|
var requiredFields = $(form).find('[data-row-required]:visible :input');
|
|
4243
|
-
if (_.every(requiredFields, isNotEmpty)){
|
|
4218
|
+
if (_.every(requiredFields, isNotEmpty)) {
|
|
4244
4219
|
$('#modalDeliveryEdit').modal('hide');
|
|
4245
4220
|
return false;
|
|
4246
4221
|
}
|
|
@@ -4254,15 +4229,15 @@ Wick.Forms = (function(){
|
|
|
4254
4229
|
}
|
|
4255
4230
|
}
|
|
4256
4231
|
|
|
4257
|
-
if ($(form).is('.checkout-register')){
|
|
4232
|
+
if ($(form).is('.checkout-register')) {
|
|
4258
4233
|
if ($(form).find('#password').val().length &&
|
|
4259
|
-
|
|
4234
|
+
$(form).find('#confirm-password').val().length) {
|
|
4260
4235
|
window.location.href = './page_my-account.html';
|
|
4261
4236
|
return false;
|
|
4262
4237
|
}
|
|
4263
4238
|
}
|
|
4264
4239
|
|
|
4265
|
-
if ($(form).is('#form-checkout-voucher')){
|
|
4240
|
+
if ($(form).is('#form-checkout-voucher')) {
|
|
4266
4241
|
if ($(form).find('#voucher-code').val().length) {
|
|
4267
4242
|
return false;
|
|
4268
4243
|
}
|
|
@@ -4274,11 +4249,11 @@ Wick.Forms = (function(){
|
|
|
4274
4249
|
}
|
|
4275
4250
|
}
|
|
4276
4251
|
|
|
4277
|
-
if ($(form).is('.header-search')){
|
|
4252
|
+
if ($(form).is('.header-search')) {
|
|
4278
4253
|
window.location.href = './page_search-results.html';
|
|
4279
4254
|
}
|
|
4280
4255
|
|
|
4281
|
-
if ($(form).is('.click-and-collect__locator-form')){
|
|
4256
|
+
if ($(form).is('.click-and-collect__locator-form')) {
|
|
4282
4257
|
var $form = $(form);
|
|
4283
4258
|
if ($form.find('#click-and-collect-town').val().length) {
|
|
4284
4259
|
clearValidationErrors(this);
|
|
@@ -4291,24 +4266,24 @@ Wick.Forms = (function(){
|
|
|
4291
4266
|
return false;
|
|
4292
4267
|
}
|
|
4293
4268
|
|
|
4294
|
-
if($(form).is('.form-track-order')) {
|
|
4295
|
-
|
|
4269
|
+
if ($(form).is('.form-track-order')) {
|
|
4270
|
+
var $form = $(form);
|
|
4296
4271
|
|
|
4297
|
-
|
|
4298
|
-
|
|
4299
|
-
|
|
4300
|
-
|
|
4301
|
-
|
|
4302
|
-
|
|
4303
|
-
|
|
4272
|
+
if ($form.find('#order').val().length &&
|
|
4273
|
+
$form.find('#tel').val().length &&
|
|
4274
|
+
$form.find('#email').val().length &&
|
|
4275
|
+
$form.find('#postcode').val().length) {
|
|
4276
|
+
clearValidationErrors(this);
|
|
4277
|
+
} else if (!$form.hasClass(formInvalid)) {
|
|
4278
|
+
$form.addClass(formInvalid);
|
|
4304
4279
|
|
|
4305
|
-
|
|
4306
|
-
|
|
4307
|
-
|
|
4308
|
-
|
|
4309
|
-
|
|
4280
|
+
$(fieldRow).each(function() {
|
|
4281
|
+
$(this).addClass(rowValidationError)
|
|
4282
|
+
.append('<div class="form-row__error">' + $(this).data('message') + '</div>');
|
|
4283
|
+
});
|
|
4284
|
+
}
|
|
4310
4285
|
|
|
4311
|
-
|
|
4286
|
+
return false;
|
|
4312
4287
|
}
|
|
4313
4288
|
|
|
4314
4289
|
if ($(form).is('#edit-billing-address')) {
|
|
@@ -4324,28 +4299,28 @@ Wick.Forms = (function(){
|
|
|
4324
4299
|
};
|
|
4325
4300
|
|
|
4326
4301
|
var scrollLocatorListPage = function() {
|
|
4327
|
-
|
|
4328
|
-
|
|
4329
|
-
|
|
4330
|
-
|
|
4331
|
-
|
|
4302
|
+
var isLocatorListPage = $('.cards-store-list').length;
|
|
4303
|
+
var isScrollNeeded = window.location.hash === '#stores-list';
|
|
4304
|
+
if (isLocatorListPage && isScrollNeeded) {
|
|
4305
|
+
handleSmoothScroll();
|
|
4306
|
+
}
|
|
4332
4307
|
};
|
|
4333
4308
|
|
|
4334
|
-
let bindEvents = function
|
|
4309
|
+
let bindEvents = function() {
|
|
4335
4310
|
let selector = excludedClassesForForm.reduce((acc, className) => {
|
|
4336
4311
|
return acc + ':not([class^="' + className + '"])';
|
|
4337
4312
|
}, 'form');
|
|
4338
4313
|
$(document).on('submit', selector, handleFormSubmit);
|
|
4339
4314
|
$forgotPassword.on('click', scenarios[2].action);
|
|
4340
|
-
$('.btn-cancel').on('click', function(){
|
|
4315
|
+
$('.btn-cancel').on('click', function() {
|
|
4341
4316
|
window.location.href = './page_my-account.html';
|
|
4342
4317
|
});
|
|
4343
|
-
$('.btn-previous').on('click', function(){
|
|
4318
|
+
$('.btn-previous').on('click', function() {
|
|
4344
4319
|
window.location.href = './page_login.html';
|
|
4345
4320
|
});
|
|
4346
4321
|
};
|
|
4347
4322
|
|
|
4348
|
-
var init = function
|
|
4323
|
+
var init = function() {
|
|
4349
4324
|
bindEvents();
|
|
4350
4325
|
scrollLocatorListPage();
|
|
4351
4326
|
};
|
|
@@ -4354,8 +4329,8 @@ Wick.Forms = (function(){
|
|
|
4354
4329
|
|
|
4355
4330
|
return {
|
|
4356
4331
|
showValidationErrors: showValidationErrors,
|
|
4357
|
-
clearValidationErrors: clearValidationErrors
|
|
4358
|
-
}
|
|
4332
|
+
clearValidationErrors: clearValidationErrors,
|
|
4333
|
+
};
|
|
4359
4334
|
})();
|
|
4360
4335
|
|
|
4361
4336
|
var Wick = Wick || {};
|
|
@@ -9984,6 +9959,8 @@ $(document).ready(function () {
|
|
|
9984
9959
|
initMyOrdersEvent();
|
|
9985
9960
|
});
|
|
9986
9961
|
|
|
9962
|
+
var Wick = Wick || {};
|
|
9963
|
+
|
|
9987
9964
|
const paymentLoader= '.payment-loader';
|
|
9988
9965
|
const paymentLoaderHideClass= 'payment-loader--hidden';
|
|
9989
9966
|
const paymentLoaderModal = '.payment-loader__modal'
|
|
@@ -9991,11 +9968,10 @@ const paymentTypeSelectors = {
|
|
|
9991
9968
|
apple: '.apple__button',
|
|
9992
9969
|
google: '.google__button',
|
|
9993
9970
|
clearpay: '#checkout-payment-details-clearpay',
|
|
9994
|
-
billie: '#checkout-payment-details-billie, .billie__button',
|
|
9995
9971
|
paypal: '#checkout-payment-details-paypal'
|
|
9996
9972
|
};
|
|
9997
9973
|
|
|
9998
|
-
function
|
|
9974
|
+
Wick.showPaymentLoader = function(paymentType) {
|
|
9999
9975
|
$(paymentLoader).find(`${paymentLoaderModal} > div`).hide();
|
|
10000
9976
|
$(`.${paymentType}-checkout-logo`).show();
|
|
10001
9977
|
$(`${paymentLoader} .spinner`).show();
|
|
@@ -10007,7 +9983,7 @@ function showPaymentLoader(paymentType) {
|
|
|
10007
9983
|
}
|
|
10008
9984
|
|
|
10009
9985
|
Object.entries(paymentTypeSelectors).forEach(([type, triggerSelector]) => {
|
|
10010
|
-
$(document).on('click', triggerSelector, () => showPaymentLoader(type));
|
|
9986
|
+
$(document).on('click', triggerSelector, () => Wick.showPaymentLoader(type));
|
|
10011
9987
|
});
|
|
10012
9988
|
|
|
10013
9989
|
var Wick = Wick || {};
|
|
@@ -11038,6 +11014,42 @@ Wick.ReferenceField = (function () {
|
|
|
11038
11014
|
init();
|
|
11039
11015
|
})();
|
|
11040
11016
|
|
|
11017
|
+
var Wick = Wick || {};
|
|
11018
|
+
|
|
11019
|
+
Wick.RepaymentToggle = (function () {
|
|
11020
|
+
const SELECTORS = {
|
|
11021
|
+
repaymentRadio: 'input[name="repaymentTerms"]',
|
|
11022
|
+
term: '.billie-info .term',
|
|
11023
|
+
paymentMethod: '[name="payment-method"]'
|
|
11024
|
+
};
|
|
11025
|
+
|
|
11026
|
+
function updateTerm(value) {
|
|
11027
|
+
const $term = $(SELECTORS.term);
|
|
11028
|
+
if (!$term.length) return;
|
|
11029
|
+
|
|
11030
|
+
$term.text(value);
|
|
11031
|
+
}
|
|
11032
|
+
|
|
11033
|
+
function bindEvents () {
|
|
11034
|
+
$(document).on('change', SELECTORS.repaymentRadio, function () {
|
|
11035
|
+
const value = $(this).val();
|
|
11036
|
+
if (!value) return;
|
|
11037
|
+
|
|
11038
|
+
updateTerm(value);
|
|
11039
|
+
|
|
11040
|
+
const currentMethod = $(SELECTORS.paymentMethod + ':checked').val();
|
|
11041
|
+
if (currentMethod !== 'billie') return;
|
|
11042
|
+
|
|
11043
|
+
if (typeof Wick.showPaymentLoader === 'function') {
|
|
11044
|
+
Wick.showPaymentLoader('billie');
|
|
11045
|
+
}
|
|
11046
|
+
|
|
11047
|
+
});
|
|
11048
|
+
}
|
|
11049
|
+
|
|
11050
|
+
bindEvents();
|
|
11051
|
+
})();
|
|
11052
|
+
|
|
11041
11053
|
var Wick = Wick || {};
|
|
11042
11054
|
Wick.Selectable = (function(){
|
|
11043
11055
|
$selectable = $('.js-selectable'),
|