From 47d480eafdb1b1977f95a58b54134fb8a966df28 Mon Sep 17 00:00:00 2001 From: tomkat83 Date: Sat, 2 Apr 2016 10:31:21 +0200 Subject: [PATCH] Ratings default to 0, not None --- resources/lib/PlexAPI.py | 26 ++++++++++++++++++-------- resources/lib/itemtypes.py | 8 ++------ 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/resources/lib/PlexAPI.py b/resources/lib/PlexAPI.py index 04f87659..8267d4bd 100644 --- a/resources/lib/PlexAPI.py +++ b/resources/lib/PlexAPI.py @@ -1553,12 +1553,8 @@ class API(): } """ item = self.item.attrib - # Default + # Default - attributes not found with Plex favorite = False - played = False - lastPlayedDate = None - resume = 0 - rating = 0 try: playcount = int(item['viewCount']) @@ -1567,13 +1563,26 @@ class API(): if playcount: played = True + else: + played = False try: lastPlayedDate = utils.DateToKodi(int(item['lastViewedAt'])) except: lastPlayedDate = None - userrating = int(float(item.get('userRating', 0))) + try: + userrating = float(item['userRating']) + except: + userrating = 0.0 + + try: + rating = float(item['audienceRating']) + except: + try: + rating = float(item['rating']) + except: + rating = 0.0 resume, runtime = self.getRuntime() return { @@ -1734,11 +1743,12 @@ class API(): def getAudienceRating(self): """ - Returns the audience rating, 'rating' itself or None + Returns the audience rating, 'rating' itself or 0.0 """ res = self.item.attrib.get('audienceRating') if res is None: - res = self.item.attrib.get('rating') + res = self.item.attrib.get('rating', 0.0) + res = float(res) return res def getYear(self): diff --git a/resources/lib/itemtypes.py b/resources/lib/itemtypes.py index ccacf3b1..92e15bf1 100644 --- a/resources/lib/itemtypes.py +++ b/resources/lib/itemtypes.py @@ -388,7 +388,7 @@ class Movies(Items): votecount = None collections = API.getCollections() - rating = API.getAudienceRating() + rating = userdata['Rating'] year = API.getYear() imdb = API.getProvider('imdb') mpaa = API.getMpaa() @@ -1254,7 +1254,7 @@ class TVShows(Items): producer = API.joinList(peoples['Producer']) title, sorttitle = API.getTitle() plot = API.getPlot() - rating = API.getAudienceRating() + rating = userdata['Rating'] resume, runtime = API.getRuntime() premieredate = API.getPremiereDate() @@ -1859,8 +1859,6 @@ class Music(Items): # Process the album info if kodiversion == 17: # Kodi Krypton - if not rating: - rating = 0.0 query = ' '.join(( "UPDATE album", @@ -2045,8 +2043,6 @@ class Music(Items): year = API.getYear() resume, duration = API.getRuntime() rating = userdata['UserRating'] - if not rating and kodiversion == 17: - rating = 0.0 #if enabled, try to get the rating from file and/or emby # if not self.directstream: