From 6e6fe1fb65f9111d54d79f50613e6d7e877d7084 Mon Sep 17 00:00:00 2001 From: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com> Date: Tue, 19 Nov 2024 10:36:34 -0800 Subject: [PATCH] Add slugs to metadata details --- plexpy/pmsconnect.py | 33 +++++++++++++++++++++++++++++++++ plexpy/webserve.py | 3 +++ 2 files changed, 36 insertions(+) diff --git a/plexpy/pmsconnect.py b/plexpy/pmsconnect.py index 4826d3d6..2575d2da 100644 --- a/plexpy/pmsconnect.py +++ b/plexpy/pmsconnect.py @@ -823,6 +823,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -883,6 +886,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -949,6 +955,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': show_details.get('studio', ''), @@ -1032,6 +1041,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': parent_media_index, 'studio': show_details.get('studio', ''), @@ -1088,6 +1100,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -1145,6 +1160,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -1205,6 +1223,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -1261,6 +1282,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -1318,6 +1342,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -1375,6 +1402,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), @@ -1454,6 +1484,9 @@ class PmsConnect(object): 'original_title': helpers.get_xml_attr(metadata_main, 'originalTitle'), 'sort_title': helpers.get_xml_attr(metadata_main, 'titleSort'), 'edition_title': helpers.get_xml_attr(metadata_main, 'editionTitle'), + 'slug': helpers.get_xml_attr(metadata_main, 'slug'), + 'parent_slug': helpers.get_xml_attr(metadata_main, 'parentSlug'), + 'grandparent_slug': helpers.get_xml_attr(metadata_main, 'grandparentSlug'), 'media_index': helpers.get_xml_attr(metadata_main, 'index'), 'parent_media_index': helpers.get_xml_attr(metadata_main, 'parentIndex'), 'studio': helpers.get_xml_attr(metadata_main, 'studio'), diff --git a/plexpy/webserve.py b/plexpy/webserve.py index 150bc18d..18521cab 100644 --- a/plexpy/webserve.py +++ b/plexpy/webserve.py @@ -5352,6 +5352,7 @@ class WebInterface(object): "tvdb://121361" ], "grandparent_rating_key": "1219", + "grandparent_slug": "game-of-thrones", "grandparent_thumb": "/library/metadata/1219/thumb/1462175063", "grandparent_title": "Game of Thrones", "grandparent_year": "2011", @@ -5484,6 +5485,7 @@ class WebInterface(object): ], "parent_media_index": "6", "parent_rating_key": "153036", + "parent_slug": "game-of-thrones", "parent_thumb": "/library/metadata/153036/thumb/1462175062", "parent_title": "Season 6", "parent_year": "2016", @@ -5491,6 +5493,7 @@ class WebInterface(object): "rating_image": "", "rating_key": "153037", "section_id": "2", + "slug": "game-of-thrones", "sort_title": "Red Woman", "studio": "Revolution Sun Studios", "summary": "The fate of Jon Snow is revealed. Daenerys meets a strong man. Cersei sees her daughter once again.",