From ae3ef68f5ad8eceddb2db88b41021fadbf4cb919 Mon Sep 17 00:00:00 2001 From: secondl1ght <85003930+secondl1ght@users.noreply.github.com> Date: Tue, 13 Sep 2022 19:48:48 -0600 Subject: banner and avatar upload refactoring --- src/components/AppHeader.svelte | 6 ++-- src/lib/store.js | 3 ++ src/routes/[username]/settings/+page.svelte | 11 ++++++- src/routes/[username]/settings/_account.svelte | 42 ++++++++++++++++++-------- src/routes/invoice/[id]/+page.svelte | 2 +- 5 files changed, 46 insertions(+), 18 deletions(-) diff --git a/src/components/AppHeader.svelte b/src/components/AppHeader.svelte index 35e6f250..8b10f19e 100644 --- a/src/components/AppHeader.svelte +++ b/src/components/AppHeader.svelte @@ -1,6 +1,6 @@
@@ -94,7 +94,7 @@ {#if $user.profile}
diff --git a/src/lib/store.js b/src/lib/store.js index dcc81cda..1412c4e3 100644 --- a/src/lib/store.js +++ b/src/lib/store.js @@ -37,3 +37,6 @@ export const token = persistSession('token'); export const invoices = writable({}); export const newPayment = persistLocal('newPayment'); export const colorTheme = writable('from-primary to-gradient'); +export const tempProfileFiles = writable(); +export const avatarUpload = writable() +export const bannerUpload = writable() diff --git a/src/routes/[username]/settings/+page.svelte b/src/routes/[username]/settings/+page.svelte index 8c01dfbd..997d95d1 100644 --- a/src/routes/[username]/settings/+page.svelte +++ b/src/routes/[username]/settings/+page.svelte @@ -6,7 +6,8 @@ import { AppHeader, Icon } from '$comp'; import { t } from '$lib/translations'; import { failure, success, put } from '$lib/utils'; - import { user } from '$lib/store'; + import { user, avatarUpload, bannerUpload } from '$lib/store'; + import { upload } from '$lib/upload'; let tab = 'account'; @@ -19,8 +20,16 @@ $: ({ comp } = tabs.find((t) => t.name === tab)); let save = async () => { + try { await put('/user', $user); +if ($avatarUpload) { + + await upload($avatarUpload.file, $avatarUpload.type, $avatarUpload.progress); +} +if ($bannerUpload) { + await upload($bannerUpload.file, $bannerUpload.type, $bannerUpload.progress); +} success('Settings saved'); } catch (e) { failure('Something went wrong'); diff --git a/src/routes/[username]/settings/_account.svelte b/src/routes/[username]/settings/_account.svelte index 000ea519..c478a5dc 100644 --- a/src/routes/[username]/settings/_account.svelte +++ b/src/routes/[username]/settings/_account.svelte @@ -1,6 +1,6 @@