code reduce and doutil to doutils fix for delete favorite

This commit is contained in:
SpootDev 2016-03-31 13:13:26 -05:00
parent a864f390d3
commit 1768bd0e4c

View file

@ -42,8 +42,7 @@ class Read_EmbyServer():
# This will return the full item # This will return the full item
item = {} item = {}
url = "{server}/emby/Users/{UserId}/Items/%s?format=json" % itemid result = self.doUtils("{server}/metaman/Users/{UserId}/Items/%s?format=json" % itemid)
result = self.doUtils(url)
if result: if result:
item = result item = result
@ -56,13 +55,12 @@ class Read_EmbyServer():
itemlists = self.split_list(itemlist, 50) itemlists = self.split_list(itemlist, 50)
for itemlist in itemlists: for itemlist in itemlists:
# Will return basic information # Will return basic information
url = "{server}/emby/Users/{UserId}/Items?&format=json"
params = { params = {
'Ids': ",".join(itemlist), 'Ids': ",".join(itemlist),
'Fields': "Etag" 'Fields': "Etag"
} }
result = self.doUtils(url, parameters=params) result = self.doUtils("{server}/emby/Users/{UserId}/Items?&format=json", parameters=params)
if result: if result:
items.extend(result['Items']) items.extend(result['Items'])
@ -75,7 +73,6 @@ class Read_EmbyServer():
itemlists = self.split_list(itemlist, 50) itemlists = self.split_list(itemlist, 50)
for itemlist in itemlists: for itemlist in itemlists:
url = "{server}/emby/Users/{UserId}/Items?format=json"
params = { params = {
"Ids": ",".join(itemlist), "Ids": ",".join(itemlist),
@ -89,7 +86,7 @@ class Read_EmbyServer():
"MediaSources" "MediaSources"
) )
} }
result = self.doUtils(url, parameters=params) result = self.doUtils("{server}/emby/Users/{UserId}/Items?format=json", parameters=params)
if result: if result:
items.extend(result['Items']) items.extend(result['Items'])
@ -98,13 +95,10 @@ class Read_EmbyServer():
def getView_embyId(self, itemid): def getView_embyId(self, itemid):
# Returns ancestors using embyId # Returns ancestors using embyId
viewId = None viewId = None
url = "{server}/emby/Items/%s/Ancestors?UserId={UserId}&format=json" % itemid
result = self.doUtils(url)
for view in result: for view in self.doUtils("{server}/emby/Items/%s/Ancestors?UserId={UserId}&format=json" % itemid):
viewtype = view['Type'] if view['Type'] == "CollectionFolder":
if viewtype == "CollectionFolder":
# Found view # Found view
viewId = view['Id'] viewId = view['Id']
@ -131,7 +125,6 @@ class Read_EmbyServer():
return [viewName, viewId, mediatype] return [viewName, viewId, mediatype]
def getFilteredSection(self, parentid, itemtype=None, sortby="SortName", recursive=True, limit=None, sortorder="Ascending", filter=""): def getFilteredSection(self, parentid, itemtype=None, sortby="SortName", recursive=True, limit=None, sortorder="Ascending", filter=""):
doUtils = self.doUtils
url = "{server}/emby/Users/{UserId}/Items?format=json" url = "{server}/emby/Users/{UserId}/Items?format=json"
params = { params = {
@ -151,10 +144,9 @@ class Read_EmbyServer():
"CriticRating,CriticRatingSummary,Etag,ShortOverview,ProductionLocations," "CriticRating,CriticRatingSummary,Etag,ShortOverview,ProductionLocations,"
"Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers") "Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers")
} }
return doUtils(url, parameters=params) return self.doUtils(url, parameters=params)
def getTvChannels(self): def getTvChannels(self):
doUtils = self.doUtils
url = "{server}/emby/LiveTv/Channels/?userid={UserId}&format=json" url = "{server}/emby/LiveTv/Channels/?userid={UserId}&format=json"
params = { params = {
@ -165,10 +157,9 @@ class Read_EmbyServer():
"CriticRating,CriticRatingSummary,Etag,ShortOverview,ProductionLocations," "CriticRating,CriticRatingSummary,Etag,ShortOverview,ProductionLocations,"
"Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers") "Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers")
} }
return doUtils(url, parameters=params) return self.doUtils(url, parameters=params)
def getTvRecordings(self, groupid): def getTvRecordings(self, groupid):
doUtils = self.doUtils
url = "{server}/emby/LiveTv/Recordings/?userid={UserId}&format=json" url = "{server}/emby/LiveTv/Recordings/?userid={UserId}&format=json"
if groupid == "root": groupid = "" if groupid == "root": groupid = ""
params = { params = {
@ -181,13 +172,12 @@ class Read_EmbyServer():
"CriticRating,CriticRatingSummary,Etag,ShortOverview,ProductionLocations," "CriticRating,CriticRatingSummary,Etag,ShortOverview,ProductionLocations,"
"Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers") "Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers")
} }
return doUtils(url, parameters=params) return self.doUtils(url, parameters=params)
def getSection(self, parentid, itemtype=None, sortby="SortName", basic=False, dialog=None): def getSection(self, parentid, itemtype=None, sortby="SortName", basic=False, dialog=None):
log = self.logMsg log = self.logMsg
doUtils = self.doUtils
items = { items = {
'Items': [], 'Items': [],
@ -206,7 +196,7 @@ class Read_EmbyServer():
'Recursive': True, 'Recursive': True,
'Limit': 1 'Limit': 1
} }
result = doUtils(url, parameters=params) result = self.doUtils(url, parameters=params)
try: try:
total = result['TotalRecordCount'] total = result['TotalRecordCount']
items['TotalRecordCount'] = total items['TotalRecordCount'] = total
@ -247,7 +237,7 @@ class Read_EmbyServer():
"Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers," "Tags,ProviderIds,ParentId,RemoteTrailers,SpecialEpisodeNumbers,"
"MediaSources" "MediaSources"
) )
result = doUtils(url, parameters=params) result = self.doUtils(url, parameters=params)
try: try:
items['Items'].extend(result['Items']) items['Items'].extend(result['Items'])
except TypeError: except TypeError:
@ -307,7 +297,6 @@ class Read_EmbyServer():
def getViews(self, mediatype="", root=False, sortedlist=False): def getViews(self, mediatype="", root=False, sortedlist=False):
# Build a list of user views # Build a list of user views
doUtils = self.doUtils
views = [] views = []
mediatype = mediatype.lower() mediatype = mediatype.lower()
@ -316,7 +305,7 @@ class Read_EmbyServer():
else: # Views ungrouped else: # Views ungrouped
url = "{server}/emby/Users/{UserId}/Items?Sortby=SortName&format=json" url = "{server}/emby/Users/{UserId}/Items?Sortby=SortName&format=json"
result = doUtils(url) result = self.doUtils(url)
try: try:
items = result['Items'] items = result['Items']
except TypeError: except TypeError:
@ -339,7 +328,7 @@ class Read_EmbyServer():
# Assumed missing is mixed then. # Assumed missing is mixed then.
'''if itemtype is None: '''if itemtype is None:
url = "{server}/emby/Library/MediaFolders?format=json" url = "{server}/emby/Library/MediaFolders?format=json"
result = doUtils(url) result = self.doUtils(url)
for folder in result['Items']: for folder in result['Items']:
if itemId == folder['Id']: if itemId == folder['Id']:
@ -469,7 +458,6 @@ class Read_EmbyServer():
def getArtists(self, dialog=None): def getArtists(self, dialog=None):
doUtils = self.doUtils
items = { items = {
'Items': [], 'Items': [],
@ -483,7 +471,7 @@ class Read_EmbyServer():
'Recursive': True, 'Recursive': True,
'Limit': 1 'Limit': 1
} }
result = doUtils(url, parameters=params) result = self.doUtils(url, parameters=params)
try: try:
total = result['TotalRecordCount'] total = result['TotalRecordCount']
items['TotalRecordCount'] = total items['TotalRecordCount'] = total
@ -513,7 +501,7 @@ class Read_EmbyServer():
"AirTime,DateCreated,MediaStreams,People,ProviderIds,Overview" "AirTime,DateCreated,MediaStreams,People,ProviderIds,Overview"
) )
} }
result = doUtils(url, parameters=params) result = self.doUtils(url, parameters=params)
items['Items'].extend(result['Items']) items['Items'].extend(result['Items'])
index += jump index += jump
@ -577,24 +565,23 @@ class Read_EmbyServer():
def updateUserRating(self, itemid, like=None, favourite=None, deletelike=False): def updateUserRating(self, itemid, like=None, favourite=None, deletelike=False):
# Updates the user rating to Emby # Updates the user rating to Emby
doUtils = self.doUtils
if favourite: if favourite:
url = "{server}/emby/Users/{UserId}/FavoriteItems/%s?format=json" % itemid url = "{server}/emby/Users/{UserId}/FavoriteItems/%s?format=json" % itemid
doUtils(url, type="POST") self.doUtils(url, type="POST")
elif favourite == False: elif favourite == False:
url = "{server}/emby/Users/{UserId}/FavoriteItems/%s?format=json" % itemid url = "{server}/emby/Users/{UserId}/FavoriteItems/%s?format=json" % itemid
doUtils(url, type="DELETE") self.doUtils(url, type="DELETE")
if not deletelike and like: if not deletelike and like:
url = "{server}/emby/Users/{UserId}/Items/%s/Rating?Likes=true&format=json" % itemid url = "{server}/emby/Users/{UserId}/Items/%s/Rating?Likes=true&format=json" % itemid
doUtils(url, type="POST") self.doUtils(url, type="POST")
elif not deletelike and like == False: elif not deletelike and like is False:
url = "{server}/emby/Users/{UserId}/Items/%s/Rating?Likes=false&format=json" % itemid url = "{server}/emby/Users/{UserId}/Items/%s/Rating?Likes=false&format=json" % itemid
doUtil(url, type="POST") self.doUtils(url, type="POST")
elif deletelike: elif deletelike:
url = "{server}/emby/Users/{UserId}/Items/%s/Rating?format=json" % itemid url = "{server}/emby/Users/{UserId}/Items/%s/Rating?format=json" % itemid
doUtils(url, type="DELETE") self.doUtils(url, type="DELETE")
self.logMsg("Update user rating to emby for itemid: %s " self.logMsg("Update user rating to emby for itemid: %s "
"| like: %s | favourite: %s | deletelike: %s" "| like: %s | favourite: %s | deletelike: %s"