Commit Graph

279 Commits

Author SHA1 Message Date
f5129c8ee7 fix: count distinct movies in user stats, not total reviews 2026-05-04 20:35:48 +02:00
7f431eca23 fix: remove timezone-broken future-date check from Review::new 2026-05-04 20:29:11 +02:00
c1c57a2a5d fix: remove redundant 'common' section from documentation 2026-05-04 20:28:06 +02:00
6c5825ea48 fix: update test assertion for new default page limit 2026-05-04 20:18:04 +02:00
4b3ccccf6f fix: set domain DEFAULT_LIMIT to 5 for pagination 2026-05-04 20:16:18 +02:00
1ad0684249 fix: remove email from top bar nav 2026-05-04 20:13:14 +02:00
12818d41a4 fix: lower default page limit to 5 2026-05-04 20:11:55 +02:00
ada1fc78a9 feat: add chrono dependency to Cargo.lock 2026-05-04 19:48:40 +02:00
94e3b12dca fix: add missing trait stubs to test mock impls 2026-05-04 19:23:56 +02:00
18b373f147 feat: add profile/feed/chart CSS styles 2026-05-04 19:17:39 +02:00
4dd1cd7fc5 fix: has_more overflow, magic constant, remove dead get_index handler 2026-05-04 19:15:42 +02:00
0b6ac2eb77 feat: wire activity feed, users list, and profile page handlers 2026-05-04 19:12:06 +02:00
6bd1ce8c4a fix: pagination underflow, remove |safe, move bar_height_pct to adapter 2026-05-04 19:09:28 +02:00
af945bcd54 fix: adjust domain accessors and template adapter for Askama compatibility 2026-05-04 19:03:48 +02:00
89dd2f3a47 feat: add activity feed, users, and profile HTML templates 2026-05-04 19:03:44 +02:00
77e1e04a44 fix: correct relative_time future guard, heatmap exact match, max clarity 2026-05-04 18:57:17 +02:00
b15b18409d feat: add Askama template structs for feed/users/profile 2026-05-04 18:55:18 +02:00
d95d65c943 fix: validate view param, document V1 history load 2026-05-04 18:53:26 +02:00
0d2ca3ab6c feat: add activity feed/users/profile use cases and port methods 2026-05-04 18:48:16 +02:00
e9b01eea2b fix: address code review issues in SQLite adapter 2026-05-04 18:46:31 +02:00
f5fe8aeaff feat: implement feed/stats/history/trends SQLite queries 2026-05-04 18:42:45 +02:00
bb1337c5b1 feat: impl UserRepository::list_with_stats 2026-05-04 18:40:58 +02:00
70c8676ae3 feat: add feed/stats SQLite row types 2026-05-04 18:32:59 +02:00
96635360a6 feat: add feed/profile/stats port methods to repositories 2026-05-04 18:30:01 +02:00
923d445431 fix: use UserId newtype in UserSummary instead of raw Uuid 2026-05-04 18:29:10 +02:00
5ada90a99f feat: add feed/profile domain models, extend DiaryFilter 2026-05-04 18:26:55 +02:00
02d8741ea5 feat: update color scheme to use primary variables for consistency in styling 2026-05-04 17:47:00 +02:00
2a347dbdc2 feat: enhance movie rating display with star icons and improved styling 2026-05-04 15:43:02 +02:00
41da6e1f56 feat: enhance styling and layout; add background image and improve UI elements 2026-05-04 15:39:15 +02:00
7ba4b39ced feat: add Dockerfile, .dockerignore, and README; remove common crate 2026-05-04 15:19:29 +02:00
7e7c1ee1f4 Refactor movie review logging and resolution strategies
- Introduced `MovieResolver` and associated strategies for resolving movie data based on external metadata ID, manual title, or manual entry.
- Updated `log_review` use case to utilize the new `MovieResolver` for fetching movie details.
- Simplified the `LogReviewData` structure and its conversion to `LogReviewCommand`.
- Enhanced error handling for date parsing in review forms and requests.
- Updated dependencies in `Cargo.toml` and `Cargo.lock` to include necessary crates for async operations.
- Added tests for new functionality in `movie_resolver.rs` to ensure correct behavior of resolution strategies.
2026-05-04 15:08:04 +02:00
7913b3e0e5 fix(tests): add missing trait methods to PanicRepo mocks 2026-05-04 14:37:48 +02:00
39ac5a0c50 fix(presentation): restore user_id in get_new_review_page for nav bar 2026-05-04 14:34:46 +02:00
36f3a9c44b fix(presentation): pass None user_id for non-diary page contexts 2026-05-04 14:32:30 +02:00
7c704f39b3 feat(template): add user_id to HtmlPageContext and delete button to diary 2026-05-04 14:31:12 +02:00
6d71da9f1e fix(presentation): use {id} syntax in delete review route 2026-05-04 14:29:24 +02:00
977a8ed8fd feat(presentation): add POST /reviews/:id/delete handler and route 2026-05-04 14:27:43 +02:00
f74a36a16f feat(presentation): add DELETE /api/reviews/:id handler and route 2026-05-04 14:24:48 +02:00
8d7700995d feat(sqlite): implement get_review_by_id, delete_review, delete_movie 2026-05-04 14:21:25 +02:00
de84bb7331 feat(application): add DeleteReviewCommand and delete_review use case 2026-05-04 14:17:13 +02:00
4c38724d93 feat(domain): add get_review_by_id to MovieRepository 2026-05-04 14:15:04 +02:00
c8cf2f2836 feat(gitignore): add .superpowers and docs/ to .gitignore 2026-05-04 14:00:56 +02:00
6e50b64245 feat(database): remove unused SQL queries and update Cargo dependencies 2026-05-04 14:00:33 +02:00
528a16a235 feat(css): add monospace minimal stylesheet 2026-05-04 13:38:57 +02:00
8ee54817d7 feat(routes): replace /diary with /, add login/logout/register/reviews/new routes 2026-05-04 13:38:19 +02:00
5c0be8b2ca feat(handlers): add HTML handlers for login, logout, register, new review, diary index 2026-05-04 13:38:16 +02:00
17be6f529a feat(dtos): add LoginForm, RegisterForm, ErrorQuery 2026-05-04 13:38:14 +02:00
7560ff8ac5 feat(extractors): add OptionalCookieUser and RequiredCookieUser 2026-05-04 13:34:31 +02:00
2a4f1585dc feat(templates): add base layout, login, register, new_review templates; update diary 2026-05-04 13:30:33 +02:00
37c7c77399 feat(domain): add find_by_id to UserRepository + SQLite impl 2026-05-04 13:28:20 +02:00