media-rip/backend/app/routers
xpltd c3278fcac2 Privacy Mode: consolidated purge + auto-cleanup
Privacy Mode feature:
- Toggle in Admin > Settings enables automatic purge of download
  history, session logs, and files after configurable retention period
- Default retention: 24 hours when privacy mode is on
- Configurable 1-8760 hours via number input
- When enabled, starts purge scheduler (every 30 min) if not running
- When disabled, data persists indefinitely

Admin panel consolidation:
- Removed separate 'Purge' tab — manual purge moved to Settings
- Settings tab order: Privacy Mode > Manual Purge > Welcome Message >
  Output Formats > Change Password
- Toggle switch UI with accent color and smooth animation
- Retention input with left accent border and unit label

Backend:
- PurgeConfig: added privacy_mode (bool) and privacy_retention_hours
- Purge service: uses privacy_retention_hours when privacy mode active
- PUT /admin/settings: accepts privacy_mode + privacy_retention_hours
- GET /config/public: exposes privacy settings to frontend
- Runtime overrides passed to purge service via config._runtime_overrides
2026-03-19 05:55:08 -05:00
..
__init__.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
admin.py Privacy Mode: consolidated purge + auto-cleanup 2026-03-19 05:55:08 -05:00
cookies.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
downloads.py Auto format label with extension, preferences persistence, toast, full delete 2026-03-19 03:16:38 -05:00
files.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
formats.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
health.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
sse.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
system.py Privacy Mode: consolidated purge + auto-cleanup 2026-03-19 05:55:08 -05:00
themes.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00