From 4c635985a19fedf942a0b5e305d5b2f5ca4e0524 Mon Sep 17 00:00:00 2001 From: meisnate12 Date: Tue, 4 Oct 2022 15:24:01 -0400 Subject: [PATCH] [78] defaults update --- VERSION | 2 +- defaults/README.md | 73 +++------ defaults/award/bafta.yml | 13 +- defaults/award/cannes.yml | 9 + defaults/award/choice.yml | 1 + defaults/award/emmy.yml | 1 + defaults/award/golden.yml | 1 + defaults/award/oscars.yml | 1 + defaults/award/other_award.yml | 2 +- defaults/award/separator_award.yml | 31 ++++ defaults/both/actor.yml | 1 + defaults/both/audio_language.yml | 1 + defaults/both/content_rating_cs.yml | 1 + defaults/both/content_rating_uk.yml | 1 + defaults/both/genre.yml | 1 + defaults/both/resolution.yml | 1 + defaults/both/resolution_standards.yml | 1 + defaults/both/streaming.yml | 1 + defaults/both/studio.yml | 1 + defaults/both/year.yml | 1 + .../separator_chart.yml} | 2 +- defaults/movie/content_rating_us.yml | 1 + defaults/movie/country.yml | 3 +- defaults/movie/director.yml | 1 + defaults/movie/producer.yml | 2 + defaults/movie/seasonal.yml | 1 + defaults/movie/writer.yml | 2 + defaults/playlist.yml | 2 +- defaults/show/content_rating_us.yml | 1 + defaults/show/country.yml | 3 +- defaults/show/decade.yml | 1 + defaults/translations/CHANGELOG | 15 ++ defaults/translations/default.yml | 6 +- defaults/translations/fr.yml | 2 +- docs/defaults/files.md | 90 +++++----- docs/defaults/readme.md | 155 +++++++++--------- docs/defaults/separators.md | 30 +++- docs/defaults/variables.md | 25 +++ docs/metadata/details/metadata.md | 4 +- modules/meta.py | 17 +- 40 files changed, 312 insertions(+), 195 deletions(-) create mode 100644 defaults/award/separator_award.yml rename defaults/{award/separator.yml => chart/separator_chart.yml} (98%) create mode 100644 docs/defaults/variables.md diff --git a/VERSION b/VERSION index 54fd8923..dfabc077 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.17.3-develop77 +1.17.3-develop78 diff --git a/defaults/README.md b/defaults/README.md index 6976bd8b..27475f66 100644 --- a/defaults/README.md +++ b/defaults/README.md @@ -23,8 +23,8 @@ To run a defaults metadata file, you can simply add it to your `metadata_path` u libraries: Movies: metadata_path: - - pmm: chart/tmdb - - pmm: awards/bafta + - pmm: tmdb + - pmm: bafta ``` A full list of the available metadata files can be found [HERE](LINK NEEDED) @@ -38,8 +38,8 @@ libraries: Movies: overlay_path: - remove_overlays: false - - pmm: overlays/imdb_top_250 - - pmm: overlays/ratings + - pmm: ribbon + - pmm: ratings ``` A full list of the available overlay files can be found [HERE](LINK NEEDED) @@ -56,11 +56,11 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: overlays/resolution # 1 - - pmm: overlays/audio_codec # 2 - - pmm: overlays/mediastinger # 3 - - pmm: overlays/special_release # 4 - - pmm: overlays/ratings # 5,6,7 + - pmm: resolution # 1 + - pmm: audio_codec # 2 + - pmm: mediastinger # 3 + - pmm: special_release # 4 + - pmm: ratings # 5, 6, 7 template_variables: rating1: user # 5 as this is user and mass_user_rating_update: mdb_tomatoes rating1_image: rt_tomato # 5 as this is user and mass_user_rating_update: mdb_tomatoes @@ -78,24 +78,10 @@ libraries: rating3_font_size: 70 # 7 adjusted font size to fit rating horizontal_position: right # the set of ratings is on the right of the poster - - pmm: overlays/streaming # 8 - - pmm: overlays/video_format # 9 - - pmm: overlays/audio_language # 10 - - pmm: overlays/oscars # 11 - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 40 # Weight of 40 applies if more than 1 sash is applied in bottom right - - pmm: overlays/imdb_top_250 # 12 - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 30 # Weight of 30 applies if more than 1 sash is applied in bottom right - - pmm: overlays/rt_cert_fresh # 13 - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 20 # Weight of 20 applies if more than 1 sash is applied in bottom right - - pmm: overlays/mc_must_see # NOT SHOWN, however would apply the "MetaCritic Must See" sash in the bottom right - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 10 # Weight of 10 applies if more than 1 sash is applied in bottom right - - pmm: overlays/commonsense_selection # NOT SHOWN, however would apply the "Commonsense Selected Families" sash in the bottom right - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 5 # Weight of 5 applies if more than 1 sash is applied in bottom right + - pmm: streaming # 8 + - pmm: video_format # 9 + - pmm: audio_language # 10 + - pmm: ribbon # 11, 12 Bottom right sash is used by more than one overlay so a weight for priority can be applied operations: mass_user_rating_update: mdb_tomatoes # 5 This operation will update the user rating in plex with Rotten Tomatoes ratings information @@ -116,10 +102,10 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: overlays/resolution # 1 - - pmm: overlays/audio_codec # 2 - - pmm: overlays/mediastinger # 3 - - pmm: overlays/ratings # 4,5,6 + - pmm: resolution # 1 + - pmm: audio_codec # 2 + - pmm: mediastinger # 3 + - pmm: ratings # 4, 5, 6 template_variables: rating1: user # 4 as this is user and mass_user_rating_update: mdb_tomatoes rating1_image: rt_tomato # 4 as this is user and mass_user_rating_update: mdb_tomatoes @@ -137,20 +123,9 @@ libraries: rating3_font_size: 70 # 6 adjusted font size to fit rating horizontal_position: right # the set of ratings is on the right of the poster - - pmm: overlays/streaming # 7 - - pmm: overlays/video_format # 8 - - pmm: overlays/imdb_top_250 # 9 - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 30 # Weight of 30 applies if more than 1 sash is applied in bottom right - - pmm: overlays/rt_cert_fresh # 10 - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 20 # Weight of 20 applies if more than 1 sash is applied in bottom right - - pmm: overlays/mc_must_see # NOT SHOWN, however would apply the "MetaCritic Must See" sash in the bottom right - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 10 # Weight of 10 applies if more than 1 sash is applied in bottom right - - pmm: overlays/commonsense_selection # NOT SHOWN, however would apply the "Commonsense Selected Families" sash in the bottom right - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 5 # Weight of 5 applies if more than 1 sash is applied in bottom right + - pmm: overlays/streaming # 7 + - pmm: overlays/video_format # 8 + - pmm: ribbon # 10, 11 Bottom right sash is used by more than one overlay so a weight for priority can be applied operations: mass_user_rating_update: mdb_tomatoes # 4 This operation will update the user rating in plex with Rotten Tomatoes ratings information @@ -171,13 +146,13 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: overlays/resolution # 1 + - pmm: resolution # 1 template_variables: overlay_level: season - - pmm: overlays/audio_codec # 2 + - pmm: audio_codec # 2 template_variables: overlay_level: season - - pmm: overlays/video_format # 3 + - pmm: video_format # 3 template_variables: overlay_level: season ``` @@ -201,7 +176,7 @@ libraries: - pmm: overlays/audio_codec # 2 template_variables: overlay_level: episode - - pmm: overlays/ratings # 3,4 + - pmm: overlays/ratings # 3, 4 template_variables: rating1: critic # 3 as this is critic and mass_critic_rating_update: imdb diff --git a/defaults/award/bafta.yml b/defaults/award/bafta.yml index 7e7b3116..1617ddaa 100644 --- a/defaults/award/bafta.yml +++ b/defaults/award/bafta.yml @@ -1,8 +1,10 @@ -############################################################# -# BAFTA Collections -# Created by Yozora, Bullmoose20, & Sohjiro -# Credit to pjcob & maxwelldeux for the Trakt Lists -############################################################# +############################################################################## +# BAFTA Collections # +# Created by Yozora, Bullmoose20, & Sohjiro # +# Credit to pjcob & maxwelldeux for the Trakt Lists # +# EDITING THIS FILE MAY CAUSE PULLING NEW UPDATES TO FAIL # +# https://metamanager.wiki/en/latest/defaults/chart/bafta.html # +############################################################################## external_templates: pmm: templates @@ -34,6 +36,7 @@ dynamic_collections: data: starting: current_year-5 ending: current_year + title_format: BAFTA <> template: - use_year_collections - trakt diff --git a/defaults/award/cannes.yml b/defaults/award/cannes.yml index ab4f6093..0937101d 100644 --- a/defaults/award/cannes.yml +++ b/defaults/award/cannes.yml @@ -1,3 +1,11 @@ +############################################################################## +# Cannes Collections # +# Created by Yozora, Bullmoose20, & Sohjiro # +# Credit to pjcob & maxwelldeux for the Trakt Lists # +# https://metamanager.wiki/en/latest/defaults/chart/cannes.html # +############################################################################## + + ############################################################# # Cannes Collections # # Created by Yozora, Bullmoose20, & Sohjiro # @@ -60,6 +68,7 @@ dynamic_collections: data: starting: current_year-5 ending: current_year + title_format: Cannes <> template: - use_year_collections - trakt diff --git a/defaults/award/choice.yml b/defaults/award/choice.yml index c14e79e1..ec6e3c2d 100644 --- a/defaults/award/choice.yml +++ b/defaults/award/choice.yml @@ -53,6 +53,7 @@ dynamic_collections: data: starting: current_year-5 ending: current_year + title_format: Critics Choice Awards <> template: - use_year_collections - trakt diff --git a/defaults/award/emmy.yml b/defaults/award/emmy.yml index 8e30ba2f..5b5d67cc 100644 --- a/defaults/award/emmy.yml +++ b/defaults/award/emmy.yml @@ -50,6 +50,7 @@ dynamic_collections: data: starting: current_year-5 ending: current_year + title_format: Emmys <> template: - use_year_collections - imdb diff --git a/defaults/award/golden.yml b/defaults/award/golden.yml index 4601033b..41fe79a2 100644 --- a/defaults/award/golden.yml +++ b/defaults/award/golden.yml @@ -65,6 +65,7 @@ dynamic_collections: data: starting: current_year-5 ending: current_year + title_format: Golden Globe <> template: - use_year_collections - imdb diff --git a/defaults/award/oscars.yml b/defaults/award/oscars.yml index b8fecc15..f74049a9 100644 --- a/defaults/award/oscars.yml +++ b/defaults/award/oscars.yml @@ -71,6 +71,7 @@ dynamic_collections: data: starting: current_year-5 ending: current_year + title_format: Oscars Winners <> template: - use_year_collections - imdb diff --git a/defaults/award/other_award.yml b/defaults/award/other_award.yml index 36247985..60f087aa 100644 --- a/defaults/award/other_award.yml +++ b/defaults/award/other_award.yml @@ -69,7 +69,7 @@ collections: template: - name: shared allowed_libraries: movie - image: award/razzie/winner + image: award/razzies/winner - name: arr - name: custom - name: translation diff --git a/defaults/award/separator_award.yml b/defaults/award/separator_award.yml new file mode 100644 index 00000000..673b7660 --- /dev/null +++ b/defaults/award/separator_award.yml @@ -0,0 +1,31 @@ +############################################################# +# Awards Separator Collection # +# Created by Yozora, Bullmoose20, & Sohjiro # +############################################################# +# Call this from your config.yml (Movie or Show) # +# If nothing is specified these are the defaults # +# # +# metadata_path: # +# - git: PMM/award/separator # +# template_variables: # +# # Turn the separator collection on/off # +# use_separator: true # +# # Separator style (red, blue, green, gray, # +# purple, stb, orig) # +# sep_style: orig # +# # Sets the collection mode of the collection # +# collection_mode: # +# # Sets the value at the start of the sort title # +# collection_section: 16 # +############################################################# + +external_templates: + pmm: templates + template_variables: + collection_section: "01" + +collections: + Chart Collections: + template: + - name: separator + separator: chart diff --git a/defaults/both/actor.yml b/defaults/both/actor.yml index 3f27fd4e..f34db23e 100644 --- a/defaults/both/actor.yml +++ b/defaults/both/actor.yml @@ -47,6 +47,7 @@ dynamic_collections: data: depth: 5 limit: 25 + title_format: <> template: - smart_filter - translation diff --git a/defaults/both/audio_language.yml b/defaults/both/audio_language.yml index 688d3055..8bcf9e27 100644 --- a/defaults/both/audio_language.yml +++ b/defaults/both/audio_language.yml @@ -44,6 +44,7 @@ collections: dynamic_collections: Audio Language: type: audio_language + title_format: <> Audio other_name: Other Audio template: - smart_filter diff --git a/defaults/both/content_rating_cs.yml b/defaults/both/content_rating_cs.yml index d28b5aea..8ad35e4a 100644 --- a/defaults/both/content_rating_cs.yml +++ b/defaults/both/content_rating_cs.yml @@ -44,6 +44,7 @@ collections: dynamic_collections: CommonSense Content Rating: type: content_rating + title_format: <> <>s other_name: Other Ratings template: - smart_filter diff --git a/defaults/both/content_rating_uk.yml b/defaults/both/content_rating_uk.yml index 0dbda94f..69bd6491 100644 --- a/defaults/both/content_rating_uk.yml +++ b/defaults/both/content_rating_uk.yml @@ -44,6 +44,7 @@ collections: dynamic_collections: UK Content Rating: type: content_rating + title_format: <> <>s other_name: Other Ratings template: - smart_filter diff --git a/defaults/both/genre.yml b/defaults/both/genre.yml index fda072d2..f7ec8182 100644 --- a/defaults/both/genre.yml +++ b/defaults/both/genre.yml @@ -42,6 +42,7 @@ collections: dynamic_collections: Genre: type: genre + title_format: <> <>s template: - smart_filter - translation diff --git a/defaults/both/resolution.yml b/defaults/both/resolution.yml index da737198..e6044c1b 100644 --- a/defaults/both/resolution.yml +++ b/defaults/both/resolution.yml @@ -42,6 +42,7 @@ collections: dynamic_collections: Resolution: type: resolution + title_format: <> <>s template: - smart_filter - translation diff --git a/defaults/both/resolution_standards.yml b/defaults/both/resolution_standards.yml index c25daec2..ada96825 100644 --- a/defaults/both/resolution_standards.yml +++ b/defaults/both/resolution_standards.yml @@ -44,6 +44,7 @@ collections: dynamic_collections: Resolution Standards: type: resolution + title_format: <> <>s other_name: Other Resolutions template: - smart_filter diff --git a/defaults/both/streaming.yml b/defaults/both/streaming.yml index f928df8b..fdfda65b 100644 --- a/defaults/both/streaming.yml +++ b/defaults/both/streaming.yml @@ -102,6 +102,7 @@ dynamic_collections: paramount: Paramount+ peacock: Peacock amazon: Prime Video + title_format: <> <>s template: - mdb_smart - translation diff --git a/defaults/both/studio.yml b/defaults/both/studio.yml index 68e4c26d..14ac9eea 100644 --- a/defaults/both/studio.yml +++ b/defaults/both/studio.yml @@ -42,6 +42,7 @@ collections: dynamic_collections: Studio: type: studio + title_format: <> template: - smart_filter - translation diff --git a/defaults/both/year.yml b/defaults/both/year.yml index e660af06..c6e91fdb 100644 --- a/defaults/both/year.yml +++ b/defaults/both/year.yml @@ -50,6 +50,7 @@ dynamic_collections: data: starting: current_year-10 ending: current_year + title_format: Best of <> template: - smart_filter - translation diff --git a/defaults/award/separator.yml b/defaults/chart/separator_chart.yml similarity index 98% rename from defaults/award/separator.yml rename to defaults/chart/separator_chart.yml index 3b20db49..195cb96f 100644 --- a/defaults/award/separator.yml +++ b/defaults/chart/separator_chart.yml @@ -20,7 +20,7 @@ ############################################################# external_templates: - git: PMM/templates + pmm: templates template_variables: collection_section: 16 diff --git a/defaults/movie/content_rating_us.yml b/defaults/movie/content_rating_us.yml index f1d726ae..2954613a 100644 --- a/defaults/movie/content_rating_us.yml +++ b/defaults/movie/content_rating_us.yml @@ -42,6 +42,7 @@ collections: dynamic_collections: US Movie Content Ratings: type: content_rating + title_format: <> <>s other_name: Other Ratings template: - smart_filter diff --git a/defaults/movie/country.yml b/defaults/movie/country.yml index df9549b1..81de0c7f 100644 --- a/defaults/movie/country.yml +++ b/defaults/movie/country.yml @@ -43,8 +43,9 @@ collections: separator: country dynamic_collections: - Country Color: + Country: type: country + title_format: <> <>s other_name: Other Countries template: - smart_filter diff --git a/defaults/movie/director.yml b/defaults/movie/director.yml index 906c3c9c..1d169273 100644 --- a/defaults/movie/director.yml +++ b/defaults/movie/director.yml @@ -45,6 +45,7 @@ dynamic_collections: data: depth: 5 limit: 25 + title_format: <> (Director) template: - smart_filter - translation diff --git a/defaults/movie/producer.yml b/defaults/movie/producer.yml index 262d8bd7..f47b75bd 100644 --- a/defaults/movie/producer.yml +++ b/defaults/movie/producer.yml @@ -32,6 +32,7 @@ external_templates: translations: pmm: translations + collections: Producers Collections: template: @@ -41,6 +42,7 @@ collections: dynamic_collections: Top Producers: type: producer + title_format: <> (Producer) data: depth: 5 limit: 25 diff --git a/defaults/movie/seasonal.yml b/defaults/movie/seasonal.yml index 80e05635..4ad9158d 100644 --- a/defaults/movie/seasonal.yml +++ b/defaults/movie/seasonal.yml @@ -116,6 +116,7 @@ dynamic_collections: halloween: Halloween thanksgiving: Thanksgiving christmas: Christmas + title_format: <> <>s template: - holiday - translation diff --git a/defaults/movie/writer.yml b/defaults/movie/writer.yml index bbdb7db4..0bddd4a0 100644 --- a/defaults/movie/writer.yml +++ b/defaults/movie/writer.yml @@ -32,6 +32,7 @@ external_templates: translations: pmm: translations + collections: Writers Collections: template: @@ -44,6 +45,7 @@ dynamic_collections: data: depth: 5 limit: 25 + title_format: <> (Writer) template: - smart_filter - translation diff --git a/defaults/playlist.yml b/defaults/playlist.yml index 5e2c083c..7fb5bea6 100644 --- a/defaults/playlist.yml +++ b/defaults/playlist.yml @@ -55,7 +55,7 @@ ############################################################# external_templates: - git: PMM/templates + pmm: templates templates: playlist: diff --git a/defaults/show/content_rating_us.yml b/defaults/show/content_rating_us.yml index 1416eff9..e5ffd43b 100644 --- a/defaults/show/content_rating_us.yml +++ b/defaults/show/content_rating_us.yml @@ -42,6 +42,7 @@ collections: dynamic_collections: US Show Content Rating: type: content_rating + title_format: <> <>s other_name: Other Ratings template: - smart_filter diff --git a/defaults/show/country.yml b/defaults/show/country.yml index 6ff85d5f..29912511 100644 --- a/defaults/show/country.yml +++ b/defaults/show/country.yml @@ -43,8 +43,9 @@ collections: separator: country dynamic_collections: - TMDb Country Color: + Country: type: origin_country + title_format: <> <>s other_name: Other Countries template: - filter diff --git a/defaults/show/decade.yml b/defaults/show/decade.yml index ee7bb0ac..88d97baf 100644 --- a/defaults/show/decade.yml +++ b/defaults/show/decade.yml @@ -42,6 +42,7 @@ collections: dynamic_collections: Decade: type: decade + title_format: Best of <>s template: - smart_filter - translation diff --git a/defaults/translations/CHANGELOG b/defaults/translations/CHANGELOG index 4048239b..1e3c08a3 100644 --- a/defaults/translations/CHANGELOG +++ b/defaults/translations/CHANGELOG @@ -1,3 +1,7 @@ +1.18.0.1 -> 1.18.0.2 + +added `network_name` and `network_summary` + 1.18.0 -> 1.18.0.1 @@ -5,6 +9,17 @@ added library_type added key_names added comments +tmdb_air_summary: `activaly` -> `actively` +trakt_collected_summary: Added `.` +trakt_popular_summary: Added `.` +trakt_recommended_summary: Added `.` +trakt_trending_summary: Added `.` +trakt_watched_summary: Added `.` + +director_summary: `Directed` -> `directed` +producer_summary: `Produced` -> `produced` +writer_summary: `Written` -> `written` + imdb_popular_summary: Changed `<>` to `IMDb Popular` imdb_top_summary: Changed `<>` to `IMDb Top 250` imdb_lowest_summary: Changed `<>` to `IMDb Lowest Rated` diff --git a/defaults/translations/default.yml b/defaults/translations/default.yml index 3bfe77dc..a862d86e 100644 --- a/defaults/translations/default.yml +++ b/defaults/translations/default.yml @@ -1,4 +1,4 @@ -version: 1.18.0 +version: 1.18.0.2 library_type: # For Movie Libraries movie: movie @@ -221,6 +221,10 @@ translations: genre_name: <> <>s genre_summary: <>s that have the genre <>. + # example key_name: NBC + network_name: <> + network_summary: <>s broadcast on <>. + # example key_name: Robin Williams producer_name: <> (Producer) producer_summary: <>s produced by <>. diff --git a/defaults/translations/fr.yml b/defaults/translations/fr.yml index bbcdb08e..a2b7520b 100644 --- a/defaults/translations/fr.yml +++ b/defaults/translations/fr.yml @@ -1,4 +1,4 @@ -version: 1.18.0 +version: 1.18.0.1 library_type: # For Movie Libraries movie: film diff --git a/docs/defaults/files.md b/docs/defaults/files.md index e89bf847..0905844b 100644 --- a/docs/defaults/files.md +++ b/docs/defaults/files.md @@ -8,6 +8,33 @@ These files can generally be used on both Movie and Show library-types, or are p These collections are applied by calling the below paths into the `metadata_path:` section of your config.yml + +### Chart Collections + +| Source | config.yml entry | Example Collections Created | Works with Movies | Works with Shows | +|:------------|:--------------------|---------------------------------------------|:-----------------:|:----------------:| +| AniList | `anilist` | AniList Popular, AniList Season | ✅ | ✅ | +| Basic | `basic` | Newly Released, New Episodes | ✅ | ✅ | +| IMDb | `imdb` | IMDb Popular, IMDb Top 250 | ✅ | ✅ | +| MyAnimeList | `myanimelist` | MyAnimeList Popular, MyAnimeList Top Rated | ✅ | ✅ | +| Other | `other` | AniDB Popular, Common Sense Selection | ✅ | ✅ | +| Tautulli | `tautulli` | Plex Popular, Plex Watched | ✅ | ✅ | +| TMDb | `tmdb` | TMDb Popular, TMDb Airing Today | ✅ | ✅ | +| Trakt | `trakt` | Trakt Popular, Trakt Trending | ✅ | ✅ | + +### Award Collections + +| Award Show | config.yml entry | Example Collections Created | Works with Movies | Works with Shows | +|:---------------|:-----------------|----------------------------------|:-----------------:|:----------------:| +| BAFTA | `bafta` | BAFTA Best Films, BAFTA 2021 | ✅ | ❌ | +| Cannes | `cannes` | Cannes - Palme d'or, Cannes 2018 | ✅ | ❌ | +| Critics Choice | `choice` | Critics Choice Awards 2020 | ✅ | ✅ | +| Emmys | `emmy` | Emmys 2021 | ✅ | ✅ | +| Golden Globes | `golden` | Best Motion Pictures | ✅ | ✅ | +| Oscars | `oscars` | Best Picture Winners | ✅ | ✅ | +| Spirit | `spirit` | Independent Spirit Awards 2021 | ✅ | ❌ | +| Sundance | `sundance` | Sundance Grand Jury Winners | ✅ | ✅ | + ### General Collections | Theme | config.yml entry | Example Collections Created | Works with Movies | Works with Shows | @@ -32,63 +59,34 @@ These collections are applied by calling the below paths into the `metadata_path | Year | `year` | Best of 2010, Best of 2019 | ✅ | ✅ | | Writer | `writer` | James Cameron (Writer), Lilly Wachowski (Writer) | ✅ | ❌ | -### Award Show Collections - -| Award Show | config.yml entry | Example Collections Created | Works with Movies | Works with Shows | -|:---------------|:-----------------|----------------------------------|:-----------------:|:----------------:| -| BAFTA | `bafta` | BAFTA Best Films, BAFTA 2021 | ✅ | ❌ | -| Cannes | `cannes` | Cannes - Palme d'or, Cannes 2018 | ✅ | ❌ | -| Critics Choice | `choice` | Critics Choice Awards 2020 | ✅ | ✅ | -| Emmys | `emmy` | Emmys 2021 | ✅ | ✅ | -| Golden Globes | `golden` | Best Motion Pictures | ✅ | ✅ | -| Oscars | `oscars` | Best Picture Winners | ✅ | ✅ | -| Spirit | `spirit` | Independent Spirit Awards 2021 | ✅ | ❌ | -| Sundance | `sundance` | Sundance Grand Jury Winners | ✅ | ✅ | - - -### Chart Collections - -| Source | config.yml entry | Example Collections Created | Works with Movies | Works with Shows | -|:------------|:--------------------|---------------------------------------------|:-----------------:|:----------------:| -| AniList | `pmm: anilist` | AniList Popular, AniList Season | ✅ | ✅ | -| Basic | `pmm: basic` | Newly Released, New Episodes | ✅ | ✅ | -| IMDb | `pmm: imdb` | IMDb Popular, IMDb Top 250 | ✅ | ✅ | -| MyAnimeList | `pmm: myanimelist` | MyAnimeList Popular, MyAnimeList Top Rated | ✅ | ✅ | -| Other | `pmm: other` | AniDB Popular, Common Sense Selection | ✅ | ✅ | -| Tautulli | `pmm: tautulli` | Plex Popular, Plex Watched | ✅ | ✅ | -| TMDb | `pmm: tmdb` | TMDb Popular, TMDb Airing Today | ✅ | ✅ | -| Trakt | `pmm: trakt` | Trakt Popular, Trakt Trending | ✅ | ✅ | - - ## Overlays These files apply overlays and can generally be used on both Movie and Show library-types, and often works at the season and episode-level too. -It should be noted that when an overlay has ❌ for a season or episode, it normally means that whilst the overlay can technically be applied at the level, it wasn't designed for this purpose. For example, a show's season cannot have a resolution since it is not a video file, and an episode cannot have a commonsense age-rating since only Movies and Shows are rated by CommonSense. +It should be noted that when an overlay has ❗ for a season or episode, it normally means that whilst the overlay can technically be applied at the level, it wasn't designed for this purpose. For example, a show's season cannot have a resolution since it is not a video file, and an episode cannot have a commonsense age-rating since only Movies and Shows are rated by CommonSense. In the scenario where there is missing data such as age ratings for episodes, then generally the highest-level data available will be applied at the lower level (i.e. a Show's CommonSense age rating would apply to all episodes). -These overlays are applied by calling the below paths into the `overlay_path:` section of your config.yml +These overlays are applied by calling the below paths into the `overlay_path:` [section](https://metamanager.wiki/en/nightly/config/libraries.html#overlay-path) of your config.yml ### Overlay Files | Theme | path | Example Overlays | Movies | Shows | Seasons | Episodes | |:-----------------------|:---------------------------|------------------------------------------------|:--------:|:---------:|:---------:|:--------:| -| Audio Codec | `pmm: audio_codec` | Dolby Atmos logo, DTS logo | ✅ | ✅ | ✅ | ✅ | -| Audio Language | `pmm: audio_language` | French Audio, Korean Audio | ✅ | ✅ | ✅ | ✅ | -| CommonSense Age Rating | `pmm: commonsense` | "3+", "16+" | ✅ | ✅ | ❗ | ❗ | -| Direct Play | `pmm: direct_play` | "Direct Play Only" | ✅ | ❗ | ❗ | ✅ | -| Editions | `pmm: editions` | Director's Cut logo, IMAX logo | ✅ | ❌ | ❌ | ❌ | -| Episode Info | `pmm: episode_info` | "S01E01", "S02E09" | ❌ | ❌ | ❌ | ✅ | -| Mediastinger | `pmm: mediastinger` | Mediastinger logo | ✅ | ✅ | ❌ | ❌ | -| Ratings | `pmm: ratings` | IMDb Audience Rating, Metacritic Critic Rating | ✅ | ✅ | ❌ | ✅ | -| Resolution | `pmm: resolution` | 4K Dolby Vision logo, 720P logo | ✅ | ✅ | ❌ | ✅ | -| Ribbon | `pmm: ribbon` | IMDb Top 250 Ribbon, RT Fresh Ribbon | ✅ | ✅ | ❌ | ❌ | -| Runtimes | `pmm: runtimes` | "Runtime: 1h 30m" | ✅ | ✅ | ❌ | ❌ | -| Special Releases | `pmm: special_release` | "Director's Cut", "Criterion Collection" | ✅ | ✅ | ❗ | ❗ | -| Streaming | `pmm: streaming` | Netflix logo, Hulu logo | ✅ | ✅ | ❌ | ❌ | -| Versions | `pmm: versions` | Multiple Versions logo | ✅ | ✅ | ✅ | ✅ | -| Video Format | `pmm: video_format` | "REMUX", "HDTV" | ✅ | ❗ | ❗ | ✅ | - +| Audio Codec | `audio_codec` | Dolby Atmos logo, DTS logo | ✅ | ✅ | ✅ | ✅ | +| Audio Language | `audio_language` | French Audio, Korean Audio | ✅ | ✅ | ✅ | ✅ | +| CommonSense Age Rating | `commonsense` | "3+", "16+" | ✅ | ✅ | ❗ | ❗ | +| Direct Play | `direct_play` | "Direct Play Only" | ✅ | ❗ | ❗ | ✅ | +| Editions | `editions` | Director's Cut logo, IMAX logo | ✅ | ❌ | ❌ | ❌ | +| Episode Info | `episode_info` | "S01E01", "S02E09" | ❌ | ❌ | ❌ | ✅ | +| Mediastinger | `mediastinger` | Mediastinger logo | ✅ | ✅ | ❌ | ❌ | +| Ratings | `ratings` | IMDb Audience Rating, Metacritic Critic Rating | ✅ | ✅ | ❌ | ✅ | +| Resolution | `resolution` | 4K Dolby Vision logo, 720P logo | ✅ | ✅ | ❌ | ✅ | +| Ribbon | `ribbon` | IMDb Top 250 Ribbon, RT Fresh Ribbon | ✅ | ✅ | ❌ | ❌ | +| Runtimes | `runtimes` | "Runtime: 1h 30m" | ✅ | ✅ | ❌ | ❌ | +| Special Releases | `special_release` | "Director's Cut", "Criterion Collection" | ✅ | ✅ | ❗ | ❗ | +| Streaming | `streaming` | Netflix logo, Hulu logo | ✅ | ✅ | ❌ | ❌ | +| Versions | `versions` | Multiple Versions logo | ✅ | ✅ | ✅ | ✅ | +| Video Format | `video_format` | "REMUX", "HDTV" | ✅ | ❗ | ❗ | ✅ | ## Playlists These files apply playlists to the "Playlists" section of Plex and are applied by calling the below paths into the `playlist_files:` section of your config.yml diff --git a/docs/defaults/readme.md b/docs/defaults/readme.md index a1bd27e2..8acf0a4f 100644 --- a/docs/defaults/readme.md +++ b/docs/defaults/readme.md @@ -48,35 +48,32 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: resolution # 1 - - pmm: audio_codec # 2 - - pmm: mediastinger # 3 - - pmm: special_release # 4 - - pmm: ratings # 5,6,7 + - pmm: resolution # 1 + - pmm: audio_codec # 2 + - pmm: mediastinger # 3 + - pmm: special_release # 4 + - pmm: ratings # 5, 6, 7 template_variables: rating1: user # 5 as this is user and mass_user_rating_update: mdb_tomatoes rating1_image: rt_tomato # 5 as this is user and mass_user_rating_update: mdb_tomatoes - rating1_font: config/metadata/overlays/fonts/Adlib.ttf # 5 local font accessible to PMM + rating1_font: config/custom_fonts/Adlib.ttf # 5 local font accessible to PMM rating1_font_size: 63 # 5 adjusted font size to fit rating rating2: critic # 6 as this is critic and mass_critic_rating_update: imdb rating2_image: imdb # 6 as this is critic and mass_critic_rating_update: imdb - rating2_font: config/metadata/overlays/fonts/Impact.ttf # 6 local font accessible to PMM + rating2_font: config/custom_fonts/Impact.ttf # 6 local font accessible to PMM rating2_font_size: 70 # 6 adjusted font size to fit rating rating3: audience # 7 as this is audience and mass_audience_rating_update: tmdb rating3_image: tmdb # 7 as this is audience and mass_audience_rating_update: tmdb - rating3_font: config/metadata/overlays/fonts/Avenir_95_Black.ttf # 7 local font accessible to PMM + rating3_font: config/custom_fonts/Avenir_95_Black.ttf # 7 local font accessible to PMM rating3_font_size: 70 # 7 adjusted font size to fit rating horizontal_position: right # the set of ratings is on the right of the poster - - pmm: streaming # 8 - - pmm: video_format # 9 - - pmm: audio_language # 10 - - pmm: oscars # 11 - template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied - weight: 40 # Weight of 40 applies if more than 1 sash is applied in bottom right - - pmm: ribbon # 12 & #13 + - pmm: streaming # 8 + - pmm: video_format # 9 + - pmm: audio_language # 10 + - pmm: ribbon # 11, 12 Bottom right sash is used by more than one overlay so a weight for priority can be applied operations: mass_user_rating_update: mdb_tomatoes # 5 This operation will update the user rating in plex with Rotten Tomatoes ratings information mass_critic_rating_update: imdb # 6 This operation will update the critic rating in plex with IMDb ratings information @@ -96,30 +93,30 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: resolution # 1 - - pmm: audio_codec # 2 - - pmm: mediastinger # 3 - - pmm: ratings # 4,5,6 + - pmm: resolution # 1 + - pmm: audio_codec # 2 + - pmm: mediastinger # 3 + - pmm: ratings # 4, 5, 6 template_variables: rating1: user # 4 as this is user and mass_user_rating_update: mdb_tomatoes rating1_image: rt_tomato # 4 as this is user and mass_user_rating_update: mdb_tomatoes - rating1_font: config/metadata/overlays/fonts/Adlib.ttf # 4 local font accessible to PMM + rating1_font: config/custom_fonts/Adlib.ttf # 4 local font accessible to PMM rating1_font_size: 63 # 4 adjusted font size to fit rating rating2: critic # 5 as this is critic and mass_critic_rating_update: imdb rating2_image: imdb # 5 as this is critic and mass_critic_rating_update: imdb - rating2_font: config/metadata/overlays/fonts/Impact.ttf # 5 local font accessible to PMM + rating2_font: config/custom_fonts/Impact.ttf # 5 local font accessible to PMM rating2_font_size: 70 # 5 adjusted font size to fit rating rating3: audience # 6 as this is audience and mass_audience_rating_update: tmdb rating3_image: tmdb # 6 as this is audience and mass_audience_rating_update: tmdb - rating3_font: config/metadata/overlays/fonts/Avenir_95_Black.ttf # 6 local font accessible to PMM + rating3_font: config/custom_fonts/Avenir_95_Black.ttf # 6 local font accessible to PMM rating3_font_size: 70 # 6 adjusted font size to fit rating horizontal_position: right # the set of ratings is on the right of the poster - - pmm: streaming # 7 - - pmm: video_format # 8 - - pmm: ribbon # 9, #10 + - pmm: streaming # 7 + - pmm: video_format # 8 + - pmm: ribbon # 10, 11 Bottom right sash is used by more than one overlay so a weight for priority can be applied operations: mass_user_rating_update: mdb_tomatoes # 4 This operation will update the user rating in plex with Rotten Tomatoes ratings information mass_critic_rating_update: imdb # 5 This operation will update the critic rating in plex with IMDb ratings information @@ -139,13 +136,13 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: resolution # 1 + - pmm: resolution # 1 template_variables: overlay_level: season - - pmm: audio_codec # 2 + - pmm: audio_codec # 2 template_variables: overlay_level: season - - pmm: video_format # 3 + - pmm: video_format # 3 template_variables: overlay_level: season ``` @@ -163,34 +160,34 @@ libraries: overlay_path: - remove_overlays: false - reapply_overlay: true - - pmm: resolution # 1 + - pmm: resolution # 1 template_variables: overlay_level: episode - - pmm: audio_codec # 2 + - pmm: audio_codec # 2 template_variables: overlay_level: episode - - pmm: ratings # 3,4 + - pmm: ratings # 3, 4 template_variables: rating1: critic # 3 as this is critic and mass_critic_rating_update: imdb rating1_image: imdb # 3 as this is critic and mass_critic_rating_update: imdb - rating1_font: config/metadata/overlays/fonts/Impact.ttf # 3 local font accessible to PMM + rating1_font: config/custom_fonts/Impact.ttf # 3 local font accessible to PMM rating1_font_size: 70 # 3 adjusted font size to fit rating rating2: audience # 4 as this is audience and mass_audience_rating_update: tmdb rating2_image: tmdb # 4 as this is audience and mass_audience_rating_update: tmdb - rating2_font: config/metadata/overlays/fonts/Avenir_95_Black.ttf # 4 local font accessible to PMM + rating2_font: config/custom_fonts/Avenir_95_Black.ttf # 4 local font accessible to PMM rating2_font_size: 70 # 4 adjusted font size to fit rating horizontal_position: right # the set of ratings is on the right of the poster overlay_level: episode - - pmm: video_format # 5 + - pmm: video_format # 5 template_variables: overlay_level: episode - - pmm: episode_info # 6 + - pmm: episode_info # 6 template_variables: overlay_level: episode - - pmm: runtimes # 7 + - pmm: runtimes # 7 template_variables: overlay_level: episode @@ -211,59 +208,55 @@ By default, most metadata files use separators to denote different sections of c -* Can be turned off by [customizing your config](#customizing-configs) +* Can be turned off by [customizing your config](#customizing-configs) ## Collection Section Order Almost every default metadata file has a `collection_section` attribute. These attributes determine the order of the various sections and can be set by [customizing your config](#customizing-configs). -For example: `collection_section:01` translates to `sort_title: "!<><
><>>><>"` and so for `genre.yml` if you have a `Fantasy` collection, plex is going to show `!06_Fantasy`
+For example: `collection_section: 01` translates to `sort_title: "!<><
><>>><>"` and so for `genre.yml` if you have a `Fantasy` collection, plex is going to show `!06_Fantasy`
 
 This is the default PMM collection ordering:
 
-
-| Collection	                       | Order                  |
-|:----------------------------------|:-----------------------|
-| `seasonal.yml`                    | collection_section: 00 |
-| `anilist.yml`                     | collection_section: 01 |
-| `basic.yml`                       | collection_section: 01 |
-| `imdb.yml`                        | collection_section: 01 |
-| `myanimelist.yml`                 | collection_section: 01 |
-| `other_chart.yml`                 | collection_section: 01 |
-| `tautulli.yml`                    | collection_section: 01 |
-| `tmdb.yml`                        | collection_section: 01 |
-| `trakt.yml`                       | collection_section: 01 |
-| `universe.yml`                    | collection_section: 02 |
-| `streaming.yml`                   | collection_section: 03 |
-| `network.yml`                     | collection_section: 04 |
-| `genre.yml`                       | collection_section: 06 |
-| `studio.yml`                      | collection_section: 07 |
-| `country.yml`                     | collection_section: 09 |
-| `country.yml`                     | collection_section: 09 |
-| `audio_language.yml`              | collection_section: 10 |
-| `subtitle_language.yml`           | collection_section: 11 |
-| `decade.yml`                      | collection_section: 12 |
-| `decade.yml`                      | collection_section: 12 |
-| `year.yml`                        | collection_section: 13 |
-| `content_rating_uk.yml`           | collection_section: 14 |
-| `content_rating_us.yml`           | collection_section: 14 |
-| `content_rating_us.yml`           | collection_section: 14 |
-| `resolution.yml`                  | collection_section: 15 |
-| `resolution_standards.yml`        | collection_section: 15 |
-| `bafta.yml`                       | collection_section: 16 |
-| `cannes.yml`                      | collection_section: 16 |
-| `choice.yml`                      | collection_section: 16 |
-| `emmy.yml`                        | collection_section: 16 |
-| `golden.yml`                      | collection_section: 16 |
-| `oscars.yml`                      | collection_section: 16 |
-| `other_awart.yml`                 | collection_section: 16 |
-| `separator.yml`                   | collection_section: 16 |
-| `spirit.yml`                      | collection_section: 16 |
-| `sundance.yml`                    | collection_section: 16 |
-| `pmm: actor.yml`                   | collection_section: 17 |
-| `director.yml`                    | collection_section: 18 |
-| `producer.yml`                    | collection_section: 19 |
-| `writer.yml`                      | collection_section: 20 |
+| Collection                        | Collection Section |
+|:----------------------------------|:-------------------|
+| `seasonal.yml`                    |        `00`        |
+| `anilist.yml`                     |        `01`        |
+| `basic.yml`                       |        `01`        |
+| `imdb.yml`                        |        `01`        |
+| `myanimelist.yml`                 |        `01`        |
+| `other_chart.yml`                 |        `01`        |
+| `tautulli.yml`                    |        `01`        |
+| `tmdb.yml`                        |        `01`        |
+| `trakt.yml`                       |        `01`        |
+| `universe.yml`                    |        `02`        |
+| `streaming.yml`                   |        `03`        |
+| `network.yml`                     |        `04`        |
+| `genre.yml`                       |        `06`        |
+| `studio.yml`                      |        `07`        |
+| `country.yml`                     |        `09`        |
+| `audio_language.yml`              |        `10`        |
+| `subtitle_language.yml`           |        `11`        |
+| `decade.yml`                      |        `12`        |
+| `year.yml`                        |        `13`        |
+| `content_rating_us.yml`           |        `14`        |
+| `content_rating_uk.yml`           |        `14`        |
+| `content_rating_cs.yml`           |        `14`        |
+| `resolution.yml`                  |        `15`        |
+| `resolution_standards.yml`        |        `15`        |
+| `bafta.yml`                       |        `16`        |
+| `cannes.yml`                      |        `16`        |
+| `choice.yml`                      |        `16`        |
+| `emmy.yml`                        |        `16`        |
+| `golden.yml`                      |        `16`        |
+| `oscars.yml`                      |        `16`        |
+| `other_award.yml`                 |        `16`        |  
+| `spirit.yml`                      |        `16`        |
+| `sundance.yml`                    |        `16`        |
+| `actor.yml`                       |        `17`        |
+| `director.yml`                    |        `18`        |
+| `producer.yml`                    |        `19`        |
+| `writer.yml`                      |        `20`        |
 
 ## Ratings Overlays
 
diff --git a/docs/defaults/separators.md b/docs/defaults/separators.md
index b69058b3..23c6b5aa 100644
--- a/docs/defaults/separators.md
+++ b/docs/defaults/separators.md
@@ -1,8 +1,8 @@
-# Separators Default Metadata File
+# Separators Default Metadata Files
 
 Separators are a special form of collections which are used similar to index cards in a library, they help to "split up" collections by identifying categories (such as "Studio Collections" and "Holiday Collections").
 
-These are empty collections which do not contain any movies/shows themselves, but highlight that the the collections which follow it are of a certain category.
+These are empty collections which do not contain any movies/shows themselves, but highlight that the collections which follow it are of a certain category.
 
 Below is an example of a separator, which can be seen surrounded by a red square.
 
@@ -30,6 +30,32 @@ libraries:
           use_separator: false
 ```
 
+## Separator Files
+
+These are all the files that contain a separator.
+
+| Collection Name                   | Default File        | Collection Section |
+|:----------------------------------|:--------------------|:------------------:|
+| Seasonal Collections              | `seasonal`          |        `00`        |
+| Chart Collections                 | `separator_chart`   |        `01`        |
+| Universe Collections              | `universe`          |        `02`        |
+| Streaming Collections             | `streaming`         |        `03`        |
+| Network Collections               | `network`           |        `04`        |
+| Genre Collections                 | `genre`             |        `06`        |
+| Studio Collections                | `studio`            |        `07`        |
+| Country Collections               | `country`           |        `09`        |
+| Audio Language Collections        | `audio_language`    |        `10`        |
+| Subtitle Language Collections     | `subtitle_language` |        `11`        |
+| Decade Collections                | `decade`            |        `12`        |
+| Year Collections                  | `year`              |        `13`        |
+| Ratings Collections               | `content_rating*`   |        `14`        |
+| Resolution Collections            | `resolution*`       |        `15`        |
+| Award Collections                 | `separator_award`   |        `16`        |
+| Actors Collections                | `actor`             |        `17`        |
+| Directors Collections             | `director`          |        `18`        |
+| Producers Collections             | `producer`          |        `19`        |
+| Writers Collections               | `writer`            |        `20`        |
+
 ## Alternative Styles
 
 Multiple styles are available for Separators, to match Plex's "categories" feature.
diff --git a/docs/defaults/variables.md b/docs/defaults/variables.md
new file mode 100644
index 00000000..99d4c791
--- /dev/null
+++ b/docs/defaults/variables.md
@@ -0,0 +1,25 @@
+# Shared Template Variables
+
+There are some `templates_variables` that all of the PMM Defaults expect `franchise` can use to manipulate the file from the default settings which are provided. 
+
+Note that the `templates_variables:` section only needs to be used if you do want to actually change how the defaults work. Any value not specified is just ignored.
+
+Below are the available variables which can be used to customize the file.
+
+| Attribute                             | Description & Values                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
+|:--------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `use_<>`*             | **Description:** Turns off individual Collections in a Default's file.
**Values:** `false` to turn off the collection | +| `collection_section` | **Description:** Controls the sort order of the collection sections against other default collection sections.
**Values:** Any number | +| `order_<>`* | **Description:** Controls the sort order of the collections in each collection section.
**Values:** Any number | +| `collection_mode` | **Description:** Controls the collection mode of these collections.
**Values:**
`default`Library default
`hide`Hide Collection
`hide_items`Hide Items in this Collection
`show_items`Show this Collection and its Items
| +| `visible_library_<>`* | **Description:** Controls collection visible on Library (Only works with Plex Pass)
**Values:**
`true`Visible
`false`Not Visible
[Any `schedule` Option](../metadata/details/schedule)Visible When Scheduled
| +| `visible_home_<>`* | **Description:** Controls collection visible on Home (Only works with Plex Pass)
**Values:**
`true`Visible
`false`Not Visible
[Any `schedule` Option](../metadata/details/schedule)Visible When Scheduled
| +| `visible_shared_<>`* | **Description:** Controls collection visible on Shared Users' Home (Only works with Plex Pass)
**Values:**
`true`Visible
`false`Not Visible
[Any `schedule` Option](../metadata/details/schedule)Visible When Scheduled
| +| `radarr_add_missing` | **Description:** Override Radarr `add_missing` attribute for these collections
**Values:** `true` or `false` | +| `radarr_folder` | **Description:** Override Radarr `root_folder_path` attribute for these collections
**Values:** Folder Path | +| `radarr_tag` | **Description:** Override Radarr `tag` attribute for these collections
**Values:** List or comma-separated string of tags | +| `item_radarr_tag` | **Description:** Used to append a tag in Radarr for every movie found by the builders that's in Radarr for these collections
**Values:** List or comma-separated string of tags | +| `sonarr_add_missing` | **Description:** Override Sonarr `add_missing` attribute for these collections
**Values:** `true` or `false` | +| `sonarr_folder` | **Description:** Override Sonarr `root_folder_path` attribute for these collections
**Values:** Folder Path | +| `sonarr_tag` | **Description:** Override Sonarr `tag` attribute for these collections
**Values:** List or comma-separated string of tags | +| `item_sonarr_tag` | **Description:** Used to append a tag in Sonarr for every series found by the builders that's in Sonarr for these collections
**Values:** List or comma-separated string of tags | diff --git a/docs/metadata/details/metadata.md b/docs/metadata/details/metadata.md index 6be7d634..1ab36ab1 100644 --- a/docs/metadata/details/metadata.md +++ b/docs/metadata/details/metadata.md @@ -1,6 +1,6 @@ # Metadata Details -## Collection/Playlist Details +## Collection/Playlist Metadata Details All the following attributes update various details of the collection/playlist's Metadata. @@ -14,7 +14,7 @@ Only `tmdb_person` works with Playlists. | `label` | **Description:** Appends new labels.
**Values:** Comma-separated string of labels to append | | `label.remove` | **Description:** Removes existing labels from the collection.
**Values:** Comma-separated string of labels to remove | | `label.sync` | **Description:** Matches the labels of the collection to the labels provided (Leave blank to remove all labels)
**Values:** Comma-separated string of labels to sync | -| `collection_mode` | **Description:** Changes the Collection Mode
**Normal Collections Only**
**Values:**
`default`Library default
`hide`Hide Collection
`hide_items`Hide Items in this Collection
`show_items`Show this Collection and its Items
| +| `collection_mode` | **Description:** Changes the Collection Mode
**Values:**
`default`Library default
`hide`Hide Collection
`hide_items`Hide Items in this Collection
`show_items`Show this Collection and its Items
| | `collection_order` | **Description:** Changes the Collection Order
**Normal Collections Only**
When using `custom` you can only have a single builder in the collection.
**Values:**
`release`Order Collection by Release Dates
`alpha`Order Collection Alphabetically
`custom`Order Collection Via the Builder Order
[Any `plex_search` Sort Option](../builders/plex.md#sort-options)Order Collection by any `plex_search` Sort Option
| | `collection_filtering` | **Description:** Changes the Collection Filtering
**Smart Collections Only**
**Values:**
`admin`Always the server admin user
`user`User currently viewing the content
| | `builder_level` | **Description:** Make season, episode, album or track collections/overlays from `plex_all`, `plex_search`, `trakt_list`, or `imdb_list` Builders and Filters
**Values:**
`season`Collection contains seasons
`episode`Collection contains episodes
`album`Collection contains albums
`track`Collection contains tracks
| diff --git a/modules/meta.py b/modules/meta.py index 7a1d6312..28b8f712 100644 --- a/modules/meta.py +++ b/modules/meta.py @@ -134,7 +134,10 @@ class DataFile: content_path = os.path.abspath(f"{file_path}/default.yml" if translation else file_path) dir_path = file_path if not os.path.exists(content_path): - raise Failed(f"File Error: File does not exist {content_path}") + if file_type == "PMM Default": + raise Failed(f"File Error: Default does not exist {file_path}") + else: + raise Failed(f"File Error: File does not exist {content_path}") yaml = YAML(path=content_path, check_empty=True) if not translation: logger.debug(f"File Loaded From: {content_path}") @@ -530,12 +533,22 @@ class MetadataFile(DataFile): og_exclude = util.parse("Config", "exclude", self.temp_vars["exclude"], parent="template_variable", datatype="strlist") elif "exclude" in methods: og_exclude = util.parse("Config", "exclude", dynamic, parent=map_name, methods=methods, datatype="strlist") + if "append_exclude" in self.temp_vars: + og_exclude.extend(util.parse("Config", "append_exclude", self.temp_vars["append_exclude"], parent="template_variable", datatype="strlist")) include = [] if "include" in self.temp_vars: - include = [i for i in util.parse("Config", "include", self.temp_vars["include"], parent="template_variable", datatype="strlist") if i not in og_exclude] + include = util.parse("Config", "include", self.temp_vars["include"], parent="template_variable", datatype="strlist") elif "include" in methods: include = [i for i in util.parse("Config", "include", dynamic, parent=map_name, methods=methods, datatype="strlist") if i not in og_exclude] + if "append_include" in self.temp_vars: + include.extend(util.parse("Config", "append_include", self.temp_vars["append_include"], parent="template_variable", datatype="strlist")) addons = util.parse("Config", "addons", dynamic, parent=map_name, methods=methods, datatype="dictliststr") if "addons" in methods else {} + if "append_addons" in self.temp_vars: + append_addons = util.parse("Config", "append_addons", dynamic, parent=map_name, methods=methods, datatype="dictliststr") + for k, v in append_addons.items(): + if k not in addons: + addons[k] = [] + addons[k].extend(v) exclude = [str(e) for e in og_exclude] for k, v in addons.items(): if k in v: