diff --git a/src/stores/userStore.js b/src/stores/userStore.js index 359f550..499270e 100644 --- a/src/stores/userStore.js +++ b/src/stores/userStore.js @@ -107,7 +107,7 @@ export const useUserStore = defineStore( console.error(error) } } - + async function changeBirthday(birthdate) { try { await client.post( @@ -120,7 +120,7 @@ export const useUserStore = defineStore( console.error(error) } } - + async function changePhone(phoneNumber) { try { await client.post( @@ -133,7 +133,7 @@ export const useUserStore = defineStore( console.error(error) } } - + async function changeEmail(email) { try { await client.post( @@ -159,6 +159,21 @@ export const useUserStore = defineStore( console.error(error) } } + + async function changePortrait(selectedFile) { + try { + const formData = new FormData(); + formData.append('file', selectedFile) + + const response = await client.post( + `/api/users/portrait`, + formData) + + user.value.portraitUrl = `${response.data.blobUrl}?${Date.now()}` // the Date.now() is for cache-busting + } catch (error) { + console.error(error) + } + } return { user, @@ -173,6 +188,7 @@ export const useUserStore = defineStore( changePhone, changeEmail, changeAddress, + changePortrait, fetchCurrentUserProfile, fetchCurrentCreatorProfile } diff --git a/src/views/profile/account/AccountPage.vue b/src/views/profile/account/AccountPage.vue index f65f98e..de619f6 100644 --- a/src/views/profile/account/AccountPage.vue +++ b/src/views/profile/account/AccountPage.vue @@ -18,12 +18,12 @@ Un portrait vous permet de personnaliser votre profil Profile Image - + height="48px"/> + - +