Commit Graph

115 Commits

Author SHA1 Message Date
Lukáš Kucharczyk 0f5067d66d Prevent HTMX from messing up the initial state 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk a32d6c38ab Account for no sessions 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 4f67bd85c7 Enable hx-boost everywhere 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk cabcaebead Fix form not syncing due to HTMX 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 78a50739a8 Formatting 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 4a990bb6c6 Fix naive date 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk af85607ada isort 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 978714125b Improve time-related stuff
Add created_at to all models
Add modified_at to Session
Get rid of custom now() function
Make sure aware datetime is used everywhere
2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 51ba5cfa20 Improve time-related stuff
Add created_at to all models
Add modified_at to Session
Get rid of custom now() function
Make sure aware datetime is used everywhere
2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk a7dd0c5556 Only allow choosing purchases of selected edition 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 7b2dba7483 Name and related_purchase validation for non-games 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 250fa0ee9d Sort imports, remove cruft 2023-11-18 09:22:26 +01:00
Lukáš Kucharczyk 952961a3ad Fix wrong playrange ordering 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 1f9b3d5682 Improve how editions and purchases are displayed 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk c8e8ba8c8e Game View: order editions by year 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk d64ad125ff Improve and cleanup ConditionalElementHandler 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 410f20acea Improve purchase __str__ 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk d280fa3798 Disallow choosing non-game purchase as related purchase 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk c4fdefadb0 Order purchases by date on game view 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 7ba212e718 Add purchase types 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk f0822ff221 Make sure empty stats are 0 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 200819ceb0 Change stats years to 2000 up to current year 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 8a433616c4 Add stat for finished this year's games 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 809e8e2d7c Fix detecting manual durations 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 87f50cedd2 Fix ordering 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk cbf872d21f Also prefill year between game and edition 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk fa6ac21b42 Adding new games is easier 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 01ce582b74 Refactor, remove cruft 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 827279fb3d Add backlog decrease count 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk fa2b9b5c88 Fix sort names getting mangled 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 55ff3cd1a9 Pre-fill year when adding edition 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 68d1bfc2b9 UX improvements
* ignore English articles when sorting names
  * added a new sort_name field that gets automatically created
* automatically fill certain values in forms:
  * new game: name and sort name after typing
  * new edition: name and sort name when selecting game
  * new purchase: platform when selecting edition
2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 4112d593f6 Fix hardcoded year 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 553030c08e Order devices alphabetically on new session form 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 06a4319623 Use safe_division in more places 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk cb99d8b656 Fix potential division by zero 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk b8df870cca Add more stats
* Finished (count)
* Unfinished (count)
* Refunded (count)
2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 7781efd849 Add more stats
* All finished games
* All finished 2023 games
* All finished games that were purchased this year
* Total sessions
* Days played
2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 9fa95758bf stats: change overall stats table layout 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk b81989a352 Model changes
* More fields are now optional. This is to make it easier to add new items in bulk.
  * Game: Wikidata ID
  * Edition: Platform, Year
  * Purchase: Platform
  * Platform: Group
  * Session: Device
* New fields:
  * Game: Year Released
    * To record original year of release
    * Upon migration, this will be set to a year of any of the game's edition that has it set
  * Purchase: Date Finished
* Editions are now unique combination of name and platform
2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 5e6a5a4024 simplify playtime range display 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 1d0bafd72d Make some pages redirect back instead to session list 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk db9ac2edeb Add more stats 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 2076fe20d1 Extend stats range to 2018 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk ff30962ce9 Remove cruft 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk d06e284426 Group by game instead of purchase 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 1f36a32b3d Reorder imports in views.py 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk e87f985cb3 Remove hardcoded year 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 8ca62f32e3 Make navigation more compact 2023-11-18 09:22:25 +01:00
Lukáš Kucharczyk 5bc04c463a Add stats link, year selector 2023-11-18 09:22:25 +01:00