wickes-css2 2.94.0-develop.2 → 2.94.0-develop.3

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.
Files changed (61) hide show
  1. package/Readme.md +0 -1
  2. package/build/css/category-main.css +1 -1
  3. package/build/css/homepage-main.css +1 -1
  4. package/build/css/main.css +1 -1
  5. package/build/css/my-account-main-v2.css +1 -1
  6. package/build/css/my-account-main.css +1 -1
  7. package/build/css/pages/my-account.css +1 -1
  8. package/build/css/pages/page_default-store.css +1 -0
  9. package/build/css/pages/page_personal-details.css +1 -1
  10. package/build/css/pages/page_product-details-v2-critical.css +1 -1
  11. package/build/css/pages/page_product-details-v2.css +1 -1
  12. package/build/css/pages/page_shopping-cart-v2.css +1 -1
  13. package/build/css/pdp-main-before-combine.css +1 -1
  14. package/build/css/pdp-main-critical.css +1 -1
  15. package/build/css/pdp-main-non-critical.css +1 -1
  16. package/build/css/pdp-main.css +1 -1
  17. package/build/css/plp-main.css +1 -1
  18. package/build/css/store-locator-main.css +1 -1
  19. package/build/js/account-members.min.js +1 -1
  20. package/build/js/basket.min.js +1 -1
  21. package/build/js/bundle.min.js +1 -1
  22. package/build/js/checkout.min.js +1 -1
  23. package/build/js/default-store.min.js +1 -0
  24. package/build/js/emulation.min.js +99 -3
  25. package/build/js/merged-checkout.min.js +1 -1
  26. package/build/js/page/default-store.js +44 -0
  27. package/build/js/page/personal-details.js +105 -36
  28. package/build/js/personal-details.min.js +1 -1
  29. package/build/js/project-list.min.js +1 -1
  30. package/package.json +1 -1
  31. package/src/components/account-families/actions-bar.hbs +3 -3
  32. package/src/components/default-store/current-store.hbs +60 -0
  33. package/src/components/default-store/list-of-store.hbs +39 -0
  34. package/src/components/default-store/store-form.hbs +29 -0
  35. package/src/components/default-store/store-unavailable.hbs +4 -0
  36. package/src/components/my-account/personal-details-form.hbs +5 -0
  37. package/src/components/store-details.hbs +22 -20
  38. package/src/components/store-preview.hbs +0 -11
  39. package/src/components/user-information-field.hbs +1 -1
  40. package/src/data/data_big-wins-stores.json +0 -22
  41. package/src/data/my-account/data_personal-details.json +36 -11
  42. package/src/data/my-account/page_default-store.json +158 -0
  43. package/src/elements/input.hbs +2 -2
  44. package/src/js/components/leave-event.js +41 -2
  45. package/src/js/emulation/big-wins.js +0 -2
  46. package/src/js/emulation/default-store.js +97 -0
  47. package/src/js/emulation/forms.js +1 -1
  48. package/src/js/page/default-store.js +44 -0
  49. package/src/js/page/personal-details.js +105 -36
  50. package/src/page_default-store-page-empty.html +48 -0
  51. package/src/page_default-store-page.html +55 -0
  52. package/src/page_personal-details-installer.html +17 -7
  53. package/src/page_personal-details.html +15 -7
  54. package/src/scss/components/_big-wins-critical.scss +0 -1
  55. package/src/scss/components/_big-wins.scss +1 -8
  56. package/src/scss/components/_order-item-cc.scss +0 -6
  57. package/src/scss/pages/_my-account_new.scss +1 -12
  58. package/src/scss/pages/page_default-store.scss +633 -0
  59. package/src/scss/pages/page_personal-details.scss +37 -5
  60. package/src/scss/partials/_header.scss +5 -0
  61. package/src/sitemap.html +2 -0
@@ -0,0 +1,97 @@
1
+ var Wick = Wick || {};
2
+ Wick.DefaultStoreProto = {
3
+ el: {
4
+ searchStoreForm: '.search-store',
5
+ $searchStoreWrapInput: $('.search-store__input'),
6
+ searchStoreErrorClass: 'search-store__input-error',
7
+ searchStoreInput: '.search-store #postcode',
8
+ $searchStoreError: $('.form-row__error'),
9
+ $storeUnavailableSection: $('.store-unavailable'),
10
+ $listOfStoreForm: $('.list-of-store'),
11
+ btnCancel: '.my-account_cancel-store',
12
+ btnLocation: '.btn--location',
13
+ iconLocation: '.btn--location .icon',
14
+ errorIconLocation: '.btn--location .icon-error',
15
+ $bigWins: $('.bw'),
16
+ $bwActions: $('.bw_act'),
17
+ $sDetails: $('.s-details_hide'),
18
+ sDetailsHide: 's-details_hide',
19
+ $storeMoreLink: $('.store__more a'),
20
+ },
21
+ showStoreList() {
22
+ Wick.DefaultStoreProto.el.$searchStoreError.hide();
23
+ Wick.DefaultStoreProto.el.$storeUnavailableSection.hide();
24
+ Wick.DefaultStoreProto.el.$listOfStoreForm.show();
25
+ Wick.DefaultStoreProto.el.$searchStoreWrapInput.removeClass(Wick.DefaultStoreProto.el.searchStoreErrorClass);
26
+
27
+ if (Wick.DefaultStoreProto.el.$bigWins.css('display') === 'none') {
28
+ Wick.DefaultStoreProto.el.$bigWins.show();
29
+ }
30
+
31
+ if (Wick.DefaultStoreProto.el.$bwActions.css('display') === 'none') {
32
+ Wick.DefaultStoreProto.el.$bwActions.show();
33
+ }
34
+ },
35
+ showErrorState() {
36
+ Wick.DefaultStoreProto.el.$searchStoreError.show();
37
+ Wick.DefaultStoreProto.el.$storeUnavailableSection.show();
38
+ Wick.DefaultStoreProto.el.$listOfStoreForm.hide();
39
+ Wick.DefaultStoreProto.el.$searchStoreWrapInput.addClass(Wick.DefaultStoreProto.el.searchStoreErrorClass);
40
+ },
41
+ showUnavailableState() {
42
+ Wick.DefaultStoreProto.el.$storeUnavailableSection.show();
43
+ Wick.DefaultStoreProto.el.$listOfStoreForm.hide();
44
+
45
+ Wick.DefaultStoreProto.el.$sDetails.filter(function () {
46
+ let isNotElementHide = !$(this).hasClass(Wick.DefaultStoreProto.el.sDetailsHide);
47
+
48
+ if (isNotElementHide) {
49
+ $(this)
50
+ .closest(Wick.DefaultStoreProto.el.$bigWins)
51
+ .find(Wick.DefaultStoreProto.el.$storeMoreLink)
52
+ .text('Store Info');
53
+ }
54
+
55
+ return isNotElementHide;
56
+ }).addClass(Wick.DefaultStoreProto.el.sDetailsHide);
57
+ },
58
+ clearSearchInput() {
59
+ $(Wick.DefaultStoreProto.el.searchStoreInput).val('');
60
+ Wick.DefaultStore.checkVisibilityOfClearButton();
61
+ },
62
+ toggleErrorStateForLocation() {
63
+ const iconIsVisible = $(Wick.DefaultStoreProto.el.iconLocation).is(':visible');
64
+
65
+ if (iconIsVisible) {
66
+ $(Wick.DefaultStoreProto.el.iconLocation).hide();
67
+ $(Wick.DefaultStoreProto.el.errorIconLocation).show();
68
+ } else {
69
+ $(Wick.DefaultStoreProto.el.iconLocation).show();
70
+ $(Wick.DefaultStoreProto.el.errorIconLocation).hide();
71
+ }
72
+ },
73
+ init() {
74
+ $(Wick.DefaultStoreProto.el.searchStoreForm).on('submit', (event) => {
75
+ event.preventDefault();
76
+ const value = Wick.DefaultStore.getPostCode();
77
+ if (value.length) {
78
+ Wick.DefaultStoreProto.showStoreList();
79
+ } else {
80
+ Wick.DefaultStoreProto.showErrorState();
81
+ }
82
+ });
83
+ $(Wick.DefaultStoreProto.el.btnCancel).on('click', (event) => {
84
+ event.preventDefault();
85
+ Wick.DefaultStoreProto.clearSearchInput();
86
+ Wick.DefaultStoreProto.showUnavailableState();
87
+ })
88
+ $(Wick.DefaultStoreProto.el.btnLocation).on('click', (event) => {
89
+ event.preventDefault();
90
+ Wick.DefaultStoreProto.toggleErrorStateForLocation();
91
+ })
92
+ }
93
+ }
94
+
95
+ $(document).ready(function () {
96
+ Wick.DefaultStoreProto.init();
97
+ });
@@ -5,7 +5,7 @@ Wick.Forms = (function(){
5
5
  fieldError = '.form-row__error',
6
6
  formInvalid = 'form_invalid',
7
7
  rowValidationError = 'form-row_validation-error',
8
- excludedClassesForForm = ['header', 'quiz-modal__form'],
8
+ excludedClassesForForm = ['header', 'quiz-modal__form', 'search-store'],
9
9
  // validationError = '<div class="form-row__error">Error message here</div>',
10
10
  $forgotPassword = $('.link-forgot-password'),
11
11
  scenarios = [{
@@ -0,0 +1,44 @@
1
+ var Wick = window.Wick || {};
2
+
3
+ Wick.DefaultStore = {
4
+ HIDDEN_CLASS_NAME: 'd-none',
5
+ el: {
6
+ searchForm: '.search-store',
7
+ $searchInput: $('.search-store #postcode'),
8
+ $btnClear: $('.search-store .btn--clear'),
9
+ $btnSubmit: $('.search-store .btn-search'),
10
+ },
11
+ getPostCode () {
12
+ return Wick.DefaultStore.el.$searchInput.val();
13
+ },
14
+ checkVisibilityOfClearButton () {
15
+ Wick.DefaultStore.el.$btnClear.toggleClass('d-block', Wick.DefaultStore.getPostCode().length > 0);
16
+ },
17
+ updateCollapseState() {
18
+ const dropdowns = $("#openingTimes, #specialTimes, #facilities");
19
+ const btn = $('[data-toggle="collapse"]');
20
+
21
+ if ($(window).width() >= 768) {
22
+ dropdowns.addClass("show");
23
+ if (btn.length) {
24
+ btn.attr("aria-expanded", "true");
25
+ }
26
+ } else {
27
+ dropdowns.removeClass("show");
28
+ if (btn.length) {
29
+ btn.attr("aria-expanded", "false");
30
+ }
31
+ }
32
+ },
33
+ init () {
34
+ Wick.DefaultStore.updateCollapseState();
35
+ $(window).resize( _.debounce(function () {
36
+ Wick.DefaultStore.updateCollapseState();
37
+ }, 200));
38
+ Wick.DefaultStore.el.$searchInput.on('input', Wick.DefaultStore.checkVisibilityOfClearButton);
39
+ }
40
+ }
41
+
42
+ $(document).ready(function () {
43
+ Wick.DefaultStore.init();
44
+ });
@@ -24,25 +24,40 @@ Wick.PersonalDetails = {
24
24
  formInvalidClass: 'form_invalid',
25
25
  notification: '.notification',
26
26
  fieldError: '.form-row.form-row_validation-error',
27
+ changePasswordPopup: '#change-password-popup',
28
+ globalMessage: '.globalMessages',
27
29
  },
28
- initialFormState: {},
29
30
  errorMessages: {
30
31
  errorFirstName: 'Please enter your first name',
31
32
  errorSurname: 'Please enter your surname',
32
- errorEmail: 'Please enter you email',
33
- },
34
- fieldToLabelMap: {
35
- titleCode: 'Title',
36
- firstName: 'First name',
37
- lastName: 'Surname',
38
- email: 'Email',
39
- tradeType: 'How would you describe yourself or your main trade',
33
+ errorEmail: 'Please enter your email address',
40
34
  },
41
35
  defaultNotificationConfig: {
42
- container: '.globalMessages .col-12',
36
+ container: '.personal-details .globalMessages',
43
37
  closeBtn: true,
44
38
  noScrolling: true,
45
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
+ },
46
61
  getFieldsConfigurations: function () {
47
62
  return [
48
63
  {
@@ -111,11 +126,11 @@ Wick.PersonalDetails = {
111
126
  text: response.globalMessage.message,
112
127
  type: 'success',
113
128
  });
114
- Wick.PersonalDetails.initialFormState = Wick.LeaveEvent.getState(Wick.PersonalDetails.el.userForm);
115
- Wick.PersonalDetails.updateUserInformationSection(Wick.PersonalDetails.initialFormState);
116
- Wick.PersonalDetails.updateFormFields(Wick.PersonalDetails.initialFormState);
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);
117
132
  Wick.PersonalDetails.hideForm();
118
- Wick.LeaveEvent.removeLeaveEvent();
133
+ Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
119
134
  })
120
135
  .catch((error) => {
121
136
  Wick.Notification.show({
@@ -124,11 +139,12 @@ Wick.PersonalDetails = {
124
139
  type: 'error',
125
140
  });
126
141
  Wick.PersonalDetails.handleFieldErrors(error);
142
+ Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
127
143
  });
128
144
  },
129
- handleFieldErrors(fieldErrors) {
130
- if (fieldErrors && fieldErrors.length) {
131
- fieldErrors.forEach((fieldError) => {
145
+ handleFieldErrors(error) {
146
+ if (error.fieldErrors && error.fieldErrors.length) {
147
+ error.fieldErrors.forEach((fieldError) => {
132
148
  const field = `#${fieldError.field}`;
133
149
  updateStylingError(field, false, fieldError.message);
134
150
  });
@@ -136,6 +152,15 @@ Wick.PersonalDetails = {
136
152
  },
137
153
  submitForm(event) {
138
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
+
139
164
  if (Wick.PersonalDetails.validateForm()) {
140
165
  Wick.PersonalDetails.requestToUpdateForm();
141
166
  } else {
@@ -144,6 +169,7 @@ Wick.PersonalDetails = {
144
169
  text: 'Please correct the errors below.',
145
170
  type: 'error',
146
171
  });
172
+ Wick.PersonalDetails.scrollToElement(Wick.PersonalDetails.el.globalMessage);
147
173
  }
148
174
  },
149
175
  updateUserInformationSection(personalDetails) {
@@ -153,27 +179,36 @@ Wick.PersonalDetails = {
153
179
 
154
180
  $userInformationList.empty();
155
181
 
156
- personalDetails.forEach(({ name, value }) => {
157
- const label = Wick.PersonalDetails.fieldToLabelMap[name] || name;
158
-
182
+ personalDetails.forEach(({ name, value, text }) => {
183
+ const label = Wick.PersonalDetails.fieldToLabelMap(name);
184
+ const textField = text || value
159
185
  $userInformationList.append(
160
186
  userInformationField({
161
187
  label,
162
- value,
188
+ textField,
163
189
  })
164
190
  );
165
191
  });
192
+
193
+ Wick.PersonalDetails.hideParentListItemIfLabelExists('CSRFToken');
166
194
  },
167
195
  updateFormFields(personalDetails) {
168
- personalDetails.forEach(({ name, value }) => {
196
+ personalDetails.forEach(({ name, value, text }) => {
169
197
  const field = document.querySelector(`#${name}`);
170
198
  if (field) {
171
- field.value = value || '';
172
- field.setAttribute('value', value || '');
173
-
174
- if (field.tagName === 'SELECT' || field.tagName === 'INPUT') {
175
- field.value = value || '';
176
- field.setAttribute('value', value || '');
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
+ });
177
212
  }
178
213
  }
179
214
  });
@@ -182,18 +217,21 @@ Wick.PersonalDetails = {
182
217
  Wick.PersonalDetails.hideForm();
183
218
  $(Wick.PersonalDetails.el.notification).remove();
184
219
  $(Wick.LeaveEvent.el.leavePopup).modal('hide');
185
- Wick.PersonalDetails.updateFormFields(Wick.PersonalDetails.initialFormState);
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);
186
226
  },
187
227
  changePasswordHandler(event) {
188
228
  const changePasswordUrl = $(Wick.PersonalDetails.el.btnChangePassword).attr('href');
189
- const currentState = Wick.LeaveEvent.getState(Wick.PersonalDetails.el.userForm);
190
- const isDifferent = !_.isEqual(currentState, Wick.PersonalDetails.initialFormState);
191
229
 
192
- if (isDifferent) {
230
+ if (Wick.PersonalDetails.hasUnsavedChanges()) {
193
231
  event.preventDefault();
194
- $(Wick.LeaveEvent.el.leavePopup).modal('show');
232
+ $(Wick.PersonalDetails.el.changePasswordPopup).modal('show');
195
233
  Wick.LeaveEvent.proceedBrowserLeave = true;
196
- $(Wick.LeaveEvent.el.leavePopup).find(Wick.PersonalDetails.el.btnContinue).off('click').on('click', function () {
234
+ $(Wick.PersonalDetails.el.changePasswordPopup).find(Wick.PersonalDetails.el.btnContinue).off('click').on('click', function () {
197
235
  Wick.LeaveEvent.removeLeaveEvent();
198
236
  $(Wick.LeaveEvent.el.leavePopup).modal('hide');
199
237
  window.location.href = changePasswordUrl;
@@ -202,9 +240,40 @@ Wick.PersonalDetails = {
202
240
  window.location.href = changePasswordUrl;
203
241
  }
204
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
+ },
205
270
  init: function () {
206
- Wick.LeaveEvent.bindEvent(Wick.PersonalDetails.el.userForm, Wick.PersonalDetails.el.btnCancel, Wick.PersonalDetails.el.btnContinue, Wick.PersonalDetails.resetFormToInitialState);
207
- Wick.PersonalDetails.initialFormState = Wick.LeaveEvent.getState(Wick.PersonalDetails.el.userForm)
271
+ Wick.LeaveEvent.bindEvent(
272
+ Wick.PersonalDetails.el.userForm,
273
+ Wick.PersonalDetails.el.btnCancel,
274
+ Wick.PersonalDetails.el.btnContinue,
275
+ Wick.PersonalDetails.resetFormToInitialState
276
+ );
208
277
 
209
278
  $(Wick.PersonalDetails.el.btnEdit).on('click', Wick.PersonalDetails.showForm);
210
279
  $(Wick.PersonalDetails.el.btnSave).on('click', Wick.PersonalDetails.submitForm);
@@ -0,0 +1,48 @@
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}}
@@ -0,0 +1,55 @@
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,13 +1,18 @@
1
- {{#extend "my-account-v2" dataBreadcrumbs=personal_details.installer.breadcrumbs pageClass="page_my-account_new" title="My Account DIY" pageMyAcc=true myAccV2=true isLoggedIn=true mainClass="personal-details"}}
1
+ {{#extend "my-account-v2"
2
+ customIconUserClass=my_account.installer.icons.installer
3
+ dataBreadcrumbs=personal_details.installer.breadcrumbs
4
+ pageClass="page_my-account_new"
5
+ title="My Account Installer"
6
+ pageMyAcc=true
7
+ myAccV2=true
8
+ isLoggedIn=true
9
+ mainClass="personal-details"
10
+ }}
2
11
  {{#content "head" mode="append"}}
3
12
  <link type="text/css" rel="stylesheet" href="./css/pages/page_personal-details.css">
4
13
  {{/content}}
5
14
  {{#content "notification"}}
6
- <div class="globalMessages container">
7
- <div class="row">
8
- <div class="col-12">
9
- </div>
10
- </div>
15
+ <div class="globalMessages">
11
16
  </div>
12
17
  {{/content}}
13
18
  {{#content "main"}}
@@ -33,6 +38,7 @@
33
38
  details=personal_details.installer.currentData
34
39
  }}
35
40
  {{> my-account/personal-details-form
41
+ isInstaller=true
36
42
  fields=personal_details.installer.fields
37
43
  buttons=personal_details.buttons
38
44
  }}
@@ -43,9 +49,13 @@
43
49
  {{/content}}
44
50
  {{#content "foot" mode="append"}}
45
51
  {{> my-account/leave-modal
46
- personal_details.leave-popup
52
+ personal_details.reset-popup
47
53
  id="leave-popup"
48
54
  }}
55
+ {{> my-account/leave-modal
56
+ personal_details.leave-popup
57
+ id="change-password-popup"
58
+ }}
49
59
  <script defer src="./js/my-account.min.js"></script>
50
60
  <script defer src="./js/personal-details.min.js"></script>
51
61
  {{/content}}
@@ -1,13 +1,17 @@
1
- {{#extend "my-account-v2" dataBreadcrumbs=personal_details.diy.breadcrumbs pageClass="page_my-account_new" title="My Account DIY" pageMyAcc=true myAccV2=true isLoggedIn=true mainClass="personal-details"}}
1
+ {{#extend "my-account-v2"
2
+ dataBreadcrumbs=personal_details.diy.breadcrumbs
3
+ pageClass="page_my-account_new"
4
+ title="My Account DIY"
5
+ pageMyAcc=true
6
+ myAccV2=true
7
+ isLoggedIn=true
8
+ mainClass="personal-details"
9
+ }}
2
10
  {{#content "head" mode="append"}}
3
11
  <link type="text/css" rel="stylesheet" href="./css/pages/page_personal-details.css">
4
12
  {{/content}}
5
13
  {{#content "notification"}}
6
- <div class="globalMessages container">
7
- <div class="row">
8
- <div class="col-12">
9
- </div>
10
- </div>
14
+ <div class="globalMessages">
11
15
  </div>
12
16
  {{/content}}
13
17
  {{#content "main"}}
@@ -43,9 +47,13 @@
43
47
  {{/content}}
44
48
  {{#content "foot" mode="append"}}
45
49
  {{> my-account/leave-modal
46
- personal_details.leave-popup
50
+ personal_details.reset-popup
47
51
  id="leave-popup"
48
52
  }}
53
+ {{> my-account/leave-modal
54
+ personal_details.leave-popup
55
+ id="change-password-popup"
56
+ }}
49
57
  <script defer src="./js/my-account.min.js"></script>
50
58
  <script defer src="./js/personal-details.min.js"></script>
51
59
  {{/content}}
@@ -249,7 +249,6 @@
249
249
  margin-bottom: 15px;
250
250
 
251
251
  .store {
252
- &__act,
253
252
  &__count {
254
253
  display: none;
255
254
  }
@@ -536,7 +536,6 @@
536
536
  margin-bottom: 15px;
537
537
 
538
538
  .store {
539
- &__act,
540
539
  &__count {
541
540
  display: none;
542
541
  }
@@ -638,12 +637,6 @@
638
637
 
639
638
  .stock__store {
640
639
  padding-bottom: 40px;
641
-
642
- .store__act {
643
- padding-top: 7px;
644
- position: absolute;
645
- color: $blue;
646
- }
647
640
  }
648
641
 
649
642
  .stock__tabs {
@@ -881,7 +874,7 @@
881
874
  }
882
875
 
883
876
  &_cell {
884
- border: 2px solid $gray-light;
877
+ border: 1px solid $gray-light;
885
878
 
886
879
  &:nth-child(2n+1) {
887
880
  padding-left: 20px;
@@ -98,12 +98,6 @@
98
98
  }
99
99
  }
100
100
 
101
- & .store {
102
- &__act {
103
- display: none;
104
- }
105
- }
106
-
107
101
  &__store-info {
108
102
  @include make-col(12);
109
103
  margin-top: 15px;
@@ -638,10 +638,6 @@
638
638
  align-items: center;
639
639
  padding: 17px 0 15px 10px;
640
640
 
641
- &__act {
642
- display: none;
643
- }
644
-
645
641
  &__info {
646
642
  align-self: flex-start;
647
643
  }
@@ -759,7 +755,6 @@
759
755
  margin-bottom: 15px;
760
756
 
761
757
  .store {
762
- &__act,
763
758
  &__count {
764
759
  display: none;
765
760
  }
@@ -860,12 +855,6 @@
860
855
 
861
856
  .stock__store {
862
857
  padding-bottom: 40px;
863
-
864
- .store__act {
865
- padding-top: 7px;
866
- position: absolute;
867
- color: $blue;
868
- }
869
858
  }
870
859
 
871
860
  .stock__tabs {
@@ -1117,7 +1106,7 @@
1117
1106
  }
1118
1107
 
1119
1108
  &_cell {
1120
- border: 2px solid $gray-light;
1109
+ border: 1px solid $gray-light;
1121
1110
 
1122
1111
  &:nth-child(2n+1) {
1123
1112
  padding-left: 20px;