Commit Graph

37 Commits

Author SHA1 Message Date
lukas 5eee7176d4 add streak-releted basic functionality 2024-09-04 21:58:56 +02:00
lukas 98c9c1faee move time-related functionality out of views.general
Django CI/CD / test (push) Successful in 58s
Django CI/CD / build-and-push (push) Successful in 1m52s
2024-09-04 21:55:22 +02:00
lukas 4358708262 add links to add a new X to: game, edition, purchase, session, device, platform
Django CI/CD / test (push) Successful in 55s
Django CI/CD / build-and-push (push) Successful in 1m57s
2024-09-03 15:48:58 +02:00
lukas e067e65bce linkify game, edition, purchase, session references
Django CI/CD / test (push) Successful in 1m0s
Django CI/CD / build-and-push (push) Has been cancelled
also add link styles for links in a table row
2024-09-02 20:04:21 +02:00
lukas b8258e2937 replace slippers with django-cotton
Django CI/CD / test (push) Successful in 59s
Django CI/CD / build-and-push (push) Successful in 2m4s
main reason: slippers cannot pass request via context inside its
components, making it annoying to use template takes that take request.
more reasons: not actively worked on, no named slots, having to define
components in components.yaml + new components do not get registered
without restarting server
2024-09-02 17:43:41 +02:00
lukas 3099f02145 list editions 2024-08-11 20:21:27 +02:00
lukas d84b67c460 improve pagination 2024-08-09 11:47:10 +02:00
lukas 25deac6ea9 add more types 2024-08-08 21:19:43 +02:00
lukas 3de40ccad3 create purchase list without paging 2024-08-08 20:17:43 +02:00
lukas e19caf47bf Make game overview more appealing
Django CI/CD / build-and-push (push) Blocked by required conditions
Django CI/CD / test (push) Has been cancelled
2024-07-09 23:03:03 +02:00
lukas 72998ffc02 Fix incorrect font name 2024-07-09 20:38:03 +02:00
lukas ba44814474 Improve game links
Django CI/CD / test (push) Successful in 1m6s
Django CI/CD / build-and-push (push) Successful in 1m56s
2024-07-09 19:40:47 +02:00
lukas 44c70a5ee7 Formatting
Django CI/CD / test (push) Successful in 1m21s
Django CI/CD / build-and-push (push) Successful in 1m57s
2024-06-03 18:19:11 +02:00
lukas dc1a9d5c4f Make sure attribute chains are evaluated safely 2024-05-30 14:26:38 +02:00
lukas d02a60675f Render notes as Markdown
Django CI/CD / test (push) Failing after 1m5s
Django CI/CD / build-and-push (push) Has been skipped
2024-02-09 21:37:39 +01:00
lukas 9fccdfbff0 Make links colorful 2023-11-20 23:07:11 +01:00
lukas c44d8bf427 Improve time-related stuff
continuous-integration/drone/push Build is passing
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-15 19:14:09 +01:00
lukas 8783d1fc8e Name and related_purchase validation for non-games 2023-11-15 13:04:47 +01:00
lukas ae079e36ec Add purchase types 2023-11-14 19:27:00 +01:00
lukas 3b37f2c3f0 Fix edge case in format_duration
continuous-integration/drone/push Build is passing
Fixes #65

```python
def test_specific_precise_if_unncessary(self):
        delta = timedelta(hours=2, minutes=40)
        result = format_duration(delta, "%02.0H:%02.0m")
        self.assertEqual(result, "02:40")
```
This test fails by returning "03:40" instead. The problem is in the way `format_duration` handles fractional hours.
To fix it, we need to switch between using hours and fractional hours
depending on if minutes are present in the formatted string.
2023-11-10 20:07:41 +01:00
lukas c52cd822ae Use safe_division in more places 2023-11-09 10:06:14 +01:00
lukas a6cd7a3430 Do not format as float if no precision specified
continuous-integration/drone/push Build is passing
2023-10-13 16:58:12 +02:00
lukas 0e2113eefd Display durations in a consistent manner
Fixes #61
2023-10-13 16:32:12 +02:00
lukas 11b9c602de Improve game overview
- add counts for each section
- add average hours per session
2023-10-09 00:00:45 +02:00
lukas 22935721ca Remove unused chart functionality
continuous-integration/drone/push Build is passing
2023-10-08 21:08:03 +02:00
lukas ab41222f3c Switch fonts to WOFF2 2023-10-01 19:53:07 +02:00
lukas 29bf3b1946 Further improve session list
continuous-integration/drone/push Build is passing
2023-09-30 19:44:35 +02:00
lukas 2d5ad3182c Update CSS 2023-09-30 16:24:54 +02:00
lukas bc81a0ee8e Add hacky way to not reload page when starting/ending session
continuous-integration/drone/push Build is passing
Partially fixes #52
2023-09-20 18:54:54 +02:00
lukas fa4f1c4810 Improve forms, add helper buttons on add session form 2023-02-21 23:49:57 +01:00
lukas c3d4697470 Add wikidata ID and year for editions 2023-02-20 17:13:35 +01:00
lukas 4a6f4a2f9a Add icons for session filters
continuous-integration/drone/push Build is passing
2023-02-19 16:18:14 +01:00
lukas 938c82a395 Allow filtering by game, edition, purchase from the session list 2023-02-19 14:36:12 +01:00
lukas 33939f631c Fix form styling
continuous-integration/drone/push Build is passing
2023-02-18 22:36:26 +01:00
lukas 6b00a950ce Show markers on smaller graphs 2023-01-30 22:01:27 +01:00
lukas 18e8f93261 Additional fixes
continuous-integration/drone/push Build is passing
2023-01-20 15:06:42 +01:00
lukas 56e5dfaa03 Rename project, part 2 (#42)
continuous-integration/drone/push Build is failing
Reviewed-on: #42
2023-01-20 13:37:46 +00:00