From f2d29fb1561ddc4a393555f855a7aa7897106d1b Mon Sep 17 00:00:00 2001 From: Sebastian Golasch Date: Fri, 3 Mar 2017 12:27:06 +0100 Subject: [PATCH] fix(seasons): Fixes #11 - Seasons are now properly ordered. Remove print debugging statement --- resources/lib/KodiHelper.py | 2 +- resources/lib/Navigation.py | 2 +- resources/lib/NetflixSession.py | 17 ++++++----------- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/resources/lib/KodiHelper.py b/resources/lib/KodiHelper.py index 364fd7a..f96dd2f 100644 --- a/resources/lib/KodiHelper.py +++ b/resources/lib/KodiHelper.py @@ -532,7 +532,7 @@ class KodiHelper: for index in seasons_sorted: for season_id in season_list: season = season_list[season_id] - if int(season['id']) == index: + if int(season['idx']) == index: li = xbmcgui.ListItem(label=season['text']) # add some art to the item li = self._generate_art_info(entry=season, li=li) diff --git a/resources/lib/Navigation.py b/resources/lib/Navigation.py index 16c0a6d..afed9e3 100644 --- a/resources/lib/Navigation.py +++ b/resources/lib/Navigation.py @@ -252,7 +252,7 @@ class Navigation: # sort seasons by index by default (they´re coming back unsorted from the api) seasons_sorted = [] for season_id in season_list: - seasons_sorted.append(int(season_list[season_id]['id'])) + seasons_sorted.append(int(season_list[season_id]['idx'])) seasons_sorted.sort() return self.kodi_helper.build_season_listing(seasons_sorted=seasons_sorted, season_list=season_list, build_url=self.build_url) diff --git a/resources/lib/NetflixSession.py b/resources/lib/NetflixSession.py index 46f2f2d..e87cc82 100644 --- a/resources/lib/NetflixSession.py +++ b/resources/lib/NetflixSession.py @@ -243,9 +243,6 @@ class NetflixSession: if 'memberContext' in dict(item).keys(): for important_field in important_fields: user_data.update({important_field: item['memberContext']['data']['userInfo'][important_field]}) - print '.............' - print user_data - print '.............' return user_data def _parse_profile_data (self, netflix_page_data): @@ -284,9 +281,6 @@ class NetflixSession: for item in netflix_page_data: if 'hasViewedRatingWelcomeModal' in dict(item).keys(): for profile_id in item: - print '------------' - print profile_id - print '------------' if self._is_size_key(key=profile_id) == False and type(item[profile_id]) == dict and item[profile_id].get('avatar', False) != False: profile = {'id': profile_id} for important_field in important_fields: @@ -366,11 +360,6 @@ class NetflixSession: self.esn = self._parse_esn_data(netflix_page_data=netflix_page_data) self.api_data = self._parse_api_base_data(netflix_page_data=netflix_page_data) self.profiles = self._parse_profile_data(netflix_page_data=netflix_page_data) - if self.user_data.get('bauthURL', False) == False: - print '...............' - print page_soup.text.find('authURL'); - print '...............' - def is_logged_in (self, account): """Determines if a user is already logged in (with a valid cookie), @@ -1326,8 +1315,14 @@ class NetflixSession: for key in videos.keys(): if self._is_size_key(key=key) == False: video_key = key + # get season index + sorting = {} + for idx in videos[video_key]['seasonList']: + if self._is_size_key(key=idx) == False and idx != 'summary': + sorting[int(videos[video_key]['seasonList'][idx][1])] = int(idx) return { season['summary']['id']: { + 'idx': sorting[season['summary']['id']], 'id': season['summary']['id'], 'text': season['summary']['name'], 'shortName': season['summary']['shortName'], -- 2.30.2