hectorqin and Claude Opus 5.5
32595c87a5
feat: file management is admin-only; members upload books behind a setting
...
- browse move/rename/mkdir/delete/metadata now require an administrator
(403 ADMIN_REQUIRED for members).
- Members may upload, but only add books: unsupported formats are skipped,
zip/cbz are stored as comic archives rather than unpacked, and overwrite is
refused. The new business setting library.memberUpload (default on) turns
member uploads off (403 UPLOAD_DISABLED); GET /library/upload reports
`allowed`.
- The library page shows 上传书籍 to members when uploads are allowed.
- Shelf tests read user_books for the owner only, now that a second user exists.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-30 02:03:45 +00:00
..
2026-09-23 12:42:14 +08:00
2026-09-20 17:51:12 +08:00
2026-10-05 13:23:27 +08:00
2026-09-20 18:40:09 +08:00
2026-09-27 18:22:51 +08:00
2026-09-24 16:03:35 +08:00
2026-10-30 02:03:45 +00:00
2026-09-28 13:39:47 +08:00
2026-09-20 18:40:09 +08:00
2026-09-24 07:47:32 +08:00
2026-09-24 07:47:32 +08:00
2026-09-24 07:47:32 +08:00
2026-09-16 14:07:25 +08:00
2026-09-20 17:51:12 +08:00
2026-09-16 14:31:15 +08:00
2026-09-24 07:47:32 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-28 17:53:30 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-10-20 04:41:03 +00:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-28 17:24:04 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-28 13:39:47 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-28 13:39:47 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-29 15:35:07 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-28 10:58:02 +08:00
2026-10-01 13:30:28 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-27 18:22:51 +08:00
2026-09-24 07:47:32 +08:00
2026-09-20 17:51:12 +08:00
2026-10-02 23:30:08 +08:00
2026-09-23 12:42:14 +08:00
2026-09-23 12:42:14 +08:00
2026-09-24 07:47:32 +08:00
2026-09-20 23:59:12 +08:00
2026-09-24 11:48:42 +08:00
2026-10-20 04:47:06 +00:00
2026-09-24 11:48:42 +08:00
2026-09-24 16:03:35 +08:00
2026-09-18 23:39:55 +08:00
2026-09-28 12:38:54 +08:00
2026-10-30 02:03:45 +00:00
2026-09-24 17:19:48 +08:00
2026-09-24 06:34:21 +08:00
2026-09-24 07:47:32 +08:00