33 Commits

Author SHA1 Message Date
bitr8
452a2be4a9
fix(placeholders): trigger Plex scan and empty trash after cleanup (#332)
When placeholders are cleaned up because real content arrived, Plex
wasn't notified and ghost entries remained in the library. This adds:

- New emptyTrash() method to PlexAPI
- Fire-and-forget scan + empty trash after placeholder cleanup
- New autoEmptyTrash setting (default: true) with UI toggle
- Setting in Plex settings page with "advanced" badge

The scan runs in the background so it doesn't block the sync process.

Co-authored-by: bitr8 <bitr8@users.noreply.github.com>
2026-01-11 22:20:25 +13:00
Tom Wheeler
1c21a0e7b2 feat(sort-order): add release date and date added to plex as sort order options
also refactors overseerrSync to use Plex Lookup

fix #187, fix #203
2026-01-11 07:42:34 +13:00
Tom Wheeler
8073c3418c fix(plex-libraries): fixes non-movie/show libraries being discovered inconsistently
fix #255
2026-01-10 00:47:24 +13:00
Tom Wheeler
3aadbf0b44 feat(overlays): add Plex User Rating condition/variable
fix #254
2026-01-09 23:36:12 +13:00
Tom Wheeler
af701fc045 fix(placeholders): add check for plex poster, apply TMDB poster if not present 2026-01-04 14:05:18 +13:00
Tom Wheeler
691ae055f8 fix(plex libraries): improved error handling. remove dual update paths
re #255
2026-01-01 14:03:23 +13:00
Tom Wheeler
b2e645bc95 fix(overlays): add backend support for DoVi, add preset for HDR and DoVi
fix #183
2025-12-31 10:44:57 +13:00
Tom Wheeler
8c94464c17 fix(item order): fixes item ordering in plex collections
fix #225
2025-12-24 00:46:29 +13:00
Tom Wheeler
5b0023de68 fix(filtered hubs): adds recently released episodes filtered hub 2025-12-17 19:45:17 +13:00
akina5525
f91b7faa80
feat(sources): add actor and director collections with seperators (#198)
adds new source 'Plex Library' with Auto Director and Auto Actor collection sub-types, option to configure minimum items. utilises smart collections. adds new poster template. adds separators option.

---------

Co-authored-by: Tom Wheeler <thomas.wheeler.tcw@gmail.com>
2025-12-17 00:17:23 +13:00
Tom Wheeler
aaf0c50848 fix(filtered hubs): ensure existing filtered hubs get updated 2025-12-16 11:45:37 +13:00
Tom Wheeler
0551af0027 fix(minor fixes): add editionTitle, remove duplicate poster storage intialisation 2025-12-16 03:01:12 +13:00
Tom Wheeler
d8e8183741 fix(smart collections): adds max items for smart collections
exposes max items for smart collections, adds passthrough to smart collection URI
2025-12-06 17:02:06 +13:00
Tom Wheeler
f459595da4 feat(plex metadata): adds hashing system for posters, wallpapers, and themes
adds migrations for collection and item metadata tables. posters (items + collections), wallpapers,
and themes now have a hash calculated based on their variables. adds check before generating poster,
comparing metadata slug to stored slug from previous sync, if both hash and slug are equal, then
generation/upload is skipped. will significantly reduce bloat from repeated uploads, and reduces
poster overlays re-run time significantly (e.g. 45 mins to 18 mins)

re #144
2025-12-04 20:19:39 +13:00
Tom Wheeler
36606225e5 feat(background, theme, summary): adds background, theme, and summary to config form
background/wallpaper can now be added to the config form which will be uploaded to plex during sync,
alongside file theme (music) for collections, and text summary

fix #63
2025-12-04 13:22:43 +13:00
Tom Wheeler
6083a79f06 feat(tmdb franchise): adds auto TMDB franchise collections
automatically creates collections with 2 or more matching items, with TMDB collection poster option
and hide from library option

fix #129
2025-11-30 22:40:15 +13:00
Tom Wheeler
4d5c600627 fix(unwatched): unwatched collections now create smart collections based off labels
no longer creates a base collection, instead adds labels to items and creates smart collection with
label filter

fix #137, fix #134
2025-11-29 16:21:19 +13:00
Tom Wheeler
de8ed928fe feat(poster overlays): poster Overlays for individual items can now be created
Adds new feature for Poster Overlays, create overlays in the editor under Posters -> Poster Overlays
with variables and conditions, and select which libraries the overlays should apply to

fix #144, re #115, re #128
2025-11-27 14:14:04 +13:00
Tom Wheeler
9ef18b0a84 fix(coming soon): adds Recently Added collection option to exclude Coming Soon placeholders
A new collection sub-type 'Recently Added' has been added under Coming Soon. This will create a
smart collection that is identical to the default Plex recently added collection, but without the
coming soon placeholder items

re #115
2025-11-13 17:53:30 +13:00
Tom Wheeler
500a43552e refactor(plexapi): refactor plexapi.ts 2025-11-05 11:33:12 +13:00
Tom Wheeler
d1e7dc5c24 feat(sources): new Coming Soon Collection - Creates collection based of monitored/upcoming items
Adds new "Coming Soon" collection type, with options for Monitored in Sonarr/Radarr or Trakt
Anticipated. If a media file doesn't exist (unreleased TV Shows and Movies), a placeholder file will
be added (trailer if available). Poster overlays are added depending on its availability and
monitored status. Options for number of days to look ahead and number of days to keep item in
collection after release date. After this period the poster is reset. The placeholder file is
removed when an actual file gets added by Sonarr/Radarr.

fix #115
2025-11-03 18:41:42 +13:00
Tom Wheeler
9992d8dd44 fix(reordering): fixes plex home/recommended reordering for large libraries with randomise order set
fix #102
2025-10-20 17:55:12 +13:00
Tom Wheeler
bfa0eb8f5f fix(item ordering): improves sync time by selectively reordering items in collections 2025-10-15 18:32:51 +13:00
Tom Wheeler
9fd2da2566 chore(smart collections): removes collectionMode from backend
Initially collectionMode was used to hide the base collection in the library tab, but turns out Plex
propogates the settings from the base collection to the smart collection, and vice versa, so the
smart collection got hidden as well.
2025-10-06 08:46:11 +13:00
Tom Wheeler
5db47da2c6 feat(unwatched filter): adds unwatched option in config
add new option in config form to show unwatched items only, which creates a smart collection in plex
with the unwatched filter based off the normal collection

fix #51
2025-10-03 14:06:02 +13:00
Tom Wheeler
03fecf0ac2 fix(plex collections): collections are now correctly deleted when their config is removed
During label refresh if a collection was removed from agregarr its label was reset and would
therefore be treated as a pre-existing collection and not be deleted
2025-09-19 20:02:38 +12:00
Tom Wheeler
27092a546e chore(logs): reduced verbose logging 2025-09-19 12:09:05 +12:00
Tom Wheeler
88e5ef3fef fix(collections): episode based collections can now be created for trakt and imdb
fix #68
2025-09-18 14:46:53 +12:00
Tom Wheeler
b778430ab3 feat: add poster generationn and management
fix #45
2025-09-02 13:57:59 +12:00
Tom Wheeler
f3f84991aa fix: multiple minor fixes 2025-09-01 19:22:54 +12:00
Tom Wheeler
aa12466f7b chore: add debug for connections
re #5, re #10, re #16, re #33, re #36
2025-08-31 03:39:57 +12:00
Tom Wheeler
f135273ea7 fix: plex home/recommended ordering
fixes #28
2025-08-30 21:27:36 +12:00
Tom Wheeler
b1fd043554 feat: first release 2025-08-25 01:48:34 +12:00