Dashboard: Telegram-Verknüpfung Button + Modal

- Session-Card-Menü: 'Telegram verknüpfen' zwischen Chat öffnen und Bearbeiten
- Button nur sichtbar wenn Telegram Bot konfiguriert (GET /api/telegram/status)
- Klick generiert 6-stelligen Link-Code (POST /api/telegram/link)
- Modal zeigt '/link CODE' mit Copy-Button, 5 Min gültig
- Neuer Backend-Endpoint GET /api/telegram/status (IsConfigured)
- API-Funktionen: apiTelegramStatus(), apiTelegramLink()
- Modal-CSS nach bestehendem .fe-overlay Pattern
This commit is contained in:
Meleki committed 2026-03-03 07:40:17 +01:00
1 parent 24d818f5d2
commit 7d237c866a
4 files changed
+161

No files matched your search

+19
View File
@@ -255,6 +255,25 @@ async function apiChangePassword(currentPassword, newPassword) {
return resp.json();
}
async function apiTelegramStatus() {
const resp = await fetch('/api/telegram/status');
if (!resp.ok) return { configured: false };
return resp.json();
}
async function apiTelegramLink(sessionId) {
const resp = await fetch('/api/telegram/link', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ sessionId })
});
if (!resp.ok) {
const err = await resp.json().catch(() => ({}));
throw new Error(err.error || 'Telegram-Link fehlgeschlagen');
}
return resp.json();
}
async function apiBackupDb() {
const resp = await fetch('/api/backup', { method: 'POST' });
if (!resp.ok) throw new Error('Backup fehlgeschlagen');