diff --git a/backend/src/db.js b/backend/src/db.js index ca67c9f..202a012 100644 --- a/backend/src/db.js +++ b/backend/src/db.js @@ -572,21 +572,20 @@ if (!db.prepare("SELECT value FROM admin_settings WHERE key='tmdb_token'").get() db.prepare("INSERT INTO admin_settings (key,value) VALUES ('tmdb_token','')").run(); // Öffentliche Datei/Ordner-Freigabe Links -if (!db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='public_file_shares'").get()) { - db.exec(` - CREATE TABLE public_file_shares ( - id INTEGER PRIMARY KEY AUTOINCREMENT, - token TEXT NOT NULL UNIQUE, - user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, - file_id INTEGER REFERENCES files(id) ON DELETE CASCADE, - folder_id INTEGER REFERENCES folders(id) ON DELETE CASCADE, - label TEXT, - password_hash TEXT NOT NULL, - expires_at INTEGER NOT NULL, - created_at DATETIME DEFAULT CURRENT_TIMESTAMP, - download_count INTEGER NOT NULL DEFAULT 0 - ) - `); -} +// CREATE TABLE IF NOT EXISTS – sicher bei jedem Start +db.exec(` + CREATE TABLE IF NOT EXISTS public_file_shares ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + token TEXT NOT NULL UNIQUE, + user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, + file_id INTEGER REFERENCES files(id) ON DELETE CASCADE, + folder_id INTEGER REFERENCES folders(id) ON DELETE CASCADE, + label TEXT, + password_hash TEXT NOT NULL, + expires_at INTEGER NOT NULL, + created_at DATETIME DEFAULT CURRENT_TIMESTAMP, + download_count INTEGER NOT NULL DEFAULT 0 + ) +`); module.exports = db; diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx index 6a45399..b175b90 100644 --- a/frontend/src/App.jsx +++ b/frontend/src/App.jsx @@ -2969,10 +2969,10 @@ function PublicFileShare({ token }) { return (b/1024/1024).toFixed(1) + ' MB'; } - // Abgelaufen/ungültig → Redirect zu google.de + // Abgelaufen/ungültig → sofort zu google.de if (phase === 'error') { window.location.replace('https://www.google.de'); - return
Weiterleitung…
; + return null; } return ( diff --git a/frontend/src/tools/dateien.jsx b/frontend/src/tools/dateien.jsx index 4b55c96..8ff1309 100644 --- a/frontend/src/tools/dateien.jsx +++ b/frontend/src/tools/dateien.jsx @@ -732,7 +732,7 @@ export default function Dateien({ toast, mobile }) { )} {shareItem && {setShareItem(null);load();}} toast={toast}/>} - {publicShareItem && {setPublicShareItem(null);load();}} toast={toast}/>} + {publicShareItem && {setPublicShareItem(null);api('/tools/dateien/public-shares').then(d=>setPublicShares(d.shares||[])).catch(()=>{});}} toast={toast}/>} {/* ── Aktive öffentliche Links ──────────────────────────────────────── */} {publicShares.length > 0 && tab === 'own' && (