lukas
656a96f55c
Fix A() component
...
Replaced single `url` parameter with explicit `url_name` (URL pattern name resolved via `reverse()`) and `href` (literal path). Fixes:
- Silent fallback (typos like `"ad_puchase"` silently became broken links) → now raises `NoReverseMatch` at render time
- `type(url) is str` gate → removed (implicit dual-mode eliminated entirely)
- Callable parameter (`url: Callable`) dead code → removed
- Implicit dual-mode (`url="name"` vs `url=reverse("name")`) → `url_name` vs `href` are now mutually exclusive params
- Inconsistent type annotation mixing `Callable` with string default → cleaned up
- Added `ValueError` when both `url_name` and `href` are provided
- Updated all 10 call sites across 6 view files and internal callers (`LinkedPurchase()`, `NameWithIcon()`)
2026-05-12 09:01:05 +02:00
lukas
8c3e819a5f
Consistent component return type
2026-05-12 08:43:39 +02:00
lukas
ff11e35115
Add component tests
2026-05-12 08:31:17 +02:00
lukas
ebef0bba87
Make randomid deterministic to improve caching
2026-05-12 08:27:11 +02:00
lukas
140f3d2bd6
Add caching tests
2026-05-12 08:21:48 +02:00
lukas
245a4f5b3e
Add component improvement doc
2026-05-12 08:10:46 +02:00
lukas
cd9f0b4111
Caching 1/?
2026-05-12 08:10:33 +02:00
lukas
f82c61ef1e
Add toast notification system
...
Django CI/CD / test (push) Successful in 35s
Django CI/CD / build-and-push (push) Successful in 54s
Add more toast types
2026-05-11 20:22:23 +02:00
lukas
4e3b0ddb08
Allow directly updating device in session list
Django CI/CD / test (push) Successful in 30s
Django CI/CD / build-and-push (push) Successful in 1m12s
2026-05-11 12:54:42 +02:00
lukas
a549050860
Make edit_session use the same template as add_session
Django CI/CD / test (push) Successful in 34s
Django CI/CD / build-and-push (push) Successful in 1m36s
2026-05-06 10:43:57 +02:00
lukas
596d1ccfe1
Fix refund confirmation not working
Django CI/CD / test (push) Successful in 27s
Django CI/CD / build-and-push (push) Successful in 1m34s
2026-03-05 20:34:58 +01:00
lukas
bb26fec5e3
Fix extra submit button when adding purchase
Django CI/CD / test (push) Successful in 35s
Django CI/CD / build-and-push (push) Successful in 1m13s
2026-02-25 08:04:48 +01:00
lukas
1ba7de0bb7
Use pointer cursor for search field button
Django CI/CD / test (push) Successful in 30s
Django CI/CD / build-and-push (push) Successful in 1m2s
2026-02-21 21:50:46 +01:00
lukas
3391fb72f2
Fix secondary submit buttons not working
2026-02-21 21:48:31 +01:00
lukas
0986e59fe7
Improve styles
Django CI/CD / test (push) Successful in 30s
Django CI/CD / build-and-push (push) Successful in 1m4s
2026-02-18 23:30:30 +01:00
lukas
46b1199863
Fix button not passing attributes
2026-02-18 23:30:12 +01:00
lukas
bc1092b0b3
Add prompt to set game to Abandoned upon refund
Django CI/CD / test (push) Successful in 36s
Django CI/CD / build-and-push (push) Successful in 1m55s
2026-02-17 22:14:36 +01:00
lukas
996c0107c9
Housekeeping
...
* Updated flowbite to 4.x
* Start revamping styles
* Remove unused GraphQL code
* Make some templates more robuts
2026-02-17 22:14:16 +01:00
lukas
277ecd1b55
Update to 1.6.1
Django CI/CD / test (push) Successful in 24s
Django CI/CD / build-and-push (push) Has been skipped
v1.6.1
2026-01-30 11:49:39 +01:00
lukas
4e3a5ef682
Make buttons use pointer cursor
2026-01-30 11:45:42 +01:00
lukas
233f63f18e
Update Django et al
Django CI/CD / test (push) Successful in 27s
Django CI/CD / build-and-push (push) Successful in 1m25s
2026-01-29 16:53:45 +01:00
lukas
016f307240
Upgrade to Tailwind v4
2026-01-29 13:17:04 +01:00
lukas
715acd6244
Finish poetry migration
2026-01-29 12:56:45 +01:00
lukas
0bc48d01a7
Fix search field icon misalignment
Django CI/CD / test (push) Successful in 16s
Django CI/CD / build-and-push (push) Successful in 1m0s
2026-01-29 12:17:40 +01:00
lukas
c5646d0451
Make sure Dockerfile is consistent with entrypoint.sh
Django CI/CD / test (push) Successful in 23s
Django CI/CD / build-and-push (push) Successful in 48s
2026-01-27 21:39:30 +01:00
lukas
710a0fc5bc
Update entrypoint.sh
Django CI/CD / test (push) Successful in 23s
Django CI/CD / build-and-push (push) Successful in 57s
2026-01-27 21:30:04 +01:00
lukas
1d0d16b4d4
Disable cache
Django CI/CD / test (push) Successful in 21s
Django CI/CD / build-and-push (push) Successful in 49s
2026-01-27 21:15:39 +01:00
lukas
6b89bab0a6
Switch from poetry to uv
Django CI/CD / test (push) Successful in 9m34s
Django CI/CD / build-and-push (push) Failing after 1m55s
2026-01-27 20:03:39 +01:00
lukas
2bc2d98f88
Fix purchase form logic
2026-01-27 19:30:07 +01:00
lukas
06096d471e
Improve dark/light mode
2026-01-27 19:28:05 +01:00
lukas
40869e25f3
Pre-calculate playevent time from last playevent
2026-01-27 18:39:09 +01:00
lukas
4f0ac21ba3
Fill up
2026-01-27 18:39:09 +01:00
lukas
3801949fdb
Keep calculate_price_per_game stub
Django CI/CD / test (push) Successful in 24s
Django CI/CD / build-and-push (push) Successful in 2m1s
2026-01-16 12:32:32 +01:00
lukas
f895dc1265
Prepare 1.6.0
Django CI/CD / test (push) Successful in 29s
Django CI/CD / build-and-push (push) Has been skipped
1.6.0
2026-01-15 23:15:03 +01:00
lukas
04601ca13d
Replace game selector on game view with component
2026-01-15 23:12:54 +01:00
lukas
d53575ab48
Create game status selector template
2026-01-15 23:11:13 +01:00
lukas
4e1f55855d
Update history when status changes
2026-01-15 22:43:17 +01:00
lukas
95af4ceed6
Use c-gamestatus everywhere
2026-01-15 22:40:29 +01:00
lukas
6bb89438df
CI: switch to checkout@v6
Django CI/CD / test (push) Successful in 27s
Django CI/CD / build-and-push (push) Successful in 2m32s
2026-01-15 21:19:18 +01:00
lukas
bd5525e57e
Add verbose names to selected fields
2026-01-15 21:18:58 +01:00
lukas
5cac19be7b
Fix dropdown and formatting
2026-01-15 21:18:40 +01:00
lukas
a6577a9e53
Remove redundant task
...
price_per_game is a generated column, which means it's update
automatically
2026-01-15 17:49:30 +01:00
lukas
243830a84a
Make removing games and associated purchases more robust
2026-01-15 17:49:03 +01:00
lukas
7032b8c7c7
Fix signals interfering with deleting a game with sessions
Django CI/CD / test (push) Successful in 2m29s
Django CI/CD / build-and-push (push) Failing after 1m31s
2025-12-30 13:24:09 +01:00
lukas
5cc1652002
Always set game status change timestamp to now instead of game's last updated_at
Django CI/CD / test (push) Successful in 1m16s
Django CI/CD / build-and-push (push) Successful in 2m15s
2025-06-07 20:28:14 +02:00
lukas
7cf2180192
Allow setting game to Finished when creating PlayEvent
Django CI/CD / test (push) Successful in 1m17s
Django CI/CD / build-and-push (push) Successful in 2m21s
2025-06-07 20:14:14 +02:00
lukas
ad0641f95b
Fix playtime stats per year
Django CI/CD / test (push) Successful in 58s
Django CI/CD / build-and-push (push) Successful in 2m39s
2025-04-17 16:15:38 +02:00
lukas
abdcfdfe64
Redirect to previous page after editing a session
Django CI/CD / test (push) Successful in 1m9s
Django CI/CD / build-and-push (push) Successful in 2m17s
2025-04-01 15:36:40 +02:00
lukas
31daf2efe0
Make game overview playthrough dropdown close when clicked outside
Django CI/CD / test (push) Successful in 1m6s
Django CI/CD / build-and-push (push) Successful in 2m17s
2025-03-28 13:43:46 +01:00
lukas
6d53fca910
Always return timedelta in update_game_playtime
Django CI/CD / test (push) Successful in 1m3s
Django CI/CD / build-and-push (push) Successful in 2m19s
2025-03-26 12:05:10 +01:00