Add item_lock_title

This commit is contained in:
James Hu 2021-11-23 11:45:41 -08:00
parent 3dd80833ec
commit e6e9dfbaa0

View file

@ -90,8 +90,11 @@ notification_details = ["collection_creation_webhooks", "collection_addition_web
details = ["collection_mode", "collection_order", "collection_level", "collection_minimum", "label"] + boolean_details + string_details + notification_details details = ["collection_mode", "collection_order", "collection_level", "collection_minimum", "label"] + boolean_details + string_details + notification_details
collectionless_details = ["collection_order", "plex_collectionless", "label", "label_sync_mode", "test"] + \ collectionless_details = ["collection_order", "plex_collectionless", "label", "label_sync_mode", "test"] + \
poster_details + background_details + summary_details + string_details poster_details + background_details + summary_details + string_details
item_details = ["item_label", "item_radarr_tag", "item_sonarr_tag", "item_overlay", "item_assets", "revert_overlay", "item_lock_background", "item_lock_poster", "item_refresh"] + \ item_details = [
list(plex.item_advance_keys.keys()) "item_label", "item_radarr_tag", "item_sonarr_tag", "item_overlay", "item_assets", "revert_overlay",
"item_lock_background", "item_lock_poster", "item_lock_title",
"item_refresh",
] + list(plex.item_advance_keys.keys())
radarr_details = ["radarr_add", "radarr_add_existing", "radarr_folder", "radarr_monitor", "radarr_search", "radarr_availability", "radarr_quality", "radarr_tag"] radarr_details = ["radarr_add", "radarr_add_existing", "radarr_folder", "radarr_monitor", "radarr_search", "radarr_availability", "radarr_quality", "radarr_tag"]
sonarr_details = [ sonarr_details = [
"sonarr_add", "sonarr_add_existing", "sonarr_folder", "sonarr_monitor", "sonarr_language", "sonarr_series", "sonarr_add", "sonarr_add_existing", "sonarr_folder", "sonarr_monitor", "sonarr_language", "sonarr_series",
@ -745,7 +748,7 @@ class CollectionBuilder:
raise Failed("Each Overlay can only be used once per Library") raise Failed("Each Overlay can only be used once per Library")
self.library.overlays.append(method_data) self.library.overlays.append(method_data)
self.item_details[method_name] = method_data self.item_details[method_name] = method_data
elif method_name in ["item_assets", "revert_overlay", "item_lock_background", "item_lock_poster", "item_refresh"]: elif method_name in ["item_assets", "revert_overlay", "item_lock_background", "item_lock_poster", "item_lock_title", "item_refresh"]:
if util.parse(method_name, method_data, datatype="bool", default=False): if util.parse(method_name, method_data, datatype="bool", default=False):
self.item_details[method_name] = True self.item_details[method_name] = True
elif method_name in plex.item_advance_keys: elif method_name in plex.item_advance_keys:
@ -1839,13 +1842,15 @@ class CollectionBuilder:
if getattr(item, key) != options[method_data]: if getattr(item, key) != options[method_data]:
advance_edits[key] = options[method_data] advance_edits[key] = options[method_data]
self.library.edit_item(item, item.title, self.collection_level.capitalize(), advance_edits, advanced=True) self.library.edit_item(item, item.title, self.collection_level.capitalize(), advance_edits, advanced=True)
# Locking background and poster should come before refreshing since refreshing can change background/poster
# (i.e. if specified to both lock background/poster and refresh, assume that the current background/poster # Locking should come before refreshing since refreshing can change metadata (i.e. if specified to both lock
# should be kept) # background/poster and also refreshing, assume that the current background/poster should be kept)
if "item_lock_background" in self.item_details: if "item_lock_background" in self.item_details:
item.lockArt() item.lockArt()
if "item_lock_poster" in self.item_details: if "item_lock_poster" in self.item_details:
item.lockPoster() item.lockPoster()
if "item_lock_title" in self.item_details:
item.edit(**{"title.locked": 1})
if "item_refresh" in self.item_details: if "item_refresh" in self.item_details:
item.refresh() item.refresh()