fix(seasons): Fixes #11 - Seasons are now properly ordered. Remove print debugging...
authorSebastian Golasch <public@asciidisco.com>
Fri, 3 Mar 2017 11:27:06 +0000 (12:27 +0100)
committerSebastian Golasch <public@asciidisco.com>
Fri, 3 Mar 2017 11:27:06 +0000 (12:27 +0100)
resources/lib/KodiHelper.py
resources/lib/Navigation.py
resources/lib/NetflixSession.py

index 364fd7a82115786bf0d8560e640929d0f01c4ea4..f96dd2f60b1fe121d20fa78350d16f7210ccaa69 100644 (file)
@@ -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)
index 16c0a6d0b26ae20c581c7cbe1198094d55428d69..afed9e3bbf81db1f4db235635ef0b7b6e1fa1102 100644 (file)
@@ -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)
 
index 46f2f2de5e6652f1e95dfea803d0e609073bad3a..e87cc82ec4b9ad571fece060e378c56c781688c5 100644 (file)
@@ -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'],