Media Favoriten: Dequittierung für Admin + Pushover-Info an User
This commit is contained in:
@@ -960,6 +960,31 @@ router.post('/favorites/:id/acknowledge', authenticate, requireAdmin, (req, res)
|
||||
} catch {}
|
||||
});
|
||||
|
||||
// POST /favorites/:id/unacknowledge – Admin: Quittierung rückgängig machen
|
||||
router.post('/favorites/:id/unacknowledge', authenticate, requireAdmin, (req, res) => {
|
||||
const fav = db.prepare('SELECT * FROM movie_favorites WHERE id=?').get(req.params.id);
|
||||
if (!fav) return res.status(404).json({ error: 'Nicht gefunden' });
|
||||
db.prepare('UPDATE movie_favorites SET acknowledged=0, acknowledged_at=NULL, user_notified=0 WHERE id=?').run(fav.id);
|
||||
res.json({ ok: true });
|
||||
// Pushover an den User — Quittierung zurückgezogen (fire & forget)
|
||||
try {
|
||||
const poCfg = db.prepare('SELECT user_key, app_token FROM pushover_settings WHERE user_id=?').get(fav.user_id);
|
||||
if (poCfg?.app_token && poCfg?.user_key) {
|
||||
fetch('https://api.pushover.net/1/messages.json', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({
|
||||
token: poCfg.app_token,
|
||||
user: poCfg.user_key,
|
||||
title: '↩ Favorit zurückgezogen',
|
||||
message: `Die Bestätigung für "${fav.title}" wurde vom Admin zurückgezogen.`,
|
||||
priority: 0,
|
||||
}),
|
||||
}).catch(() => {});
|
||||
}
|
||||
} catch {}
|
||||
});
|
||||
|
||||
// Admin: ALLE verfügbaren Watch-Provider für Deutschland live von TMDb holen
|
||||
// Admin: Streaming-Top10-Cache leeren (z.B. nach Logik-Änderungen)
|
||||
// Debug: rohe TMDb-Treffer pro Anbieter/Schwelle prüfen
|
||||
|
||||
Reference in New Issue
Block a user