Django internet radio player
Find a file
marwin 4b47f6e67a
All checks were successful
Build and push Docker image / build (push) Successful in 15s
Test / test (push) Successful in 16s
Books: broken-book repair flow + simplify password change
When a book fails to open, a '!' button appears next to it in the list.
Clicking it prompts for the original file; the file is re-encrypted with
the current key and replaces the broken ciphertext on the server while
keeping all metadata, progress, highlights and bookmarks intact.

- Add POST /books/<pk>/replace-data/ endpoint (updates data only)
- Add _evictCachedBook() to clear IndexedDB cache for a single book
- Replace complex client-side re-encryption on password change with a
  simple confirm() warning that books will need to be re-uploaded

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 17:03:59 +02:00
.forgejo/workflows Show build time in bottom-right corner 2026-03-19 21:35:41 +01:00
accounts Accounts: fix password change key migration 2026-05-25 16:46:03 +02:00
books Books: broken-book repair flow + simplify password change 2026-05-25 17:03:59 +02:00
diora Centralize remaining magic numbers in settings.py 2026-04-04 21:10:14 +02:00
gpodder Fix gpodder: add update_urls to episode actions POST response 2026-03-28 19:08:46 +01:00
podcasts Centralize remaining magic numbers in settings.py 2026-04-04 21:10:14 +02:00
radio Centralize remaining magic numbers in settings.py 2026-04-04 21:10:14 +02:00
static Books: broken-book repair flow + simplify password change 2026-05-25 17:03:59 +02:00
templates Books: broken-book repair flow + simplify password change 2026-05-25 17:03:59 +02:00
.env.example Initial commit 2026-03-16 19:19:22 +01:00
.gitignore Remove CLAUDE.md from repo 2026-03-16 20:32:50 +01:00
docker-compose.yml Add podcast feature with feed management, Docker cron, and ebook reader assets 2026-03-19 13:39:59 +01:00
Dockerfile Show build time in bottom-right corner 2026-03-19 21:35:41 +01:00
Dockerfile.cron Fix cron container: switch dcron→cron, export env vars for cron jobs 2026-03-20 09:16:29 +01:00
manage.py Initial commit 2026-03-16 19:19:22 +01:00
requirements.txt Use gevent workers in gunicorn to fix SSE blocking 2026-03-19 19:15:01 +01:00