mirror of
https://github.com/jellyfin/jellyfin-kodi.git
synced 2024-12-26 02:36:10 +00:00
Fix incremental sync, cleanup more getitem shenanigans
This commit is contained in:
parent
f9335ad566
commit
3835811d33
2 changed files with 41 additions and 5 deletions
|
@ -519,7 +519,7 @@ class FullSync(object):
|
||||||
movies = [x for x in items if x[1] == 'Movie']
|
movies = [x for x in items if x[1] == 'Movie']
|
||||||
tvshows = [x for x in items if x[1] == 'Series']
|
tvshows = [x for x in items if x[1] == 'Series']
|
||||||
|
|
||||||
obj = MEDIA['Movie'](self.server, jellyfindb, kodidb, direct_path)['Remove']
|
obj = Movies(self.server, jellyfindb, kodidb, direct_path).remove
|
||||||
|
|
||||||
for item in movies:
|
for item in movies:
|
||||||
|
|
||||||
|
@ -527,7 +527,7 @@ class FullSync(object):
|
||||||
dialog.update(int((float(count) / float(len(items))*100)), heading="%s: %s" % (_('addon_name'), library[0]))
|
dialog.update(int((float(count) / float(len(items))*100)), heading="%s: %s" % (_('addon_name'), library[0]))
|
||||||
count += 1
|
count += 1
|
||||||
|
|
||||||
obj = MEDIA['Series'](self.server, jellyfindb, kodidb, direct_path)['Remove']
|
obj = TVShows(self.server, jellyfindb, kodidb, direct_path).remove
|
||||||
|
|
||||||
for item in tvshows:
|
for item in tvshows:
|
||||||
|
|
||||||
|
@ -535,6 +535,13 @@ class FullSync(object):
|
||||||
dialog.update(int((float(count) / float(len(items))*100)), heading="%s: %s" % (_('addon_name'), library[0]))
|
dialog.update(int((float(count) / float(len(items))*100)), heading="%s: %s" % (_('addon_name'), library[0]))
|
||||||
count += 1
|
count += 1
|
||||||
else:
|
else:
|
||||||
|
# from mcarlton: I'm not sure what triggers this.
|
||||||
|
# I've added and removed every media type except
|
||||||
|
# for music videos (because i don't have any) and
|
||||||
|
# can't find it, but I'm not comfortable
|
||||||
|
# removing it right now
|
||||||
|
LOG.info('Triggered the mystery function')
|
||||||
|
LOG.debug('Mystery function item type: {}'.format('items[0][1]))
|
||||||
obj = MEDIA[items[0][1]](self.server, jellyfindb, kodidb, direct_path).remove
|
obj = MEDIA[items[0][1]](self.server, jellyfindb, kodidb, direct_path).remove
|
||||||
|
|
||||||
for item in items:
|
for item in items:
|
||||||
|
|
|
@ -616,7 +616,26 @@ class UpdatedWorker(threading.Thread):
|
||||||
except Queue.Empty:
|
except Queue.Empty:
|
||||||
break
|
break
|
||||||
|
|
||||||
obj = MEDIA[item['Type']](self.args[0], jellyfindb, kodidb, self.args[1])[item['Type']]
|
if item['Type'] == 'Movie':
|
||||||
|
obj = Movies(self.args[0], jellyfindb, kodidb, self.args[1]).movie
|
||||||
|
elif item['Type'] == 'Boxset':
|
||||||
|
obj = Movies(self.args[0], jellyfindb, kodidb, self.args[1]).boxset
|
||||||
|
elif item['Type'] == 'Series':
|
||||||
|
obj = TVShows(self.args[0], jellyfindb, kodidb, self.args[1]).tvshow
|
||||||
|
elif item['Type'] == 'Season':
|
||||||
|
obj = TVShows(self.args[0], jellyfindb, kodidb, self.args[1]).season
|
||||||
|
elif item['Type'] == 'Episode':
|
||||||
|
obj = TVShows(self.args[0], jellyfindb, kodidb, self.args[1]).episode
|
||||||
|
elif item['Type'] == 'MusicVideo':
|
||||||
|
obj = MusicVideos(self.args[0], jellyfindb, kodidb, self.args[1]).musicvideo
|
||||||
|
elif item['Type'] == 'MusicAlbum':
|
||||||
|
obj = Music(self.args[0], jellyfindb, kodidb, self.args[1]).album
|
||||||
|
elif item['Type'] == 'MusicArtist':
|
||||||
|
obj = Music(self.args[0], jellyfindb, kodidb, self.args[1]).artist
|
||||||
|
elif item['Type'] == 'AlbumArtist':
|
||||||
|
obj = Music(self.args[0], jellyfindb, kodidb, self.args[1]).albumartist
|
||||||
|
elif item['Type'] == 'Audio':
|
||||||
|
obj = Music(self.args[0], jellyfindb, kodidb, self.args[1]).song
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if obj(item) and self.notify:
|
if obj(item) and self.notify:
|
||||||
|
@ -657,7 +676,10 @@ class UserDataWorker(threading.Thread):
|
||||||
except Queue.Empty:
|
except Queue.Empty:
|
||||||
break
|
break
|
||||||
|
|
||||||
obj = MEDIA[item['Type']](self.args[0], jellyfindb, kodidb, self.args[1]).userdata
|
if item['Type'] == 'Movie':
|
||||||
|
obj = Movies(self.args[0], jellyfindb, kodidb, self.args[1]).userdata(item)
|
||||||
|
elif item['Type'] in ['Series', 'Season', 'Episode']:
|
||||||
|
obj = TVShows(self.args[0], jellyfindb, kodidb, self.args[1]).userdata(item)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
obj(item)
|
obj(item)
|
||||||
|
@ -742,7 +764,14 @@ class RemovedWorker(threading.Thread):
|
||||||
except Queue.Empty:
|
except Queue.Empty:
|
||||||
break
|
break
|
||||||
|
|
||||||
obj = MEDIA[item['Type']](self.args[0], jellyfindb, kodidb, self.args[1]).remove
|
if item['Type'] == 'Movie':
|
||||||
|
obj = Movies(self.args[0], jellyfindb, kodidb, self.args[1]).remove
|
||||||
|
elif item['Type'] in ['Series', 'Season', 'Episode']:
|
||||||
|
obj = TVShows(self.args[0], jellyfindb, kodidb, self.args[1]).remove
|
||||||
|
elif item['Type'] in ['MusicAlbum', 'MusicArtist', 'AlbumArtist', 'Audio']:
|
||||||
|
obj = Music(self.args[0], jellyfindb, kodidb, self.args[1]).remove
|
||||||
|
elif item['Type'] == 'MusicVideo':
|
||||||
|
obj = MusicVideos(self.args[0], jellyfindb, kodidb, self.args[1]).remove
|
||||||
|
|
||||||
try:
|
try:
|
||||||
obj(item['Id'])
|
obj(item['Id'])
|
||||||
|
|
Loading…
Reference in a new issue