Add progress dialog for gathering
It's not very precise since we gather in batch, but better than nothing.
This commit is contained in:
parent
2bd1d139c1
commit
08581dbc18
2 changed files with 34 additions and 30 deletions
|
@ -494,7 +494,7 @@ class LibrarySync(threading.Thread):
|
|||
heading="Emby for Kodi",
|
||||
message="Comparing movies from view: %s..." % viewName)
|
||||
|
||||
all_embymovies = emby.getMovies(viewId, basic=True)
|
||||
all_embymovies = emby.getMovies(viewId, basic=True, dialog=pdialog)
|
||||
for embymovie in all_embymovies['Items']:
|
||||
|
||||
if self.shouldStop():
|
||||
|
@ -515,7 +515,7 @@ class LibrarySync(threading.Thread):
|
|||
del updatelist[:]
|
||||
else:
|
||||
# Initial or repair sync
|
||||
all_embymovies = emby.getMovies(viewId)
|
||||
all_embymovies = emby.getMovies(viewId, dialog=pdialog)
|
||||
total = all_embymovies['TotalRecordCount']
|
||||
embymovies = all_embymovies['Items']
|
||||
|
||||
|
@ -543,7 +543,7 @@ class LibrarySync(threading.Thread):
|
|||
if pdialog:
|
||||
pdialog.update(heading="Emby for Kodi", message="Gathering boxsets from server...")
|
||||
|
||||
boxsets = emby.getBoxset()
|
||||
boxsets = emby.getBoxset(dialog=pdialog)
|
||||
|
||||
if compare:
|
||||
# Manual sync
|
||||
|
@ -652,7 +652,7 @@ class LibrarySync(threading.Thread):
|
|||
heading="Emby for Kodi",
|
||||
message="Comparing musicvideos from view: %s..." % viewName)
|
||||
|
||||
all_embymvideos = emby.getMusicVideos(viewId, basic=True)
|
||||
all_embymvideos = emby.getMusicVideos(viewId, basic=True, dialog=pdialog)
|
||||
for embymvideo in all_embymvideos['Items']:
|
||||
|
||||
if self.shouldStop():
|
||||
|
@ -673,7 +673,7 @@ class LibrarySync(threading.Thread):
|
|||
del updatelist[:]
|
||||
else:
|
||||
# Initial or repair sync
|
||||
all_embymvideos = emby.getMusicVideos(viewId)
|
||||
all_embymvideos = emby.getMusicVideos(viewId, dialog=pdialog)
|
||||
total = all_embymvideos['TotalRecordCount']
|
||||
embymvideos = all_embymvideos['Items']
|
||||
|
||||
|
@ -755,7 +755,7 @@ class LibrarySync(threading.Thread):
|
|||
heading="Emby for Kodi",
|
||||
message="Comparing tvshows from view: %s..." % viewName)
|
||||
|
||||
all_embytvshows = emby.getShows(viewId, basic=True)
|
||||
all_embytvshows = emby.getShows(viewId, basic=True, dialog=pdialog)
|
||||
for embytvshow in all_embytvshows['Items']:
|
||||
|
||||
if self.shouldStop():
|
||||
|
@ -775,7 +775,7 @@ class LibrarySync(threading.Thread):
|
|||
total = len(updatelist)
|
||||
del updatelist[:]
|
||||
else:
|
||||
all_embytvshows = emby.getShows(viewId)
|
||||
all_embytvshows = emby.getShows(viewId, dialog=pdialog)
|
||||
total = all_embytvshows['TotalRecordCount']
|
||||
embytvshows = all_embytvshows['Items']
|
||||
|
||||
|
@ -818,7 +818,7 @@ class LibrarySync(threading.Thread):
|
|||
heading="Emby for Kodi",
|
||||
message="Comparing episodes from view: %s..." % viewName)
|
||||
|
||||
all_embyepisodes = emby.getEpisodes(viewId, basic=True)
|
||||
all_embyepisodes = emby.getEpisodes(viewId, basic=True, dialog=pdialog)
|
||||
for embyepisode in all_embyepisodes['Items']:
|
||||
|
||||
if self.shouldStop():
|
||||
|
@ -921,9 +921,9 @@ class LibrarySync(threading.Thread):
|
|||
message="Comparing %s..." % type)
|
||||
|
||||
if type != "artists":
|
||||
all_embyitems = process[type][0](basic=True)
|
||||
all_embyitems = process[type][0](basic=True, dialog=pdialog)
|
||||
else:
|
||||
all_embyitems = process[type][0]()
|
||||
all_embyitems = process[type][0](dialog=pdialog)
|
||||
for embyitem in all_embyitems['Items']:
|
||||
|
||||
if self.shouldStop():
|
||||
|
@ -952,7 +952,7 @@ class LibrarySync(threading.Thread):
|
|||
total = len(updatelist)
|
||||
del updatelist[:]
|
||||
else:
|
||||
all_embyitems = process[type][0]()
|
||||
all_embyitems = process[type][0](dialog=pdialog)
|
||||
total = all_embyitems['TotalRecordCount']
|
||||
embyitems = all_embyitems['Items']
|
||||
|
||||
|
|
|
@ -149,7 +149,7 @@ class Read_EmbyServer():
|
|||
}
|
||||
return doUtils.downloadUrl(url, parameters=params)
|
||||
|
||||
def getSection(self, parentid, itemtype=None, sortby="SortName", basic=False):
|
||||
def getSection(self, parentid, itemtype=None, sortby="SortName", basic=False, dialog=None):
|
||||
|
||||
doUtils = self.doUtils
|
||||
items = {
|
||||
|
@ -219,7 +219,9 @@ class Read_EmbyServer():
|
|||
self.logMsg("New throttle for items requested: %s" % jump, 1)
|
||||
else:
|
||||
index += jump
|
||||
|
||||
if dialog:
|
||||
percentage = int((float(index) / float(total))*100)
|
||||
dialog.update(percentage)
|
||||
return items
|
||||
|
||||
def getViews(self, type, root=False):
|
||||
|
@ -276,15 +278,15 @@ class Read_EmbyServer():
|
|||
|
||||
return views
|
||||
|
||||
def getMovies(self, parentId, basic=False):
|
||||
def getMovies(self, parentId, basic=False, dialog=None):
|
||||
|
||||
items = self.getSection(parentId, "Movie", basic=basic)
|
||||
items = self.getSection(parentId, "Movie", basic=basic, dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
def getBoxset(self):
|
||||
def getBoxset(self, dialog=None):
|
||||
|
||||
items = self.getSection(None, "BoxSet")
|
||||
items = self.getSection(None, "BoxSet", dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
|
@ -294,9 +296,9 @@ class Read_EmbyServer():
|
|||
|
||||
return items
|
||||
|
||||
def getMusicVideos(self, parentId, basic=False):
|
||||
def getMusicVideos(self, parentId, basic=False, dialog=None):
|
||||
|
||||
items = self.getSection(parentId, "MusicVideo", basic=basic)
|
||||
items = self.getSection(parentId, "MusicVideo", basic=basic, dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
|
@ -306,9 +308,9 @@ class Read_EmbyServer():
|
|||
|
||||
return items
|
||||
|
||||
def getShows(self, parentId, basic=False):
|
||||
def getShows(self, parentId, basic=False, dialog=None):
|
||||
|
||||
items = self.getSection(parentId, "Series", basic=basic)
|
||||
items = self.getSection(parentId, "Series", basic=basic, dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
|
@ -332,9 +334,9 @@ class Read_EmbyServer():
|
|||
|
||||
return items
|
||||
|
||||
def getEpisodes(self, parentId, basic=False):
|
||||
def getEpisodes(self, parentId, basic=False, dialog=None):
|
||||
|
||||
items = self.getSection(parentId, "Episode", basic=basic)
|
||||
items = self.getSection(parentId, "Episode", basic=basic, dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
|
@ -350,7 +352,7 @@ class Read_EmbyServer():
|
|||
|
||||
return items
|
||||
|
||||
def getArtists(self):
|
||||
def getArtists(self, dialog=None):
|
||||
|
||||
doUtils = self.doUtils
|
||||
items = {
|
||||
|
@ -406,12 +408,14 @@ class Read_EmbyServer():
|
|||
self.logMsg("New throttle for items requested: %s" % jump, 1)
|
||||
else:
|
||||
index += jump
|
||||
|
||||
if dialog:
|
||||
percentage = int((float(index) / float(total))*100)
|
||||
dialog.update(percentage)
|
||||
return items
|
||||
|
||||
def getAlbums(self, basic=False):
|
||||
def getAlbums(self, basic=False, dialog=None):
|
||||
|
||||
items = self.getSection(None, "MusicAlbum", sortby="DateCreated", basic=basic)
|
||||
items = self.getSection(None, "MusicAlbum", sortby="DateCreated", basic=basic, dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
|
@ -421,9 +425,9 @@ class Read_EmbyServer():
|
|||
|
||||
return items
|
||||
|
||||
def getSongs(self, basic=False):
|
||||
def getSongs(self, basic=False, dialog=None):
|
||||
|
||||
items = self.getSection(None, "Audio", basic=basic)
|
||||
items = self.getSection(None, "Audio", basic=basic, dialog=dialog)
|
||||
|
||||
return items
|
||||
|
||||
|
@ -460,4 +464,4 @@ class Read_EmbyServer():
|
|||
if mediatype:
|
||||
sorted_items.setdefault(mediatype, []).append(item)
|
||||
|
||||
return sorted_items
|
||||
return sorted_items
|
Loading…
Reference in a new issue