Skip to content
This repository was archived by the owner on Jan 26, 2024. It is now read-only.

Commit 4a8e6e3

Browse files
committed
Load newsletter preferences fix
1 parent cdc5b23 commit 4a8e6e3

File tree

4 files changed

+24
-13
lines changed

4 files changed

+24
-13
lines changed

core/components/blocks/MyAccount/MyNewsletter.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ export default {
3636
this.isEdited = false
3737
},
3838
getNewsletter () {
39-
this.user.isSubscribed = this.isSubscribed
39+
this.$store.dispatch('user/loadNewsletterPreferences').then((res) => {
40+
this.user.isSubscribed = res.isSubscribed
41+
})
4042
}
4143
},
4244
mixins: [subscribe, unsubscribe, isSubscribed]

core/modules/newsletter/features/isSubscribed.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
export const isSubscribed = {
1010
computed: {
1111
isSubscribed () {
12-
return this.$store.state.user.newsletter.isSubscribed ? this.$store.state.user.newsletter.isSubscribed : false
12+
return this.$store.state.user.newsletter ? (this.$store.state.user.newsletter.isSubscribed ? this.$store.state.user.newsletter.isSubscribed : false) : false
1313
}
1414
}
1515
}

core/store/modules/user/actions.ts

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,25 @@ const actions: ActionTree<UserState, RootState> = {
4141
Vue.prototype.$bus.$emit('session-after-started')
4242
})
4343

44+
context.dispatch('loadNewsletterPreferences')
45+
},
46+
loadNewsletterPreferences (context) {
4447
const newsletterStorage = Vue.prototype.$db.newsletterPreferencesCollection
45-
newsletterStorage.getItem('newsletter-preferences', (err, res) => {
46-
if (err) {
47-
console.error(err)
48-
return
49-
}
48+
return new Promise((resolve, reject) => {
49+
newsletterStorage.getItem('newsletter-preferences', (err, res) => {
50+
if (err) {
51+
console.error(err)
52+
reject(err)
53+
return
54+
}
5055

51-
if (res) {
52-
context.commit(types.USER_UPDATE_PREFERENCES, res)
53-
}
56+
if (res) {
57+
context.commit(types.USER_UPDATE_PREFERENCES, res)
58+
resolve(res)
59+
} else {
60+
resolve ({ isSubscribed: false })
61+
}
62+
})
5463
})
5564
},
5665
/**

core/store/modules/user/types/UserState.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ export default interface UserState {
22
token: string,
33
refreshToken: string,
44
groupToken: string,
5-
groupId: null,
5+
groupId: any,
66
current: {
77
email: string
88
} | null,
99
current_storecode: string,
1010
session_started: Date,
11-
newsletter: null,
12-
orders_history: null
11+
newsletter: any,
12+
orders_history: any
1313
}

0 commit comments

Comments
 (0)