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
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
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
2bc2d98f88
Fix purchase form logic
2026-01-27 19:30:07 +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
d53575ab48
Create game status selector template
2026-01-15 23:11:13 +01:00
lukas
5cac19be7b
Fix dropdown and formatting
2026-01-15 21:18:40 +01: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
f7e426e030
Make it easier to create a play event
2025-03-26 12:04:46 +01:00
lukas
b29e4edd72
Continue making use of improved duration handling
Django CI/CD / test (push) Successful in 1m5s
Django CI/CD / build-and-push (push) Successful in 2m22s
2025-03-25 23:38:04 +01:00
lukas
99f3540825
Improve duration handling for sessions and games
2025-03-25 22:46:01 +01:00
lukas
5e778bec30
Fix stats having hardcoded year
Django CI/CD / test (push) Successful in 1m20s
Django CI/CD / build-and-push (push) Successful in 2m35s
2025-03-25 15:56:20 +01:00
lukas
23b4a7a069
Make it possible to edit and delete status changes
Django CI/CD / test (push) Successful in 1m11s
Django CI/CD / build-and-push (push) Successful in 2m18s
2025-03-22 23:45:02 +01:00
lukas
89de85c00d
Introduce game status, playevents
Django CI/CD / test (push) Successful in 1m10s
Django CI/CD / build-and-push (push) Successful in 2m21s
2025-03-22 20:59:23 +01:00
lukas
0b274b4403
Calculate stats for last 7/14 days from manual as well
2025-03-17 08:30:57 +01:00
lukas
843eed64d6
Add search field to game list
Django CI/CD / test (push) Successful in 1m7s
Django CI/CD / build-and-push (push) Successful in 2m1s
2025-02-10 18:20:46 +01:00
lukas
50e7efcfae
Fix today's playtime stats
Django CI/CD / test (push) Successful in 57s
Django CI/CD / build-and-push (push) Successful in 2m0s
2025-02-09 09:00:28 +01:00
lukas
2d7342c0d5
Fix add/edit session screen
Django CI/CD / test (push) Successful in 1m5s
Django CI/CD / build-and-push (push) Successful in 2m14s
2025-02-08 17:54:03 +01:00
lukas
aba9bc994d
Add playtime stats to navbar
Django CI/CD / test (push) Successful in 1m1s
Django CI/CD / build-and-push (push) Successful in 2m16s
2025-02-08 13:46:56 +01:00
lukas
34148466c7
Improve forms
Django CI/CD / test (push) Successful in 1m17s
Django CI/CD / build-and-push (push) Successful in 2m10s
2025-02-04 20:09:25 +01:00
lukas
b22e185d47
Add status, mastered to Game
2025-02-04 20:09:05 +01:00
lukas
89d1bbdd9e
Fix games stats, show all played games instead of top 10
Django CI/CD / test (push) Successful in 56s
Django CI/CD / build-and-push (push) Successful in 2m29s
2025-02-01 10:02:23 +01:00
lukas
d213a3d35d
Improve purchase view
Django CI/CD / test (push) Successful in 58s
Django CI/CD / build-and-push (push) Successful in 2m16s
2025-01-30 17:54:42 +01:00
lukas
69d27958f3
Fix possible server error
2025-01-30 11:56:47 +01:00
lukas
6bd8271291
Remove Edition
Django CI/CD / test (push) Failing after 54s
Django CI/CD / build-and-push (push) Has been skipped
2025-01-29 22:05:06 +01:00
lukas
ba6028e43d
Add emulated property to sessions
Django CI/CD / test (push) Successful in 1m16s
Django CI/CD / build-and-push (push) Has been cancelled
2025-01-29 13:43:35 +01:00
lukas
c2853a3ecc
purchases can now refer to multiple editions
...
Django CI/CD / test (push) Successful in 1m3s
Django CI/CD / build-and-push (push) Successful in 2m36s
allows purchases to be for more than one game
2025-01-08 21:00:19 +01:00
lukas
13e607f9a7
Add error handling if no Sessions exist
Django CI/CD / test (push) Successful in 1m12s
Django CI/CD / build-and-push (push) Successful in 2m30s
2024-11-27 18:35:44 +01:00
lukas
fc0d8db8e8
consistently format prices everywhere
Django CI/CD / test (push) Successful in 1m7s
Django CI/CD / build-and-push (push) Successful in 2m10s
2024-11-15 22:53:07 +01:00
lukas
19676f8441
Implement converting prices ( #79 )
...
Django CI/CD / test (push) Successful in 1m17s
Django CI/CD / build-and-push (push) Successful in 2m10s
Reviewed-on: #79
2024-11-11 16:36:57 +00:00
lukas
f61cde180f
Pass search_string to search_field.html
Django CI/CD / test (push) Successful in 1m10s
Django CI/CD / build-and-push (push) Successful in 2m1s
2024-11-10 00:05:33 +01:00
lukas
2d3ea714c4
Extend session search
2024-11-09 23:52:09 +01:00
lukas
c6b1badf39
add session search
Django CI/CD / test (push) Successful in 1m10s
Django CI/CD / build-and-push (push) Successful in 2m16s
2024-11-09 21:34:01 +00:00
lukas
d9290373b0
also sort purchases by created_at
Django CI/CD / test (push) Successful in 59s
Django CI/CD / build-and-push (push) Successful in 2m24s
2024-10-18 09:50:10 +02:00
lukas
f8d621e710
fix stat dropdown
Django CI/CD / test (push) Successful in 1m16s
Django CI/CD / build-and-push (push) Successful in 2m7s
2024-10-16 18:31:12 +02:00
lukas
2ae81bb00f
update django-cotton to 1.2.1
2024-10-16 17:49:55 +02:00
lukas
c517d735c7
use unified dateformat more
2024-10-16 17:45:23 +02:00
lukas
19056f846e
view_game: display timezone-aware time for end timestamp
2024-10-16 17:45:23 +02:00
lukas
0759ad0804
make purchase price a float
2024-10-16 17:45:23 +02:00
lukas
228fc2bf5f
avoid exception on game overview when sessions are 0
2024-10-16 17:45:23 +02:00
lukas
fbd829f70e
order platforms by name
2024-10-16 17:45:23 +02:00
lukas
b74ccb6eaa
Remove extraneous statement
2024-10-16 17:45:23 +02:00
lukas
b0b1bb2d42
add icon field to platform, use everywhere
2024-10-16 17:45:23 +02:00
lukas
649351efde
implement platform icons
Django CI/CD / test (push) Successful in 1m1s
Django CI/CD / build-and-push (push) Has been skipped
2024-09-14 06:42:34 +02:00
lukas
698c8966c0
add purchase date to game view
Django CI/CD / test (push) Successful in 1m9s
Django CI/CD / build-and-push (push) Successful in 2m8s
2024-09-11 11:40:17 +02:00