Skip to content

Commit 668dd18

Browse files
committed
AC-2619:Persistent cart contents empty until new product added to cart changed implementation for section relaod
1 parent 3e07e0c commit 668dd18

File tree

2 files changed

+25
-4
lines changed

2 files changed

+25
-4
lines changed

app/code/Magento/Persistent/view/frontend/web/js/view/additional-welcome.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,7 @@ define([
1515
* Init.
1616
*/
1717
init: function () {
18-
customerData.reload(['persistent','cart'], true);
19-
20-
let persistent = customerData.get('persistent');
18+
var persistent = customerData.get('persistent');
2119

2220
if (persistent().fullname === undefined) {
2321
customerData.get('persistent').subscribe(this.replacePersistentWelcome);
@@ -30,7 +28,7 @@ define([
3028
* Replace welcome message for customer with persistent cookie.
3129
*/
3230
replacePersistentWelcome: function () {
33-
let persistent = customerData.get('persistent'),
31+
var persistent = customerData.get('persistent'),
3432
welcomeElems;
3533

3634
if (persistent().fullname !== undefined) {

app/code/Magento/Persistent/view/frontend/web/js/view/customer-data-mixin.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,29 @@ define([
3939
}
4040

4141
return expiredSections;
42+
},
43+
44+
/**
45+
* @param {Object} settings
46+
* @constructor
47+
*/
48+
'Magento_Customer/js/customer-data': function (originFn,invalidateOptions) {
49+
let date;
50+
let storage = $.initNamespaceStorage('mage-cache-storage').localStorage;
51+
if (new Date($.localStorage.get('mage-cache-timeout')) < new Date()) {
52+
storage.removeAll();
53+
this.reload(['persistent','cart'],true);
54+
}
55+
date = new Date(Date.now() + parseInt(invalidateOptions.cookieLifeTime, 10) * 1000);
56+
$.localStorage.set('mage-cache-timeout', date);
57+
58+
if (!$.cookieStorage.isSet('mage-cache-sessid')) {
59+
$.cookieStorage.set('mage-cache-sessid', true);
60+
storage.removeAll();
61+
this.reload(['persistent','cart'],true);
62+
}
63+
originFn();
64+
4265
}
4366
};
4467

0 commit comments

Comments
 (0)