From f74b717bc0e703154c82d62afaf5962a56d87a72 Mon Sep 17 00:00:00 2001 From: florianfederspiel Date: Sun, 5 Oct 2025 16:02:22 +0200 Subject: [PATCH] Added E-Mail Account Adding/Editing --- components/MainNav.vue | 5 +- .../settings/emailaccounts/[mode]/[[id]].vue | 137 ++++++++++++++++++ .../index.vue} | 38 +---- 3 files changed, 144 insertions(+), 36 deletions(-) create mode 100644 pages/settings/emailaccounts/[mode]/[[id]].vue rename pages/settings/{emailAccounts.vue => emailaccounts/index.vue} (69%) diff --git a/components/MainNav.vue b/components/MainNav.vue index 69c45b0..4639d9e 100644 --- a/components/MainNav.vue +++ b/components/MainNav.vue @@ -305,9 +305,8 @@ const links = computed(() => { icon: "i-heroicons-key" },*/{ label: "E-Mail Konten", - to: "/settings/emailAccounts", - icon: "i-heroicons-envelope", - disabled: true + to: "/settings/emailaccounts", + icon: "i-heroicons-envelope" },{ label: "Bankkonten", to: "/settings/banking", diff --git a/pages/settings/emailaccounts/[mode]/[[id]].vue b/pages/settings/emailaccounts/[mode]/[[id]].vue new file mode 100644 index 0000000..de51c82 --- /dev/null +++ b/pages/settings/emailaccounts/[mode]/[[id]].vue @@ -0,0 +1,137 @@ + + + + + \ No newline at end of file diff --git a/pages/settings/emailAccounts.vue b/pages/settings/emailaccounts/index.vue similarity index 69% rename from pages/settings/emailAccounts.vue rename to pages/settings/emailaccounts/index.vue index 1d68a7d..98db27a 100644 --- a/pages/settings/emailAccounts.vue +++ b/pages/settings/emailaccounts/index.vue @@ -9,28 +9,13 @@ const createEMailType = ref("imap") const showEmailAddressModal = ref(false) const items = ref([]) -const profiles = ref([]) const setupPage = async () => { - items.value = await useSupabaseSelect("emailAccounts","*") - profiles.value = await useSupabaseSelect("profiles","*") + items.value = await useNuxtApp().$api("/api/email/accounts") } const createAccount = async () => { showEmailAddressModal.value = false - - const {data,error} = await supabase.functions.invoke('emailengine_authenticate',{ - body: { - emailAddress: createEMailAddress.value, - accountType: createEMailType.value, - profile: profileStore.activeProfile.id - } - }) - - console.log(error) - console.log(data) - - window.open(data.url, '_blank').focus(); } setupPage() @@ -38,16 +23,8 @@ setupPage() const templateColumns = [ { - key: "emailAddress", - label: "Adresse:" - }, - { - key: "profiles", - label: "Bneutzer" - }, - { - key: "mailboxes", - label: "Ordner" + key: "email", + label: "E-Mail Adresse:" }, ] const selectedColumns = ref(templateColumns) @@ -98,7 +75,7 @@ const columns = computed(() => templateColumns.filter((column) => selectedColumn