Commit Graph

2629 Commits

Author SHA1 Message Date
David Davis
894337fe10 Refresh Item.image on details page when missing (#1432)
* refresh Item.image on details page when missing

The home page reads Item.image from the database, which is only written
when the Item is first created. The details page fetches metadata live
from the provider, so the two can drift out of sync — most visibly when
a TV season has no thumbnail at creation time and never updates after.

Add a helper that opportunistically refreshes Item.image whenever a
details view has freshly-fetched metadata and the stored image is empty
or IMG_NONE. Apply it to the primary item in media_details and
season_details, and to tracked items surfaced through related sections
(e.g. the seasons listed on a TV details page).

Fixes #1365.

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>

* address PR review: bulk_update + select_related

- enrich_items_with_user_data now collects items needing an image
  refresh and issues a single Item.objects.bulk_update at the end
  instead of one save per item. Lookup building was extracted to
  _build_user_media_lookup to keep complexity in check.
- filter_media_prefetch now select_relateds 'item' so accessing
  current_instance.item in the details views doesn't trigger an
  extra query.

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>

---------

Co-authored-by: David Davis <86290+daviddavis@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2026-05-17 00:20:54 +02:00
marph91
a055a8a52e Add an auto-login option (#1363)
* add an auto-login option

* apply review suggestions

* add tests for auto-login middleware

* only auto-login with active users

* document the new env variable `YAMTRACK_AUTO_LOGIN_USERNAME`

* fix auto login middleware tests

---------

Co-authored-by: FuzzyGrim <stromed_chariotman@aleeas.com>
2026-05-16 23:58:26 +02:00
FuzzyGrim
bec01e943d fix safari media form date clearing #1403 2026-05-16 11:56:48 +02:00
FuzzyGrim
3d952d92ab fix goodreads import provider error warnings #1362 2026-05-15 18:31:56 +02:00
FuzzyGrim
669a06996e fix hardcover search query length cap 2026-05-15 18:30:40 +02:00
FuzzyGrim
5e48f0d37d pin pygments for docs code blocks 2026-05-15 15:26:59 +02:00
FuzzyGrim
2fdd707720 document local test command 2026-05-15 15:14:08 +02:00
FuzzyGrim
105eda65ce pass git committers token to docs build 2026-05-15 14:45:11 +02:00
FuzzyGrim
32ec33d3d6 update default hardcover api 2026-05-15 13:09:14 +02:00
FuzzyGrim
b67eb6fec0 add local development docs page 2026-05-15 12:40:11 +02:00
FuzzyGrim
a158d5b1b1 add versioned docs deployment 2026-05-15 12:40:05 +02:00
FuzzyGrim
3105332c28 docs: replace installation page with setup guide 2026-05-11 00:00:17 +02:00
FuzzyGrim
6505c734f6 docs: update documentation theme colors 2026-05-10 17:18:29 +02:00
FuzzyGrim
01063df479 sync docs home page from readme 2026-05-10 17:16:36 +02:00
Alessandro Burzio
78aee8e8ed feat(add-docs): Add documentation (#1208)
* feat(docs): Add documentation & first configs

* feat(docs): update build-docs workflow to trigger on feat/add-docs branch

* feat(docs): update build-docs workflow to trigger on main branch

* feat(docs): Fixes
- Correctly rename `social-auth` from `social-auto` page
- Fix links in documentation
- Fix inline code formatting

* feat(docs): Update documentation structure and add installation guide

* feat(docs): add .cache to .gitignore

* feat(docs): Fix branch name in docs deployment workflow

* feat(docs): Fix branch name in docs deployment workflow
2026-05-10 15:48:43 +02:00
FuzzyGrim
2fda336bb9 use anibridge mappings for anime webhook matching 2026-05-10 15:48:01 +02:00
FuzzyGrim
b1b233b7be improve private profile toggle ui 2026-05-09 20:56:45 +02:00
FuzzyGrim
02b5a797a7 harden media ownership checks 2026-05-09 16:15:14 +02:00
FuzzyGrim
724a66df22 validate public media list filters 2026-05-09 15:38:19 +02:00
largereptile
fe51e8fb4c Make Medialists optionally visible to the public (#1251)
* change /medialist to /username and change view to not require login and go by username in url not logged in user

* adjust sidebar to reference username and grid/list to not show edit icons when not viewing your own page

* update tests to account for changed medialist url

* private profile checkbox in account page and 404 on visit if profile is private and not logged in as the user

* added test to check profile 404s if private and is visible otherwise

* remove extra movie item creation as it was unnecessary

* clean up code according to code bot suggestions

* pre-commit run and fixes

* add migration file to support private field

* add correct params to medialist endpoint calls

* mid-commit improving functionality for logged in and anonymous users

* fix ui for anonymous and external viewers of a list

* use target_user wherever needed in media list components

* redirect if user doesn't have that media type enabled and error if there are no media types

* hide browse/add buttons if not the target user and there is nothing tracked and add redirect to signin button

* remove references to unused variable

* remove behaviour for anonymous users from base template

* use view instead of hardcoded url

* use blocks to override segments of sidebar instead of duplicating the whole sidebar code

* make profile private by default

* make profile private by default

* fix import ordering

---------

Co-authored-by: FuzzyGrim <stromed_chariotman@aleeas.com>
2026-05-09 14:15:54 +02:00
FuzzyGrim
3d01a88503 fix public url generation for oauth and webhooks #1023 2026-05-07 23:42:27 +02:00
FuzzyGrim
c17b5791e5 add .agents folder to ignore 2026-05-07 23:41:29 +02:00
FuzzyGrim
c1e32d71e1 remove redundant custom date preview 2026-05-04 23:58:50 +02:00
FuzzyGrim
8cb000d7c5 derive statistics date formats from user choices 2026-05-04 23:56:50 +02:00
Andreas Bro Kolstø
81afac88be Minor date format updates (#1205)
* Use user date format for episodes

* Add long EU date format option

* add date format choice migration

* fix date format migration order

---------

Co-authored-by: FuzzyGrim <stromed_chariotman@aleeas.com>
2026-05-03 13:14:46 +02:00
Matthias
c26ef0b7b9 Adding dropdown options for episode watch (#1202)
* Fixing added dropdown button

* Suggested security fixes and one style error

* Making dropdown more consistent

* remove unneeded classes

* replace episode watch time js with django values

* fix episode date picker focus

* fix integration test

---------

Co-authored-by: mcbaumwolle <mab7395@thi.de>
Co-authored-by: FuzzyGrim <stromed_chariotman@aleeas.com>
2026-05-01 16:03:19 +02:00
FuzzyGrim
6114a18118 Merge branch 'dev' of github.com:FuzzyGrim/Yamtrack into dev 2026-04-26 20:00:14 +02:00
Andreas Bro Kolstø
f812a0465e Make all metadata titles uppercase (#1204) 2026-04-26 17:07:55 +02:00
POGMAN
8ad8ce4903 feat: add SESSION_COOKIE_AGE environment variable (#1201)
* feat: add SESSION_COOKIE_AGE environment variable

* Update src/config/settings.py

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-04-26 16:45:10 +02:00
FuzzyGrim
c5078d3bfc fix episode spoiler blur for missing images 2026-04-25 16:23:24 +02:00
Cory Mills
d419e4b180 Add obfuscate unseen episodes user setting and functionality (#1067)
* Add obfuscate unseen episodes user setting and functionality

* Add click to reveal

* apply ruff formatting

* fix obfuscated episodes to blur images

---------

Co-authored-by: Cory Mills <contact@corymills.com>
Co-authored-by: FuzzyGrim <stromed_chariotman@aleeas.com>
2026-04-25 15:37:41 +02:00
Xila Cai
30c26d87cb Merge pull request #1347 from 66Bunz/fix/gunicorn-test-windows
fix(tests): Fix Gunicorn tests on Windows
2026-04-20 21:32:57 +02:00
FuzzyGrim
4e8428034c add workflow to publish api image from feat/add-api 2026-04-18 23:54:15 +02:00
FuzzyGrim
fb96b270c4 Make Steam overwrite update existing games in place 2026-04-18 23:12:21 +02:00
Benjamin Sanvoisin
69b904c3fc feat: add option to sync new items and update existing in import settings (#1044)
Co-authored-by: Xila Cai <34800654+FuzzyGrim@users.noreply.github.com>
2026-04-18 23:11:59 +02:00
FuzzyGrim
82a1f3010a fix untracked old seasons created from migration #1348 v0.25.2 2026-04-15 00:13:38 +02:00
Alessandro Burzio
29f948b236 fix(tests): Fix Gunicorn tests on Windows 2026-04-14 10:03:03 +02:00
dependabot[bot]
45e116ac75 build(deps): bump the minor-and-patch group across 1 directory with 6 updates (#1341)
---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
- dependency-name: django-allauth
  dependency-version: 65.15.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
- dependency-name: django-debug-toolbar
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-and-patch
- dependency-name: django-health-check
  dependency-version: 4.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
- dependency-name: pillow
  dependency-version: 12.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-and-patch
- dependency-name: ruff
  dependency-version: 0.15.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
v0.25.1
2026-04-13 22:41:41 +02:00
FuzzyGrim
4ec98e537e fix fakeredis implementation with requests-ratelimiter 2026-04-12 23:43:06 +02:00
FuzzyGrim
b500eca4c1 bump requests-ratelimiter from 0.8.0 to 0.9.3 2026-04-12 23:13:29 +02:00
dependabot[bot]
71e291f9e9 build(deps): bump django from 5.2.12 to 5.2.13 (#1331)
Bumps [django](https://github.com/django/django) from 5.2.12 to 5.2.13.
- [Commits](https://github.com/django/django/compare/5.2.12...5.2.13)

---
updated-dependencies:
- dependency-name: django
  dependency-version: 5.2.13
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-12 22:56:11 +02:00
FuzzyGrim
5c58d61413 bump fakeredis from 2.34.1 to 2.35.1 2026-04-12 22:55:59 +02:00
FuzzyGrim
bddcc3ebd2 fix safari date validation when changing media status #704 2026-04-12 22:49:10 +02:00
FuzzyGrim
17492329f8 fix locators 2026-04-12 16:19:41 +02:00
FuzzyGrim
2b6f9b6d09 improve spacing in home page 2026-04-12 16:14:42 +02:00
FuzzyGrim
2ab4139eb8 always show time in home cards 2026-04-12 14:54:16 +02:00
FuzzyGrim
de13d59d89 add planning media to home screen 2026-04-12 14:54:02 +02:00
FuzzyGrim
3eb0472ad1 improve webhook anime matching with tvdb episode lookups #1326 2026-04-11 17:41:24 +02:00
FuzzyGrim
1f48680ba8 show persistent messages after htmx progress updates 2026-04-11 12:33:53 +02:00
FuzzyGrim
f4b4c27513 include media context in persistent user messages 2026-04-10 23:44:11 +02:00