From 01ba1ed334b9a8f8f7f7c39e005df6b02e57e2d7 Mon Sep 17 00:00:00 2001 From: bullmoose20 Date: Mon, 12 Feb 2024 11:54:08 -0500 Subject: [PATCH] adding content_rating_nz --- defaults/both/content_rating_nz.yml | 151 ++++++++++++++++++++ defaults/overlays/content_rating_nz.yml | 81 +++++++++++ docs/defaults/both/content_rating_nz.md | 147 +++++++++++++++++++ docs/defaults/overlays/content_rating_au.md | 2 +- docs/defaults/overlays/content_rating_nz.md | 102 +++++++++++++ 5 files changed, 482 insertions(+), 1 deletion(-) create mode 100644 defaults/both/content_rating_nz.yml create mode 100644 defaults/overlays/content_rating_nz.yml create mode 100644 docs/defaults/both/content_rating_nz.md create mode 100644 docs/defaults/overlays/content_rating_nz.md diff --git a/defaults/both/content_rating_nz.yml b/defaults/both/content_rating_nz.yml new file mode 100644 index 00000000..2fb1da94 --- /dev/null +++ b/defaults/both/content_rating_nz.yml @@ -0,0 +1,151 @@ +############################################################################## +# NZ Content Rating Collections # +# Adapted by nzvengeance # +# Created by Yozora, Bullmoose20, & Sohjiro # +# EDITING THIS FILE MAY CAUSE PULLING NEW UPDATES TO FAIL # +# https://metamanager.wiki/en/latest/defaults/overlays/content_rating_nz # +############################################################################## + +external_templates: + pmm: templates + template_variables: + collection_section: "110" + +collections: + Ratings Collections: + template: + - name: separator + separator: content_rating + key_name: Ratings + translation_key: separator + +dynamic_collections: + NZ Content Rating: + type: content_rating + title_format: <> <>s + other_name: Not Rated <>s + template: + - smart_filter + - shared + other_template: + - other_collection + - smart_filter + - shared + template_variables: + search_term: + default: content_rating + image: + default: content_rating/nz/<> + other: content_rating/nz/NR + translation_key: + default: content_rating + other: content_rating_other + dynamic: + default: true + include: + - G + - PG + - M + - MA15+ + - R18+ + - X18+ + addons: + G: + - au/G + - de/0 + - U + - 0 + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - "01" + - "02" + - "03" + - "04" + - "05" + - "06" + - G + - TV-G + - TV-Y + - G - All Ages + - gb/U + - gb/0+ + - E + - gb/E + - A + - no/A + - no/5 + - no/05 + PG: + - au/PG + - de/6 + - gb/9+ + - TV-PG + - TV-Y7 + - TV-Y7-FV + - PG + - 7 + - 8 + - 9 + - 10 + - 11 + - "07" + - "08" + - "09" + - PG - Children + - no/6 + - no/06 + - no/7 + - no/07 + - no/9 + - no/09 + - no/10 + - no/11 + M: + - au/M + - de/12 + - gb/12 + - no/12 + - gb/15 + - gb/14+ + - TV-14 + - 12 + - 13 + - 14 + - 15 + - PG-13 - Teens 13 or older + - PG-13 + - no/15 + MA15+: + - au/MA15+ + - de/16 + - no/16 + - A-17 + - TVMA + - TV-MA + - R + - 16 + - 17 + - M/PG + R18+: + - au/R 18+ + - de/18 + - gb/18 + - M + - 18 + - R - 17+ (violence & profanity) + - no/18 + - R18 + - gb/R18 + - gb/X + - X + - NC-17 + - R+ - Mild Nudity + - Rx - Hentai + X18+: + - au/X 18+ + - de/BPjM Restricted + - BPjM Restricted \ No newline at end of file diff --git a/defaults/overlays/content_rating_nz.yml b/defaults/overlays/content_rating_nz.yml new file mode 100644 index 00000000..f8d5e3fd --- /dev/null +++ b/defaults/overlays/content_rating_nz.yml @@ -0,0 +1,81 @@ +############################################################################## +# NZ Content Rating Overlay # +# Adapted by nzvengeance # +# Created by Yozora, Bullmoose20, & Sohjiro # +# EDITING THIS FILE MAY CAUSE PULLING NEW UPDATES TO FAIL # +# https://metamanager.wiki/en/latest/defaults/overlays/content_rating_nz # +############################################################################## + +external_templates: + pmm: templates + template_variables: + default: + key: <> + horizontal_offset: 15 + horizontal_align: left + vertical_offset: 270 + vertical_align: bottom + back_width: 305 + back_height: 105 + back_radius: 30 + back_color: '#00000099' + conditionals: + inside_color: + default: "c" + conditions: + - color: false + value: "" + pmm: + conditions: + - file.exists: false + file_<>.exists: false + url.exists: false + url_<>.exists: false + git.exists: false + git_<>.exists: false + repo.exists: false + repo_<>.exists: false + value: cr/nz_<><> + +templates: + cr_nz: + ignore_blank_results: true + plex_search: + validate: false + any: + content_rating: <> + +overlays: + g: + template: + - name: standard + - {name: cr_nz, rating: "au/G, de/0, U, 0, 1, 01, 2, 02, 3, 03, 4, 04, 5, 05, 6, 06, G, TV-G, TV-Y, G - All Ages, gb/U, gb/0+, E, gb/E, A, no/A, no/5, no/05"} + + pg: + template: + - name: standard + - {name: cr_nz, rating: "au/PG, de/6, gb/9+, TV-PG, TV-Y7, TV-Y7-FV, PG, 7, 07, 8, 08, 9, 09, 10, 11, PG - Children, no/6, no/06, no/7, no/07, no/9, no/09, no/10, no/11"} + + m: + template: + - name: standard + - {name: cr_nz, rating: "au/M, de/12, gb/12, 12, no/12, gb/15, gb/14+, TV-14, 12, 13, 14, 15, PG-13 - Teens 13 or older, PG-13, no/15"} + + ma: + template: + - name: standard + - {name: cr_nz, rating: "au/MA15+, de/16, no/16, A-17, TVMA, TV-MA, R, 16, 17, M/PG"} + + r: + template: + - name: standard + - {name: cr_nz, rating: "au/R 18+, de/18, gb/18, M, 18, R - 17+ (violence & profanity), no/18, R18, gb/R18, gb/X, X, NC-17, R+ - Mild Nudity, Rx - Hentai"} + + x: + template: + - name: standard + - {name: cr_nz, rating: "au/X 18+, de/BPjM Restricted, BPjM Restricted"} + nr: + template: + - {name: standard, key: nr} + - {name: cr_nz, rating: "None, NR, Not Rated, Unrated, de/Unrated, de/Not Rated, au/Unrated, au/Not Rated"} \ No newline at end of file diff --git a/docs/defaults/both/content_rating_nz.md b/docs/defaults/both/content_rating_nz.md new file mode 100644 index 00000000..90ecddba --- /dev/null +++ b/docs/defaults/both/content_rating_nz.md @@ -0,0 +1,147 @@ +# NZ Content Rating Collections + +The `content_rating_nz` Default Collection File is used to dynamically create collections based on the content ratings +available in your library. + +If you do not use the New Zealand-based rating system within Plex, this file will attempt to match the ratings in your +library to the respective rating system. + +![](../images/content_rating_nz.png) + +## Requirements & Recommendations + +Supported Library Types: Movie, Show + +Recommendation: Set the Certification Country within your library's advanced settings to "New Zealand" + +## Collections Section 110 + +| Collection | Key | Description | +|:-------------------------------------------------------------|:-----------------------------------------|:--------------------------------------------------------------------------------------| +| `Ratings Collections` | `separator` | [Separator Collection](../separators.md) to denote the Section of Collections. | +| `<> Movies/Shows`
**Example:** `G Movies` | `<>`
**Example:** `G` | Collection of Movies/Shows that have this Content Rating. | +| `Not Rated Movies/Shows` | `other` | Collection of Movies/Shows that are Unrated, Not Rated or any other uncommon Ratings. | + +## Config + +The below YAML in your config.yml will create the collections: + +```yaml +libraries: + Movies: + collection_files: + - pmm: content_rating_nz + TV Shows: + collection_files: + - pmm: content_rating_nz +``` + +## Template Variables + +Template Variables can be used to manipulate the file in various ways to slightly change how it works without having to +make your own local copy. + +Note that the `template_variables:` section only needs to be used if you do want to actually change how the defaults +work. Any value not specified will use its default value if it has one if not it's just ignored. + +??? abstract "Variable Lists (click to expand)" + + * **File-Specific Template Variables** are variables available specifically for this PMM Defaults file. + + * **Shared Template Variables** are additional variables shared across the PMM Defaults. + + * **Shared Separator Variables** are additional variables available since this Default contains a + [Separator](../separators.md). + + === "File-Specific Template Variables" + + | Variable | Description & Values | + |:------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| + | `limit` | **Description:** Changes the Builder Limit for all collections in a Defaults file.
**Values:** Number Greater than 0 | + | `limit_<>`1 | **Description:** Changes the Builder Limit of the specified key's collection.
**Default:** `limit`
**Values:** Number Greater than 0 | + | `sort_by` | **Description:** Changes the Smart Filter Sort for all collections in a Defaults file.
**Default:** `release.desc`
**Values:** [Any `smart_filter` Sort Option](../../files/builders/smart.md#sort-options) | + | `sort_by_<>`1 | **Description:** Changes the Smart Filter Sort of the specified key's collection.
**Default:** `sort_by`
**Values:** [Any `smart_filter` Sort Option](../../files/builders/smart.md#sort-options) | + | `include` | **Description:** Overrides the [default include list](#include).
**Values:** List of Content Ratings found in your library | + | `append_include` | **Description:** Appends to the [default include list](#include).
**Values:** List of Content Ratings found in your library | + | `remove_include` | **Description:** Removes from the [default include list](#include).
**Values:** List of Content Ratings found in your library | + | `exclude` | **Description:** Exclude these Content Ratings from creating a Dynamic Collection.
**Values:** List of Content Ratings found in your library | + | `addons` | **Description:** Overrides the [default addons dictionary](#addons). Defines how multiple keys can be combined under a parent key. The parent key doesn't have to already exist in Plex
**Values:** Dictionary List of Content Ratings found in your library | + | `append_addons` | **Description:** Appends to the [default addons dictionary](#addons).
**Values:** Dictionary List of Content Ratings found in your library | + | `remove_addons` | **Description:** Removes from the [default addons dictionary](#addons).
**Values:** Dictionary List of Content Ratings found in your library | + | `name_format` | **Description:** Changes the title format of the Dynamic Collections.
**Default:** `<> <>s`
**Values:** Any string with `<>` in it. | + | `summary_format` | **Description:** Changes the summary format of the Dynamic Collections.
**Default:** `<>s that are rated <>.`
**Values:** Any string. | + + 1. Each default collection has a `key` that when calling to effect a specific collection you must replace + `<>` with when calling. + + === "Shared Template Variables" + + {% + include-markdown "../collection_variables.md" + %} + + === "Shared Separator Variables" + + {% + include-markdown "../separator_variables.md" + %} + +???+ example "Example Template Variable Amendments" + + The below is an example config.yml extract with some Template Variables added in to change how the file works. + + Click the :fontawesome-solid-circle-plus: icon to learn more + + ```yaml + libraries: + Movies: + collection_files: + - pmm: content_rating_cs + template_variables: + sep_style: stb #(1)! + use_other: false #(2)! + append_addons: + BPjM: #(3)! + - X #(4)! + sort_by: title.asc + ``` + + 1. Use the stb [Separator Style](../separators.md#separator-styles) + 2. Do not create a "Not Rated Movies/Shows" collection + 3. Defines a collection which will be called "BPjM", this does not need to already exist in your library + 4. Adds the "X" content rating to the "BPjM" addon list, "X" must exist in your library if the "BPjM" content + rating does not + +## Default Values + +These are lists provided for reference to show what values will be in use if you do no customization. **These do not +show how to change a name or a list.** + +If you want to customize these values, use the methods described above. + +??? example "Default `include` (click to expand) " + +
+ + ```yaml + include: {% + include-markdown "../../../defaults/both/content_rating_nz.yml" + comments=false + preserve-includer-indent=false + start="include:" + end="addons:" + %} + ``` + +??? example "Default `addons` (click to expand) " + +
+ + ```yaml + addons: {% + include-markdown "../../../defaults/both/content_rating_nz.yml" + comments=false + preserve-includer-indent=false + start="addons:" + %} + ``` diff --git a/docs/defaults/overlays/content_rating_au.md b/docs/defaults/overlays/content_rating_au.md index db2d8a4b..8f429bde 100644 --- a/docs/defaults/overlays/content_rating_au.md +++ b/docs/defaults/overlays/content_rating_au.md @@ -1,6 +1,6 @@ # Content Rating AU Overlay -The `content_rating_au` Default Overlay File is used to create an overlay based on the FSK Rating on each item within +The `content_rating_au` Default Overlay File is used to create an overlay based on the Australia Rating on each item within your library. ![](images/content_rating_au.png) diff --git a/docs/defaults/overlays/content_rating_nz.md b/docs/defaults/overlays/content_rating_nz.md new file mode 100644 index 00000000..a7204883 --- /dev/null +++ b/docs/defaults/overlays/content_rating_nz.md @@ -0,0 +1,102 @@ +# Content Rating NZ Overlay + +The `content_rating_nz` Default Overlay File is used to create an overlay based on the New Zealand Rating on each item within +your library. + +![](images/content_rating_nz.png) + +## Requirements & Recommendations + +Supported library types: Movie & Show + +Requirements: Use the [Mass Content Rating Update Library +Operation](../../config/operations.md#mass-content-rating-update) with either `mdb` or `omdb` to update Plex to the BBFC +Rating. + +## Supported Content Rating NZ + +| Rating | Key | +|:-------|:------| +| G | `g` | +| PG | `pg` | +| M | `m` | +| MA15+ | `ma` | +| R18+ | `r` | +| X18+ | `x` | +| NR | `nr` | + +## Config + +The below YAML in your config.yml will create the overlays: + +```yaml +libraries: + Movies: + overlay_files: + - pmm: content_rating_nz + TV Shows: + overlay_files: + - pmm: content_rating_nz + - pmm: content_rating_nz + template_variables: + builder_level: season + - pmm: content_rating_nz + template_variables: + builder_level: episode +``` + +## Template Variables + +Template Variables can be used to manipulate the file in various ways to slightly change how it works without having to +make your own local copy. + +Note that the `template_variables:` section only needs to be used if you do want to actually change how the defaults +work. Any value not specified will use its default value if it has one if not it's just ignored. + +??? abstract "Variable Lists (click to expand)" + + * **File-Specific Template Variables** are variables available specifically for this PMM Defaults file. + + * **Overlay Template Variables** are additional variables shared across the PMM Overlay Defaults. + + ??? example "Default Template Variable Values (click to expand)" + + | Variable | Default | + |:--------------------|:---------| + | `color` | `` | + | `horizontal_offset` | `15` | + | `horizontal_align` | `left` | + | `vertical_offset` | `270` | + | `vertical_align` | `bottom` | + + === "File-Specific Template Variables" + + | Variable | Description & Values | + |:-----------------|:--------------------------------------------------------------------------------------------------------------------------------------------| + | `color` | **Description:** Color version of the content rating images
**Default:**`` Set to `false` if you want b&w version. | + | `back_color` | **Description:** Choose the back color in RGBA for the overlay lozenge.
**Default:**`#00000099` | + | `back_radius` | **Description:** Choose the back radius for the overlay lozenge.
**Default:**`30` | + | `back_width` | **Description:** Choose the back width for the overlay lozenge.
**Default:**`305` | + | `back_height` | **Description:** Choose the back height for the overlay lozenge.
**Default:**`105` | + | `addon_offset` | **Description:** Text Addon Image Offset from the text.
**Default:** `15`
**Values:** Any number greater than 0 | + | `addon_position` | **Description:** Text Addon Image Alignment in relation to the text.
**Default:** `left`
**Values:** `left`, `right`, `top`, `bottom` | + | `builder_level` | **Description:** Choose the Overlay Level.
**Values:** `season` or `episode` | + + === "Overlay Template Variables" + + {% + include-markdown "../overlay_variables.md" + %} + +???+ example "Example Template Variable Amendments" + + The below is an example config.yml extract with some Template Variables added in to change how the file works. + + ```yaml + libraries: + Movies: + overlay_files: + - pmm: content_rating_nz + template_variables: + color: false + ```