john-okeefe
69872b48b5
fix(handlers): wire all 37 fields in UpdateMediaItem, add cover upload support
UpdateMediaItem handler:
- Add form: tags to UpdateMediaItemRequest for dual JSON/multipart binding
- Add 8 missing fields (Language, Edition, PageCount, Genre, CopyrightYear,
GoodreadsID, OpenlibraryID, GoogleBooksID)
- Add CoverAction field (keep/upload/remove) with multipart cover handling
- Fetch existing record before update to preserve cover_image_path when
cover_action is "keep" (was clearing cover on every JSON save)
- Add saveCoverImage() method: validates image type, resolves library path,
saves as {file_path}.cover.jpg
- Add HX-Redirect response header for HTMX clients
HandleBulkUpdate:
- Copy all 37 fields from existingMedia (was missing GoogleBooksID + 14
new fields), preventing data loss on bulk metadata updates.
2026-05-10 11:52:04 -04:00
..
2026-02-14 21:38:08 -05:00
2026-04-27 21:31:19 -04:00
2026-02-14 21:38:08 -05:00
2026-05-08 20:27:01 -04:00
2026-03-06 14:00:28 -05:00
2026-03-06 14:00:28 -05:00
2026-02-01 16:11:54 -05:00
2026-02-14 21:38:00 -05:00
2026-04-21 21:15:59 -04:00
2026-03-06 14:00:28 -05:00
2026-04-20 20:43:04 -04:00
2026-04-21 21:15:34 -04:00
2026-03-06 14:00:28 -05:00
2026-03-02 13:11:39 -05:00
2026-05-08 20:27:01 -04:00
2026-02-14 21:38:00 -05:00
2026-04-21 21:15:59 -04:00
2026-04-21 21:15:59 -04:00
2026-03-06 14:00:28 -05:00
2026-02-14 21:38:08 -05:00
2026-04-25 21:16:29 -04:00
2026-04-25 21:16:29 -04:00
2026-02-14 21:38:08 -05:00
2026-04-21 21:15:59 -04:00
2026-03-06 14:00:28 -05:00
2026-03-28 23:54:39 -04:00
2026-05-10 11:52:04 -04:00
2026-04-21 21:15:59 -04:00
2026-04-21 21:31:00 -04:00
2026-04-25 21:16:29 -04:00
2026-04-27 21:31:19 -04:00
2026-04-23 20:39:50 -04:00
2026-04-21 21:15:59 -04:00
2026-02-14 21:38:08 -05:00
2026-04-21 21:15:59 -04:00
2026-04-21 21:15:59 -04:00
2026-02-13 20:04:47 -05:00
2026-05-08 20:27:40 -04:00
2026-05-08 20:27:01 -04:00
2026-02-14 21:38:08 -05:00
2026-04-29 20:47:11 -04:00
2026-03-06 14:00:28 -05:00
2026-04-27 21:30:53 -04:00
2026-03-06 14:00:28 -05:00