feat: Implement account deletion feature with UI and API integration
Some checks failed
Deploy tt-tagebuch / deploy (push) Has been cancelled

This commit is contained in:
Torsten Schulz (local)
2026-05-18 14:12:14 +02:00
parent b9bbd45ae9
commit ecfd3bf851
13 changed files with 265 additions and 9 deletions

View File

@@ -198,6 +198,8 @@
<router-link to="/impressum" class="footer-link">Impressum</router-link>
<span class="footer-sep">·</span>
<router-link to="/datenschutz" class="footer-link">Datenschutzerklärung</router-link>
<span class="footer-sep">·</span>
<router-link to="/konto-loeschen" class="footer-link">Konto löschen</router-link>
</div>
</footer>
</div>

View File

@@ -36,6 +36,7 @@ const OrdersView = () => import('./views/OrdersView.vue');
const BillingView = () => import('./views/BillingView.vue');
const Impressum = () => import('./views/Impressum.vue');
const Datenschutz = () => import('./views/Datenschutz.vue');
const KontoLoeschen = () => import('./views/KontoLoeschen.vue');
const routes = [
{ path: '/register', name: 'register', component: Register, meta: { public: true } },
@@ -73,6 +74,7 @@ const routes = [
{ path: '/billing', name: 'billing', component: BillingView },
{ path: '/impressum', name: 'impressum', component: Impressum, meta: { public: true } },
{ path: '/datenschutz', name: 'datenschutz', component: Datenschutz, meta: { public: true } },
{ path: '/konto-loeschen', name: 'konto-loeschen', component: KontoLoeschen, meta: { public: true } },
];
const router = createRouter({

View File

@@ -71,6 +71,11 @@ const ROUTE_SEO = {
title: 'Datenschutzerklärung | Trainingstagebuch',
description: 'Datenschutzerklärung von Trainingstagebuch.',
robots: 'index,follow'
},
'/konto-loeschen': {
title: 'Konto und Daten löschen | Trainingstagebuch',
description: 'Informationen zur Löschung des Benutzerkontos und personenbezogener Daten im Trainingstagebuch.',
robots: 'index,follow'
}
};

View File

@@ -0,0 +1,69 @@
<template>
<div class="container">
<h1>Konto und Daten löschen</h1>
<p class="back-home"><router-link to="/">Zur Startseite</router-link></p>
<section>
<h2>Löschung in der Android-App</h2>
<p>
In der Android-App können Sie Ihr eigenes Benutzerkonto direkt löschen:
</p>
<ol>
<li>App öffnen und einloggen.</li>
<li>Zum Bereich <strong>Mehr</strong> wechseln.</li>
<li><strong>Eigenes Konto löschen</strong> auswählen.</li>
<li>Das App-Passwort eingeben und die Löschung bestätigen.</li>
</ol>
<p>
Dabei werden Ihr Benutzerkonto, Login-Sessions, Vereinszuordnungen und personenbezogene Integrationsdaten gelöscht.
Geteilte Vereinsdaten bleiben erhalten, soweit sie zur Vereinsverwaltung gehören oder andere Vereinsmitglieder betreffen.
</p>
</section>
<section>
<h2>Löschung per E-Mail anfordern</h2>
<p>
Falls Sie keinen Zugriff mehr auf die App haben, können Sie die Löschung per E-Mail anfordern:
<a href="mailto:tsschulz@tsschulz.de?subject=Konto%20und%20Daten%20l%C3%B6schen">tsschulz@tsschulz.de</a>
</p>
<p>
Bitte senden Sie die Anfrage von der E-Mail-Adresse, mit der Ihr Konto registriert ist.
Zur Vermeidung unberechtigter Löschungen können zusätzliche Nachweise erforderlich sein.
</p>
</section>
<section>
<h2>Weitere Informationen</h2>
<p>
Details zur Verarbeitung, Speicherdauer und zu Ihren Betroffenenrechten finden Sie in der
<router-link to="/datenschutz">Datenschutzerklärung</router-link>.
</p>
</section>
</div>
</template>
<script>
export default {
name: 'KontoLoeschen',
};
</script>
<style scoped>
.container {
max-width: 800px;
margin: 0 auto;
padding: 1.5rem;
}
h1 {
margin-bottom: 1rem;
}
section + section {
margin-top: 1rem;
}
.back-home {
margin: 0 0 1rem 0;
}
</style>