Fix episodes for series pooling

This commit is contained in:
angelblue05 2018-09-23 03:03:15 -05:00
commit d54aad726e
9 changed files with 120 additions and 24 deletions

View file

@ -127,7 +127,7 @@ class TVShows(KodiDb):
self.add_studios(*values(obj, QU.add_studios_tvshow_obj))
self.artwork.add(obj['Artwork'], obj['ShowId'], "tvshow")
season_episodes = []
season_episodes = {}
for season in self.server['api'].get_seasons(obj['Id'])['Items']:
@ -140,19 +140,18 @@ class TVShows(KodiDb):
self.emby_db.add_reference(*values(obj, QUEM.add_reference_pool_obj))
LOG.info("POOL %s [%s/%s]", obj['Title'], obj['Id'], obj['SeriesId'])
season_episodes[season['Id']] = season['SeriesId']
try:
self.emby_db.get_item_by_id(season['Id'])[0]
except TypeError:
self.season(season, obj['ShowId'])
season_episodes.append(season['Id'])
else:
season_id = self.get_season(*values(obj, QU.get_season_special_obj))
self.artwork.add(obj['Artwork'], season_id, "season")
for season in season_episodes:
for episodes in server.get_items(season, "Episode"):
for episodes in server.get_episode_by_season(season_episodes[season], season):
for episode in episodes['Items']:
self.episode(episode)
@ -562,6 +561,12 @@ class TVShows(KodiDb):
self.remove_show(obj['ParentId'], obj['Id'])
self.emby_db.remove_item_by_kodi_id(*values(obj, QUEM.delete_item_by_parent_tvshow_obj))
# Remove any series pooling episodes
for episode in self.emby_db.get_media_by_parent_id(obj['Id']):
self.remove_episode(episode[2], episode[3], obj['Id'])
else:
self.emby_db.remove_media_by_parent_id(obj['Id'])
self.emby_db.remove_item(*values(obj, QUEM.delete_item_obj))
def remove_tvshow(self, kodi_id, item_id):