wickes-css2 2.94.0-develop.5 → 2.94.0-ic-298-mega-nav.1
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 -1
- package/build/css/category-main.css +1 -1
- package/build/css/emulation.css +1 -1
- package/build/css/homepage-main.css +1 -1
- package/build/css/main.css +1 -1
- package/build/css/my-account-main.css +1 -1
- package/build/css/pages/checkout-new.css +1 -1
- package/build/css/pages/checkout.css +1 -1
- package/build/css/pages/my-account.css +1 -1
- package/build/css/pages/page_checkout_delivery-new.css +1 -1
- package/build/css/pages/page_product-details-v2-critical.css +1 -1
- package/build/css/pages/page_product-details-v2.css +1 -1
- package/build/css/pages/page_shopping-cart-v2.css +1 -1
- package/build/css/pdp-main-before-combine.css +1 -1
- package/build/css/pdp-main-critical.css +1 -1
- package/build/css/pdp-main-non-critical.css +1 -1
- package/build/css/pdp-main.css +1 -1
- package/build/css/plp-main.css +1 -1
- package/build/css/store-locator-main.css +1 -1
- package/build/img/placeholders/discount-sm-15.jpg +0 -0
- package/build/img/placeholders/discount-sm.png +0 -0
- package/build/js/account-members.min.js +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 +30 -177
- package/build/js/general.bundle.min.js +1 -1
- package/build/js/merged-checkout.min.js +1 -1
- package/build/js/page/plp-load-more.js +0 -1
- package/build/js/pdp.bundle.min.js +1 -1
- package/build/js/plp.bundle.min.js +1 -1
- package/build/js/project-list.min.js +1 -1
- package/package.json +1 -1
- package/src/components/account-families/actions-bar.hbs +3 -6
- package/src/components/aside-nav2.hbs +1 -1
- package/src/components/calendar-time-table-v2.hbs +3 -0
- package/src/components/calendar-time-table.hbs +3 -0
- package/src/components/date-selection-v2.hbs +106 -0
- package/src/components/date-selection.hbs +59 -46
- package/src/components/delivery-selection.hbs +11 -0
- package/src/components/delivery-types-v2.hbs +17 -0
- package/src/components/delivery-types.hbs +38 -18
- package/src/components/navigation/menu-item-sub.hbs +33 -0
- package/src/components/navigation/menu-item-top.hbs +32 -0
- package/src/components/navigation/menu-item.hbs +32 -0
- package/src/components/navigation/nav-wrapper.hbs +12 -0
- package/src/components/store-details.hbs +20 -22
- package/src/components/store-preview.hbs +11 -0
- package/src/components.html +0 -1
- package/src/data/data_big-wins-stores.json +22 -0
- package/src/data/data_notification-page.json +0 -4
- package/src/data/navigation.json +854 -0
- package/src/elements/dropdown.hbs +5 -16
- package/src/elements/form-row.hbs +1 -1
- package/src/elements/input.hbs +2 -2
- package/src/img/placeholders/discount-sm-15.jpg +0 -0
- package/src/img/placeholders/discount-sm.png +0 -0
- package/src/js/components/date-selection.js +20 -6
- package/src/js/components/general/main-nav.js +23 -14
- package/src/js/components/general/switchVat.js +1 -27
- package/src/js/components/leave-event.js +5 -51
- package/src/js/emulation/big-wins.js +2 -0
- package/src/js/emulation/date-selection.js +21 -0
- package/src/js/emulation/forms.js +1 -1
- package/src/js/emulation/main-nav-local.js +6 -4
- package/src/js/page/plp-load-more.js +0 -1
- package/src/layouts/my-account.hbs +1 -1
- package/src/page_checkout_delivery-address.html +70 -0
- package/src/page_checkout_delivery-details-ASM.html +251 -0
- package/src/page_checkout_delivery-details-oos-partially.html +215 -0
- package/src/page_checkout_delivery-details-oos.html +232 -0
- package/src/page_checkout_delivery-details-v2-asm.html +3 -3
- package/src/page_checkout_delivery-details-v2-calendar-message.html +1 -1
- package/src/page_checkout_delivery-details-v2-oos.html +1 -1
- package/src/page_checkout_delivery-details-v2-wisdom-not-available.html +2 -2
- package/src/page_checkout_delivery-details-v2-wisdom.html +2 -2
- package/src/{page_checkout_rapid-delivery-details.html → page_checkout_delivery-details-v2.html} +3 -14
- package/src/page_checkout_delivery-details-with-loader-v2.html +1 -1
- package/src/page_checkout_delivery-details-with-loader.html +220 -0
- package/src/page_checkout_delivery-details.html +221 -0
- package/src/page_checkout_delivery-details_guest-new.html +1 -1
- package/src/page_checkout_delivery-details_guest.html +198 -0
- package/src/page_discount_installer.html +1 -7
- package/src/page_marketing-preferences.html +1 -7
- package/src/page_my-account.html +59 -56
- package/src/page_my-account_address-book.html +2 -8
- package/src/page_my-account_order-history.html +3 -8
- package/src/page_my-account_personal-details.html +1 -7
- package/src/page_old-navigation.html +10 -0
- package/src/page_tradePro_delivery-details.html +243 -0
- package/src/page_tradePro_discount.html +2 -8
- package/src/page_tradePro_rewards.html +1 -7
- package/src/page_wismo-order-history-loadmore.html +3 -3
- package/src/partials/breadcrumbs.hbs +8 -27
- package/src/partials/head.hbs +1 -5
- package/src/partials/header.hbs +49 -68
- package/src/partials/main-nav.hbs +15 -19
- package/src/scss/components/_aside-nav2.scss +0 -18
- package/src/scss/components/_big-wins-critical.scss +1 -0
- package/src/scss/components/_big-wins.scss +8 -1
- package/src/scss/components/_date-selection-add-new-styles.scss +19 -78
- package/src/scss/components/_date-selection.scss +215 -30
- package/src/scss/components/_order-item-cc.scss +6 -0
- package/src/scss/emulation.scss +24 -0
- package/src/scss/helpers/_variables.scss +1 -3
- package/src/scss/pages/_my-account_new.scss +12 -1
- package/src/scss/pages/checkout-new.scss +0 -51
- package/src/scss/pages/my-account.scss +0 -1
- package/src/scss/pages/page_checkout_delivery-new.scss +1 -2
- package/src/scss/pages/page_paint-mixing-error.scss +1 -1
- package/src/scss/partials/_header.scss +0 -35
- package/src/scss/partials/_main-nav.scss +11 -6
- package/src/sitemap.html +78 -47
- package/build/css/my-account-main-v2.css +0 -1
- package/build/css/pages/my-account-v2.css +0 -1
- package/build/css/pages/page_default-store.css +0 -1
- package/build/css/pages/page_personal-details.css +0 -1
- package/build/js/default-store.min.js +0 -1
- package/build/js/my-account.min.js +0 -1
- package/build/js/page/default-store.js +0 -44
- package/build/js/page/my-account.js +0 -51
- package/build/js/page/personal-details.js +0 -286
- package/build/js/personal-details.min.js +0 -1
- package/src/components/banner-news.hbs +0 -8
- package/src/components/default-store/current-store.hbs +0 -60
- package/src/components/default-store/list-of-store.hbs +0 -39
- package/src/components/default-store/store-form.hbs +0 -29
- package/src/components/default-store/store-unavailable.hbs +0 -4
- package/src/components/my-account/active-orders/consignment-info.hbs +0 -11
- package/src/components/my-account/active-orders/header.hbs +0 -4
- package/src/components/my-account/active-orders/list-orders.hbs +0 -9
- package/src/components/my-account/active-orders/order-details.hbs +0 -18
- package/src/components/my-account/active-orders/order-header.hbs +0 -7
- package/src/components/my-account/active-orders/order.hbs +0 -20
- package/src/components/my-account/active-orders/shipment-detail.hbs +0 -13
- package/src/components/my-account/barcode.hbs +0 -17
- package/src/components/my-account/clipboard-code-card.hbs +0 -16
- package/src/components/my-account/contact-us.hbs +0 -23
- package/src/components/my-account/discount.hbs +0 -11
- package/src/components/my-account/greetings.hbs +0 -7
- package/src/components/my-account/leave-modal.hbs +0 -13
- package/src/components/my-account/menu-items.hbs +0 -25
- package/src/components/my-account/mobile-nav.hbs +0 -46
- package/src/components/my-account/personal-details-form.hbs +0 -29
- package/src/components/my-account/personal-details.hbs +0 -14
- package/src/components/my-account/user-account-actions.hbs +0 -18
- package/src/components/user-information-field.hbs +0 -4
- package/src/data/data_calendar.json +0 -149
- package/src/data/my-account/data_my-account.json +0 -469
- package/src/data/my-account/data_personal-details.json +0 -204
- package/src/data/my-account/page_default-store.json +0 -158
- package/src/js/components/leave-event-v2.js +0 -0
- package/src/js/emulation/default-store.js +0 -97
- package/src/js/emulation/personal-details-local.js +0 -73
- package/src/js/page/default-store.js +0 -44
- package/src/js/page/my-account.js +0 -51
- package/src/js/page/personal-details.js +0 -286
- package/src/layouts/my-account-v2.hbs +0 -27
- package/src/page_checkout_next-day-delivery-details.html +0 -161
- package/src/page_default-store-page-empty.html +0 -48
- package/src/page_default-store-page.html +0 -55
- package/src/page_my-account-installer.html +0 -93
- package/src/page_my-account-trade-pro.html +0 -91
- package/src/page_personal-details-installer.html +0 -62
- package/src/page_personal-details.html +0 -60
- package/src/scss/components/my-account/_consignment-info.scss +0 -46
- package/src/scss/components/my-account/_contacts.scss +0 -116
- package/src/scss/components/my-account/_menu.scss +0 -215
- package/src/scss/components/my-account/_mobile-nav.scss +0 -130
- package/src/scss/components/my-account/_order.scss +0 -112
- package/src/scss/components/my-account/_shipment.scss +0 -93
- package/src/scss/my-account-main-v2.scss +0 -32
- package/src/scss/pages/my-account-v2.scss +0 -570
- package/src/scss/pages/page_default-store.scss +0 -634
- package/src/scss/pages/page_personal-details.scss +0 -281
|
@@ -1,286 +0,0 @@
|
|
|
1
|
-
import {isValidEmail, isValidInputTextField, updateStylingError, removeErrorStyling} from "./utils/validation";
|
|
2
|
-
import {createEvent} from "./utils/create-event";
|
|
3
|
-
|
|
4
|
-
const Handlebars = require("hbsfy/runtime");
|
|
5
|
-
import userInformationField from '../../components/user-information-field.hbs';
|
|
6
|
-
|
|
7
|
-
var Wick = window.Wick || {};
|
|
8
|
-
|
|
9
|
-
Wick.PersonalDetails = {
|
|
10
|
-
UPDATE_PERSONAL_DETAILS_EVENT: 'updatePersonalDetails',
|
|
11
|
-
el: {
|
|
12
|
-
userInformationSection: '.user-information',
|
|
13
|
-
userInformationList: '.user-information__list',
|
|
14
|
-
userForm: '.user-form',
|
|
15
|
-
formRow: '.user-form .form-row',
|
|
16
|
-
emailInput: '#email',
|
|
17
|
-
firstNameInput: '#firstName',
|
|
18
|
-
surnameInput: '#lastName',
|
|
19
|
-
btnEdit: '.user-information .btn__edit',
|
|
20
|
-
btnCancel: '[data-action="cancel-form"]',
|
|
21
|
-
btnSave: '[data-action="save-form"]',
|
|
22
|
-
btnContinue: '[data-action="reset-details"]',
|
|
23
|
-
btnChangePassword: '.btn__change-password',
|
|
24
|
-
formInvalidClass: 'form_invalid',
|
|
25
|
-
notification: '.notification',
|
|
26
|
-
fieldError: '.form-row.form-row_validation-error',
|
|
27
|
-
changePasswordPopup: '#change-password-popup',
|
|
28
|
-
globalMessage: '.globalMessages',
|
|
29
|
-
},
|
|
30
|
-
errorMessages: {
|
|
31
|
-
errorFirstName: 'Please enter your first name',
|
|
32
|
-
errorSurname: 'Please enter your surname',
|
|
33
|
-
errorEmail: 'Please enter your email address',
|
|
34
|
-
},
|
|
35
|
-
defaultNotificationConfig: {
|
|
36
|
-
container: '.personal-details .globalMessages',
|
|
37
|
-
closeBtn: true,
|
|
38
|
-
noScrolling: true,
|
|
39
|
-
},
|
|
40
|
-
isTradeTypeLabel() {
|
|
41
|
-
return $(Wick.PersonalDetails.el.userForm).find('label:contains("Trade type")').length;
|
|
42
|
-
},
|
|
43
|
-
fieldToLabelMap(name) {
|
|
44
|
-
let currentTradeType = ''
|
|
45
|
-
if (name === 'tradeType') {
|
|
46
|
-
currentTradeType = Wick.PersonalDetails.isTradeTypeLabel()
|
|
47
|
-
? 'Trade type'
|
|
48
|
-
: 'How would you describe yourself or your main trade';
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
const fieldMap = {
|
|
52
|
-
titleCode: 'Title',
|
|
53
|
-
firstName: 'First name',
|
|
54
|
-
lastName: 'Surname',
|
|
55
|
-
email: 'Email address',
|
|
56
|
-
tradeType: currentTradeType,
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
return fieldMap[name] || name;
|
|
60
|
-
},
|
|
61
|
-
getFieldsConfigurations: function () {
|
|
62
|
-
return [
|
|
63
|
-
{
|
|
64
|
-
input: Wick.PersonalDetails.el.firstNameInput,
|
|
65
|
-
validator: isValidInputTextField,
|
|
66
|
-
error: Wick.PersonalDetails.errorMessages.errorFirstName
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
input: Wick.PersonalDetails.el.surnameInput,
|
|
70
|
-
validator: isValidInputTextField,
|
|
71
|
-
error: Wick.PersonalDetails.errorMessages.errorSurname
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
input: Wick.PersonalDetails.el.emailInput,
|
|
75
|
-
validator: isValidEmail,
|
|
76
|
-
error: Wick.PersonalDetails.errorMessages.errorEmail
|
|
77
|
-
}
|
|
78
|
-
]
|
|
79
|
-
},
|
|
80
|
-
showForm() {
|
|
81
|
-
Wick.PersonalDetails.validateForm();
|
|
82
|
-
$(Wick.PersonalDetails.el.notification).remove();
|
|
83
|
-
$(Wick.PersonalDetails.el.userInformationSection).addClass('d-none');
|
|
84
|
-
$(Wick.PersonalDetails.el.userForm).removeClass('d-none');
|
|
85
|
-
},
|
|
86
|
-
hideForm() {
|
|
87
|
-
$(Wick.PersonalDetails.el.userForm).addClass('d-none');
|
|
88
|
-
$(Wick.PersonalDetails.el.userInformationSection).removeClass('d-none');
|
|
89
|
-
},
|
|
90
|
-
validateInput: function (input, validatorFunction, errorMsg) {
|
|
91
|
-
const value = $(input).val();
|
|
92
|
-
const isValid = validatorFunction(value);
|
|
93
|
-
updateStylingError(input, isValid, errorMsg);
|
|
94
|
-
|
|
95
|
-
return isValid;
|
|
96
|
-
},
|
|
97
|
-
validateForm: function() {
|
|
98
|
-
const fields = Wick.PersonalDetails.getFieldsConfigurations();
|
|
99
|
-
let isValid = true;
|
|
100
|
-
|
|
101
|
-
fields.forEach(field => {
|
|
102
|
-
let parentElem = $(field.input).closest(Wick.PersonalDetails.el.fieldError);
|
|
103
|
-
if (parentElem.length) {
|
|
104
|
-
removeErrorStyling(parentElem);
|
|
105
|
-
}
|
|
106
|
-
const result = Wick.PersonalDetails.validateInput(field.input, field.validator, field.error);
|
|
107
|
-
isValid = isValid && result;
|
|
108
|
-
});
|
|
109
|
-
|
|
110
|
-
return isValid;
|
|
111
|
-
},
|
|
112
|
-
requestToUpdateForm() {
|
|
113
|
-
return new Promise((resolve, reject) => {
|
|
114
|
-
const payloadArray = Wick.LeaveEvent.getState(Wick.PersonalDetails.el.userForm);
|
|
115
|
-
const payloadObject = payloadArray.reduce((acc, { name, value }) => {
|
|
116
|
-
acc[name] = value;
|
|
117
|
-
return acc;
|
|
118
|
-
}, {});
|
|
119
|
-
const eventDetail = {resolve, reject};
|
|
120
|
-
const event = createEvent(Wick.PersonalDetails.UPDATE_PERSONAL_DETAILS_EVENT, payloadObject, eventDetail);
|
|
121
|
-
window.dispatchEvent(event);
|
|
122
|
-
})
|
|
123
|
-
.then((response) => {
|
|
124
|
-
Wick.Notification.show({
|
|
125
|
-
...Wick.PersonalDetails.defaultNotificationConfig,
|
|
126
|
-
text: response.globalMessage.message,
|
|
127
|
-
type: 'success',
|
|
128
|
-
});
|
|
129
|
-
Wick.LeaveEvent.initialFormState = Wick.LeaveEvent.getState(Wick.PersonalDetails.el.userForm);
|
|
130
|
-
Wick.PersonalDetails.updateUserInformationSection(Wick.LeaveEvent.initialFormState);
|
|
131
|
-
Wick.PersonalDetails.updateFormFields(Wick.LeaveEvent.initialFormState);
|
|
132
|
-
Wick.PersonalDetails.hideForm();
|
|
133
|
-
Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
|
|
134
|
-
})
|
|
135
|
-
.catch((error) => {
|
|
136
|
-
Wick.Notification.show({
|
|
137
|
-
...Wick.PersonalDetails.defaultNotificationConfig,
|
|
138
|
-
text: error.globalMessage.message,
|
|
139
|
-
type: 'error',
|
|
140
|
-
});
|
|
141
|
-
Wick.PersonalDetails.handleFieldErrors(error);
|
|
142
|
-
Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
|
|
143
|
-
});
|
|
144
|
-
},
|
|
145
|
-
handleFieldErrors(error) {
|
|
146
|
-
if (error.fieldErrors && error.fieldErrors.length) {
|
|
147
|
-
error.fieldErrors.forEach((fieldError) => {
|
|
148
|
-
const field = `#${fieldError.field}`;
|
|
149
|
-
updateStylingError(field, false, fieldError.message);
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
},
|
|
153
|
-
submitForm(event) {
|
|
154
|
-
event.preventDefault();
|
|
155
|
-
Wick.PersonalDetails.trimAndRewriteInputs(Wick.PersonalDetails.el.userForm);
|
|
156
|
-
|
|
157
|
-
if (!Wick.PersonalDetails.hasUnsavedChanges()) {
|
|
158
|
-
Wick.PersonalDetails.hideForm();
|
|
159
|
-
$(Wick.PersonalDetails.el.notification).remove();
|
|
160
|
-
Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
if (Wick.PersonalDetails.validateForm()) {
|
|
165
|
-
Wick.PersonalDetails.requestToUpdateForm();
|
|
166
|
-
} else {
|
|
167
|
-
Wick.Notification.show({
|
|
168
|
-
...Wick.PersonalDetails.defaultNotificationConfig,
|
|
169
|
-
text: 'Please correct the errors below.',
|
|
170
|
-
type: 'error',
|
|
171
|
-
});
|
|
172
|
-
Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
|
|
173
|
-
}
|
|
174
|
-
},
|
|
175
|
-
updateUserInformationSection(personalDetails) {
|
|
176
|
-
const $userInformationList = $(Wick.PersonalDetails.el.userInformationList);
|
|
177
|
-
|
|
178
|
-
if (!$userInformationList.length) return;
|
|
179
|
-
|
|
180
|
-
$userInformationList.empty();
|
|
181
|
-
|
|
182
|
-
personalDetails.forEach(({ name, value, text }) => {
|
|
183
|
-
const label = Wick.PersonalDetails.fieldToLabelMap(name);
|
|
184
|
-
const textField = text || value
|
|
185
|
-
$userInformationList.append(
|
|
186
|
-
userInformationField({
|
|
187
|
-
label,
|
|
188
|
-
textField,
|
|
189
|
-
})
|
|
190
|
-
);
|
|
191
|
-
});
|
|
192
|
-
|
|
193
|
-
Wick.PersonalDetails.hideParentListItemIfLabelExists('CSRFToken');
|
|
194
|
-
},
|
|
195
|
-
updateFormFields(personalDetails) {
|
|
196
|
-
personalDetails.forEach(({ name, value, text }) => {
|
|
197
|
-
const field = document.querySelector(`#${name}`);
|
|
198
|
-
if (field) {
|
|
199
|
-
if (field.tagName === 'INPUT') {
|
|
200
|
-
field.value = text || value || '';
|
|
201
|
-
field.setAttribute('value', text || value || '');
|
|
202
|
-
} else {
|
|
203
|
-
const options = field.querySelectorAll('option');
|
|
204
|
-
options.forEach(option => {
|
|
205
|
-
if (option.textContent.trim() === value || option.value === value) {
|
|
206
|
-
option.setAttribute('selected', 'selected');
|
|
207
|
-
field.value = option.value;
|
|
208
|
-
} else {
|
|
209
|
-
option.removeAttribute('selected');
|
|
210
|
-
}
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
});
|
|
215
|
-
},
|
|
216
|
-
resetFormToInitialState() {
|
|
217
|
-
Wick.PersonalDetails.hideForm();
|
|
218
|
-
$(Wick.PersonalDetails.el.notification).remove();
|
|
219
|
-
$(Wick.LeaveEvent.el.leavePopup).modal('hide');
|
|
220
|
-
Wick.PersonalDetails.updateFormFields(Wick.LeaveEvent.initialFormState);
|
|
221
|
-
},
|
|
222
|
-
hasUnsavedChanges() {
|
|
223
|
-
const currentState = Wick.LeaveEvent.getState(Wick.PersonalDetails.el.userForm);
|
|
224
|
-
|
|
225
|
-
return !_.isEqual(currentState, Wick.LeaveEvent.initialFormState);
|
|
226
|
-
},
|
|
227
|
-
changePasswordHandler(event) {
|
|
228
|
-
const changePasswordUrl = $(Wick.PersonalDetails.el.btnChangePassword).attr('href');
|
|
229
|
-
|
|
230
|
-
if (Wick.PersonalDetails.hasUnsavedChanges()) {
|
|
231
|
-
event.preventDefault();
|
|
232
|
-
$(Wick.PersonalDetails.el.changePasswordPopup).modal('show');
|
|
233
|
-
Wick.LeaveEvent.proceedBrowserLeave = true;
|
|
234
|
-
$(Wick.PersonalDetails.el.changePasswordPopup).find(Wick.PersonalDetails.el.btnContinue).off('click').on('click', function () {
|
|
235
|
-
Wick.LeaveEvent.removeLeaveEvent();
|
|
236
|
-
$(Wick.LeaveEvent.el.leavePopup).modal('hide');
|
|
237
|
-
window.location.href = changePasswordUrl;
|
|
238
|
-
});
|
|
239
|
-
} else {
|
|
240
|
-
window.location.href = changePasswordUrl;
|
|
241
|
-
}
|
|
242
|
-
},
|
|
243
|
-
hideParentListItemIfLabelExists(labelText) {
|
|
244
|
-
const label = $(Wick.PersonalDetails.el.userInformationList).find(`label:contains("${labelText}")`);
|
|
245
|
-
|
|
246
|
-
if (label.length > 0) {
|
|
247
|
-
label.closest('li').hide();
|
|
248
|
-
}
|
|
249
|
-
},
|
|
250
|
-
scrollToElement(element) {
|
|
251
|
-
const globalMessage = $(element);
|
|
252
|
-
|
|
253
|
-
if (globalMessage.length > 0) {
|
|
254
|
-
$('html, body').animate({
|
|
255
|
-
scrollTop: globalMessage.offset().top - 20
|
|
256
|
-
}, 300);
|
|
257
|
-
}
|
|
258
|
-
},
|
|
259
|
-
trimAndRewriteInputs(formSelector) {
|
|
260
|
-
const $form = $(formSelector);
|
|
261
|
-
|
|
262
|
-
if (!$form.length) {
|
|
263
|
-
return;
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
$form.find('input[type="text"], input[type="email"]').each(function () {
|
|
267
|
-
$(this).val($.trim($(this).val()));
|
|
268
|
-
});
|
|
269
|
-
},
|
|
270
|
-
init: function () {
|
|
271
|
-
Wick.LeaveEvent.bindEvent(
|
|
272
|
-
Wick.PersonalDetails.el.userForm,
|
|
273
|
-
Wick.PersonalDetails.el.btnCancel,
|
|
274
|
-
Wick.PersonalDetails.el.btnContinue,
|
|
275
|
-
Wick.PersonalDetails.resetFormToInitialState
|
|
276
|
-
);
|
|
277
|
-
|
|
278
|
-
$(Wick.PersonalDetails.el.btnEdit).on('click', Wick.PersonalDetails.showForm);
|
|
279
|
-
$(Wick.PersonalDetails.el.btnSave).on('click', Wick.PersonalDetails.submitForm);
|
|
280
|
-
$(Wick.PersonalDetails.el.btnChangePassword).on('click', Wick.PersonalDetails.changePasswordHandler);
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
$(document).ready(function () {
|
|
285
|
-
Wick.PersonalDetails.init();
|
|
286
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
{{#block "head" }}
|
|
5
|
-
{{> head }}
|
|
6
|
-
{{/block}}
|
|
7
|
-
</head>
|
|
8
|
-
<body class="{{pageClass}}">
|
|
9
|
-
{{#block "header"}}
|
|
10
|
-
{{> header}}
|
|
11
|
-
{{/block}}
|
|
12
|
-
<a id="skip-to-content"></a>
|
|
13
|
-
<main class="{{mainClass}}">
|
|
14
|
-
{{#block "notification"}}{{/block}}
|
|
15
|
-
{{#block "heading"}}{{/block}}
|
|
16
|
-
{{#block "main"}}
|
|
17
|
-
<p>Ooops, page is empty</p>
|
|
18
|
-
{{/block}}
|
|
19
|
-
</main>
|
|
20
|
-
{{#block "footer"}}
|
|
21
|
-
{{> footer }}
|
|
22
|
-
{{/block}}
|
|
23
|
-
{{#block "foot"}}
|
|
24
|
-
{{> scripts}}
|
|
25
|
-
{{/block}}
|
|
26
|
-
</body>
|
|
27
|
-
</html>
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
{{#extend "checkout" pageClass="page_checkout-delivery-new page_checkout" title="Checkout - Delivery details" isAsideSticky="true"}}
|
|
2
|
-
{{#content "steps"}}
|
|
3
|
-
{{> steps-three-steps active-step-index="1" }}
|
|
4
|
-
{{/content}}
|
|
5
|
-
|
|
6
|
-
{{#content "head" mode="append"}}
|
|
7
|
-
<link type="text/css" rel="stylesheet" href="./css/pages/checkout-new.css">
|
|
8
|
-
<link type="text/css" rel="stylesheet" href="./css/pages/page_checkout_delivery-new.css">
|
|
9
|
-
{{/content}}
|
|
10
|
-
|
|
11
|
-
{{#content "aside"}}
|
|
12
|
-
{{> order-summary delivery-address-v2.summary no-action=true id=1 basket-id=true paymentsCheckoutV2="true"}}
|
|
13
|
-
{{/content}}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
{{#content "main"}}
|
|
17
|
-
<div class="delivery-block">
|
|
18
|
-
<h3 class="delivery-block__heading">Delivery Information</h3>
|
|
19
|
-
<div class="delivery-block__wrapper">
|
|
20
|
-
<div class="date-selection__wrapper">
|
|
21
|
-
<h3 class="date-selection__header">Select delivery date</h3>
|
|
22
|
-
<p class="date-selection__info-block">
|
|
23
|
-
Please choose a date for delivery from the calendar below.
|
|
24
|
-
</p>
|
|
25
|
-
<p class="date-selection__info-block">
|
|
26
|
-
Our delivery slots are currently available up to 8 days in advance. We release additional delivery slots daily.
|
|
27
|
-
</p>
|
|
28
|
-
<p class="date-selection__annotation">
|
|
29
|
-
*Individual couriers will provide more information on delivery times, closer to your chosen delivery date.
|
|
30
|
-
</p>
|
|
31
|
-
</div>
|
|
32
|
-
|
|
33
|
-
<div class="component component-date-selection">
|
|
34
|
-
{{> date-selection
|
|
35
|
-
titleDelivery="Next and Named day delivery"
|
|
36
|
-
subtitleDelivery="Delivery between 7am - 7pm for £7*"
|
|
37
|
-
wisdom=true
|
|
38
|
-
}}
|
|
39
|
-
</div>
|
|
40
|
-
|
|
41
|
-
{{#with checkoutOrder.deliveryDeliveryDetails.[0]}}
|
|
42
|
-
<div class="checkout-order">
|
|
43
|
-
{{> checkout-order-block}}
|
|
44
|
-
</div>
|
|
45
|
-
{{/with}}
|
|
46
|
-
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
|
|
50
|
-
<div class="click-collect-block">
|
|
51
|
-
<h3 class="click-collect-block__heading">Click & Collect</h3>
|
|
52
|
-
|
|
53
|
-
<div class="click-collect-block__head-info">
|
|
54
|
-
<p>Simply enter or correct the contact information required below and continue to the next step of the checkout.</p>
|
|
55
|
-
<div class="head-info__wrapper">
|
|
56
|
-
<div class="head-info__wrapper-exclamation">
|
|
57
|
-
<i class="far fa-exclamation-circle"></i>
|
|
58
|
-
<span>Your order will be held for up to 24 hours</span>
|
|
59
|
-
</div>
|
|
60
|
-
<div class="head-info__wrapper-text">
|
|
61
|
-
<p>You will receive a text when your order is ready to collect (usually within 1 trading hour of receiving your order confirmation email).</p>
|
|
62
|
-
<p>Please wait for confirmation before travelling to your chosen store.</p>
|
|
63
|
-
</div>
|
|
64
|
-
</div>
|
|
65
|
-
</div>
|
|
66
|
-
|
|
67
|
-
<div class="click-collect-block__wrapper">
|
|
68
|
-
{{#with checkoutOrder.clickCollectDeliveryAddress.[0]}}
|
|
69
|
-
<div class="checkout-order">
|
|
70
|
-
{{> checkout-order-block}}
|
|
71
|
-
</div>
|
|
72
|
-
{{/with}}
|
|
73
|
-
|
|
74
|
-
<div class="add-contact-details">
|
|
75
|
-
<h3 class="add-contact-details__heading">Add contact details</h3>
|
|
76
|
-
<p>Please enter your phone number(s) below so we can contact you regarding your order.</p>
|
|
77
|
-
|
|
78
|
-
<div class="add-contact-details__form">
|
|
79
|
-
{{> form-row type="tel" id="mobile" label="Mobile number" required="true"}}
|
|
80
|
-
{{> form-row type="tel" id="home-phone" label="Home phone"}}
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
84
|
-
</div>
|
|
85
|
-
|
|
86
|
-
<div class="simplify-collection">
|
|
87
|
-
<h3 class="simplify-collection__heading">Simplify your collection</h3>
|
|
88
|
-
<p class="simplify-collection__info">All the Click & Collect items in your order are currently available at the following stores. Select
|
|
89
|
-
one of the store to collect all your items from the same location.</p>
|
|
90
|
-
|
|
91
|
-
<div class="simplify-collection__wrapper">
|
|
92
|
-
<div class="your-contact-details__checkbox">
|
|
93
|
-
{{#extend "radiobutton" id="oldham" name="store" label="Oldham" checked="true"}}
|
|
94
|
-
{{#content "html"}}
|
|
95
|
-
<span class="distance">6.2 Miles</span>
|
|
96
|
-
<div class="store-address">
|
|
97
|
-
<div class="store-address__street">Wickes Larch Street,</div>
|
|
98
|
-
<div class="store-address__town">Oldham</div>
|
|
99
|
-
<div class="store-address__city">Greater Manchester,</div>
|
|
100
|
-
<div class="store-address__postcode">OL8 1TA</div>
|
|
101
|
-
<div class="store-address__country">United Kingdom</div>
|
|
102
|
-
</div>
|
|
103
|
-
{{/content}}
|
|
104
|
-
{{/extend}}
|
|
105
|
-
</div>
|
|
106
|
-
<div class="your-contact-details__checkbox">
|
|
107
|
-
{{#extend "radiobutton" id="clifton" name="store" label="Clifton"}}
|
|
108
|
-
{{#content "html"}}
|
|
109
|
-
<span class="distance">4.9 Miles</span>
|
|
110
|
-
<div class="store-address">
|
|
111
|
-
<div class="store-address__street">Wickes Wynne Avenue,</div>
|
|
112
|
-
<div class="store-address__town"> Clifton, Swinton</div>
|
|
113
|
-
<div class="store-address__city">Greater Manchester,</div>
|
|
114
|
-
<div class="store-address__postcode">M27 8FU</div>
|
|
115
|
-
<div class="store-address__country">United Kingdom</div>
|
|
116
|
-
</div>
|
|
117
|
-
{{/content}}
|
|
118
|
-
{{/extend}}
|
|
119
|
-
</div>
|
|
120
|
-
</div>
|
|
121
|
-
|
|
122
|
-
<p class="simplify-collection__info">I would like to update my order to collect all my items from one store.</p>
|
|
123
|
-
|
|
124
|
-
<button class="btn btn-primary simplify-collection__btn">
|
|
125
|
-
<span class="btn__text">Simplify collection</span>
|
|
126
|
-
</button>
|
|
127
|
-
</div>
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
{{> checkout_voucher_large title="Voucher Code"}}
|
|
131
|
-
|
|
132
|
-
<div class="continue-btn">
|
|
133
|
-
<button class="btn btn-action">Continue to Payment Details</button>
|
|
134
|
-
</div>
|
|
135
|
-
|
|
136
|
-
{{/content}}
|
|
137
|
-
|
|
138
|
-
{{#content "foot" mode="append"}}
|
|
139
|
-
<script defer src="./js/page/checkout-confirmation-new.js"></script>
|
|
140
|
-
<script defer src="./js/page/select-address.js"></script>
|
|
141
|
-
<script src="./js/checkout.min.js"></script>
|
|
142
|
-
|
|
143
|
-
{{#extend "modal" classMod="edit-delivery-address" id="modalEditAddress" title="Edit delivery address" fullWidth=true}}
|
|
144
|
-
{{#content "body"}}
|
|
145
|
-
<div class="edit-address-modal-block">
|
|
146
|
-
{{> notifications notification-page.error-deliver-area}}
|
|
147
|
-
<div class="delivery-block__wrapper customer-journey-block">
|
|
148
|
-
{{> user-address-delivery radioName="checkout-address-radio" modal="modalDeliveryEdit" selectedAddress=true simpleAddress=true isDeleted=true}}
|
|
149
|
-
</div>
|
|
150
|
-
|
|
151
|
-
<button class="btn btn-action btn_full">
|
|
152
|
-
<span class="btn__text">Continue to delivery details</span>
|
|
153
|
-
</button>
|
|
154
|
-
</div>
|
|
155
|
-
{{/content}}
|
|
156
|
-
{{/extend}}
|
|
157
|
-
|
|
158
|
-
{{/content}}
|
|
159
|
-
{{/extend}}
|
|
160
|
-
|
|
161
|
-
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
{{#extend "my-account-v2" dataBreadcrumbs=default-store.breadcrumbs pageClass="page_my-account_new" title="Default Store Page" pageMyAcc=true myAccV2=true isLoggedIn=true mainClass="default-store"}}
|
|
2
|
-
{{#content "head" mode="append"}}
|
|
3
|
-
<link type="text/css" rel="stylesheet" href="./css/pages/page_default-store.css">
|
|
4
|
-
{{/content}}
|
|
5
|
-
{{#content "main"}}
|
|
6
|
-
<div class="container">
|
|
7
|
-
<div class="row">
|
|
8
|
-
<div class="col-12">
|
|
9
|
-
{{> my-account/mobile-nav
|
|
10
|
-
menu=default-store.menu
|
|
11
|
-
active-index=6
|
|
12
|
-
page-name=default-store.menu.[6].title
|
|
13
|
-
}}
|
|
14
|
-
</div>
|
|
15
|
-
</div>
|
|
16
|
-
</div>
|
|
17
|
-
|
|
18
|
-
<div class="container default-store__wrap">
|
|
19
|
-
<div class="row">
|
|
20
|
-
<div class="col-12 d-md-none">
|
|
21
|
-
<h1 class="default-store__title">{{default-store.title}}</h1>
|
|
22
|
-
</div>
|
|
23
|
-
<div class="col-12 col-md-6 default-store__search">
|
|
24
|
-
<div class="default-store__header">
|
|
25
|
-
<h1 class="default-store__title d-none d-md-block">{{default-store.title}}</h1>
|
|
26
|
-
<p class="default-store__subtitle">{{default-store.subtitle}}</p>
|
|
27
|
-
</div>
|
|
28
|
-
{{> default-store/store-form
|
|
29
|
-
default-store.searchField
|
|
30
|
-
}}
|
|
31
|
-
{{> default-store/store-unavailable
|
|
32
|
-
default-store.unavailable
|
|
33
|
-
}}
|
|
34
|
-
{{> default-store/list-of-store
|
|
35
|
-
style="display: none;"
|
|
36
|
-
}}
|
|
37
|
-
</div>
|
|
38
|
-
<div class="col-12 col-md-6">
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
</div>
|
|
42
|
-
|
|
43
|
-
{{/content}}
|
|
44
|
-
{{#content "foot" mode="append"}}
|
|
45
|
-
<script defer src="./js/my-account.min.js"></script>
|
|
46
|
-
<script defer src="./js/default-store.min.js"></script>
|
|
47
|
-
{{/content}}
|
|
48
|
-
{{/extend}}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
{{#extend "my-account-v2" dataBreadcrumbs=default-store.breadcrumbs pageClass="page_my-account_new" title="Default Store Page" pageMyAcc=true myAccV2=true isLoggedIn=true mainClass="default-store"}}
|
|
2
|
-
{{#content "head" mode="append"}}
|
|
3
|
-
<link type="text/css" rel="stylesheet" href="./css/pages/page_default-store.css">
|
|
4
|
-
{{/content}}
|
|
5
|
-
{{#content "notification"}}
|
|
6
|
-
<div class="globalMessages">
|
|
7
|
-
<div class="container">
|
|
8
|
-
{{> notifications notification-page.success withCloseBtn="true"}}
|
|
9
|
-
</div>
|
|
10
|
-
</div>
|
|
11
|
-
{{/content}}
|
|
12
|
-
{{#content "main"}}
|
|
13
|
-
<div class="container">
|
|
14
|
-
<div class="row">
|
|
15
|
-
<div class="col-12">
|
|
16
|
-
{{> my-account/mobile-nav
|
|
17
|
-
menu=default-store.menu
|
|
18
|
-
active-index=6
|
|
19
|
-
page-name=default-store.menu.[6].title
|
|
20
|
-
}}
|
|
21
|
-
</div>
|
|
22
|
-
</div>
|
|
23
|
-
</div>
|
|
24
|
-
|
|
25
|
-
<div class="container default-store__wrap">
|
|
26
|
-
<div class="row">
|
|
27
|
-
<div class="col-12 d-md-none">
|
|
28
|
-
<h1 class="default-store__title">{{default-store.title}}</h1>
|
|
29
|
-
</div>
|
|
30
|
-
<div class="col-12 col-md-6 default-store__search">
|
|
31
|
-
<div class="default-store__header">
|
|
32
|
-
<h1 class="default-store__title d-none d-md-block">{{default-store.title}}</h1>
|
|
33
|
-
<p class="default-store__subtitle default-store__subtitle--change">{{default-store.subtitleChange}}</p>
|
|
34
|
-
</div>
|
|
35
|
-
{{> default-store/store-form
|
|
36
|
-
default-store.searchField
|
|
37
|
-
}}
|
|
38
|
-
{{> default-store/list-of-store
|
|
39
|
-
style="display: none;"
|
|
40
|
-
}}
|
|
41
|
-
</div>
|
|
42
|
-
<div class="col-12 col-md-6">
|
|
43
|
-
{{> default-store/current-store
|
|
44
|
-
default-store.currentStore
|
|
45
|
-
}}
|
|
46
|
-
</div>
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
|
|
50
|
-
{{/content}}
|
|
51
|
-
{{#content "foot" mode="append"}}
|
|
52
|
-
<script defer src="./js/my-account.min.js"></script>
|
|
53
|
-
<script defer src="./js/default-store.min.js"></script>
|
|
54
|
-
{{/content}}
|
|
55
|
-
{{/extend}}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
{{#extend "my-account-v2"
|
|
2
|
-
customIconUserClass=my_account.installer.icons.installer
|
|
3
|
-
dataBreadcrumbs=my_account.installer.breadcrumbs
|
|
4
|
-
pageClass="page_my-account_new"
|
|
5
|
-
title=my_account.installer.title
|
|
6
|
-
pageMyAcc=true
|
|
7
|
-
myAccV2=true
|
|
8
|
-
isLoggedIn=true
|
|
9
|
-
mainClass="my-account"
|
|
10
|
-
switch-vat=true
|
|
11
|
-
}}
|
|
12
|
-
{{#content "heading"}}
|
|
13
|
-
{{> notifications
|
|
14
|
-
notification-page.info-message
|
|
15
|
-
text=my_account.installer.bannerText
|
|
16
|
-
}}
|
|
17
|
-
{{/content}}
|
|
18
|
-
{{#content "main"}}
|
|
19
|
-
<div class="container">
|
|
20
|
-
<div class="row">
|
|
21
|
-
<div class="col-12">
|
|
22
|
-
{{> my-account/mobile-nav my-account-menu-new
|
|
23
|
-
customIcon=true
|
|
24
|
-
menu=my_account.installer.menu
|
|
25
|
-
active-index=0
|
|
26
|
-
page-name=my_account.installer.menu.[0].title
|
|
27
|
-
}}
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
<div class="account-summary">
|
|
32
|
-
<div class="container">
|
|
33
|
-
<div class="row">
|
|
34
|
-
<div class="col-12">
|
|
35
|
-
<div class="account-summary__wrapper">
|
|
36
|
-
{{> my-account/greetings
|
|
37
|
-
name=my_account.user.name
|
|
38
|
-
subtitle=my_account.user.email
|
|
39
|
-
}}
|
|
40
|
-
{{> my-account/discount
|
|
41
|
-
discountSrc=my_account.installer.discount
|
|
42
|
-
installer=true
|
|
43
|
-
title="In-store discount"
|
|
44
|
-
code=my_account.discount
|
|
45
|
-
customIcon=my_account.installer.icons.installer
|
|
46
|
-
}}
|
|
47
|
-
{{> my-account/clipboard-code-card
|
|
48
|
-
mod="trade-pro-id"
|
|
49
|
-
customIcon=my_account.installer.icons.installer
|
|
50
|
-
title="TradePro ID"
|
|
51
|
-
code=my_account.tradeProId
|
|
52
|
-
}}
|
|
53
|
-
{{> my-account/clipboard-code-card
|
|
54
|
-
mod="discount-code"
|
|
55
|
-
icon="fas fa-badge-percent"
|
|
56
|
-
title="Online discount code"
|
|
57
|
-
code=my_account.installer.discountCode
|
|
58
|
-
}}
|
|
59
|
-
</div>
|
|
60
|
-
{{> my-account/active-orders/list-orders
|
|
61
|
-
switch-vat=true
|
|
62
|
-
title=my_account.installer.activeOrders.sectionTitle
|
|
63
|
-
linkText='View all orders'
|
|
64
|
-
orders=my_account.installer.activeOrders.orderList
|
|
65
|
-
}}
|
|
66
|
-
</div>
|
|
67
|
-
</div>
|
|
68
|
-
</div>
|
|
69
|
-
</div>
|
|
70
|
-
<div class="container">
|
|
71
|
-
<div class="row">
|
|
72
|
-
<div class="col-12">
|
|
73
|
-
{{> my-account/menu-items
|
|
74
|
-
items=my_account.installer.menu
|
|
75
|
-
}}
|
|
76
|
-
</div>
|
|
77
|
-
</div>
|
|
78
|
-
</div>
|
|
79
|
-
<div class="account-actions">
|
|
80
|
-
<div class="container">
|
|
81
|
-
<div class="row">
|
|
82
|
-
<div class="col-12">
|
|
83
|
-
{{> my-account/user-account-actions mod="d-sm-none"}}
|
|
84
|
-
{{> my-account/contact-us contacts=my_account.contacts}}
|
|
85
|
-
</div>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
</div>
|
|
89
|
-
{{/content}}
|
|
90
|
-
{{#content "foot" mode="append"}}
|
|
91
|
-
<script defer src="./js/my-account.min.js"></script>
|
|
92
|
-
{{/content}}
|
|
93
|
-
{{/extend}}
|