Commit Graph

15 Commits

Author SHA1 Message Date
jbrechtel bbd9a455cd feat: wire book detail page with working shelf/status moves and note posting
- Add spine-move-book: move book between shelves by cutting/pasting headline
- Add spine-set-status: change TODO keyword (WANT/READING/READ/none)
- Add action=shelf and action=status cases to httpd/edit POST handler
- Wrap shelf/status selects in forms with onchange auto-submit to /edit
- Wire note composer as POST form to /edit with action=note
- Redirect all edit POSTs back to /book?id=X
- 7 new tests for move-book and set-status (error handling, property preservation)
2026-06-22 22:38:14 -04:00
jbrechtel ca03e87a46 refactor: redesign book detail page to match journal mockup styling
- Replace Pico CSS with index-style custom CSS variables
- Redesign layout: back breadcrumb, info table, shelf/status selects
- Update spine-book-model: add shelf_name, format_icon/label, tags_display,
  date display fields, rating display, status/shelf options
- Remove unused fields: meta, progress_label, formats array
- Update spine-book-model-test.el: 23 tests cover all new fields
- Add --text-danger CSS variable for remove button
2026-06-22 22:30:59 -04:00
jbrechtel df1a7aebc9 feat: add book detail view with spine-book-model, httpd/book handler, and title links
- Add spine--format-defs defconst shared between index and book models
- Add spine-book-model with status extraction, format selector, notes, recommendation
- Add templates/book.mustache (Pico CSS, journal-style layout)
- Add httpd/book handler serving the detail page
- Link book titles in index view to /book?id=X
- Add spine-book-model-test.el with 13 tests
2026-06-22 22:15:51 -04:00
jbrechtel de057de0bf feat: rewrite spine-index-model for shelf grouping 2026-06-21 22:54:48 -04:00
jbrechtel 6a961b8460 feat: remove spine-set-status, update edit functions for level-2 headlines 2026-06-21 22:52:49 -04:00
jbrechtel 609e168932 feat: adapt spine-add-book for shelf-based nesting 2026-06-21 22:52:00 -04:00
jbrechtel 858fc6c13b feat: add spine-shelves, adapt spine-books for shelf nesting 2026-06-21 22:51:01 -04:00
jbrechtel 653ee3442d feat: concise view sorts all books by LAST_MODIFIED, add property to sample data 2026-06-21 22:02:12 -04:00
jbrechtel c505a3c239 feat: add root-level minibuffer actions and update template 2026-06-21 11:56:05 -04:00
jbrechtel 719751cc84 feat: add minibuffer actions to spine-index-model for selected books 2026-06-21 11:47:50 -04:00
jbrechtel 8c8b004500 test: add failing tests for spine-set-status, spine-add-note, spine-set-rating 2026-06-21 11:42:28 -04:00
jbrechtel 439f9d3eed fix: use nil for current_filter when no filter active, fix test 2026-06-21 09:11:20 -04:00
jbrechtel d00732a8ca test: add failing tests for filtered spine-index-model 2026-06-21 08:46:55 -04:00
jbrechtel 9259c1139d test: add ERT tests for spine-add-book 2026-06-21 08:19:29 -04:00
jbrechtel cc74ca5cfa test: add ERT tests for spine-books, fix cl-return-from issue 2026-06-20 16:58:45 -04:00