@@ -45,7 +45,8 @@ def build_main_menu(self, identifiers=[]):
45
45
self .srgssr .log ('build_main_menu' )
46
46
47
47
def display_item (item ):
48
- return item in identifiers and self .srgssr .get_boolean_setting (item )
48
+ return item in identifiers and \
49
+ self .srgssr .get_boolean_setting (item )
49
50
50
51
main_menu_list = [
51
52
{
@@ -123,17 +124,13 @@ def display_item(item):
123
124
'identifier' : f'{ self .srgssr .bu .upper ()} _YouTube' ,
124
125
'name' : self .srgssr .plugin_language (30074 ),
125
126
'mode' : 30 ,
126
- 'displayItem' : display_item (f'{ self .srgssr .bu .upper ()} _YouTube' ),
127
+ 'displayItem' : display_item (
128
+ f'{ self .srgssr .bu .upper ()} _YouTube' ),
127
129
'icon' : self .srgssr .get_youtube_icon (),
128
130
}
129
131
]
130
- # folders = []
131
- # for ide in identifiers:
132
- # item = next((e for e in main_menu_list if
133
- # e['identifier'] == ide), None)
134
- # if item:
135
- # folders.append(item)
136
- folders = [item for item in main_menu_list if item ['identifier' ] in identifiers ]
132
+ folders = [item for item in main_menu_list
133
+ if item ['identifier' ] in identifiers ]
137
134
self .build_folder_menu (folders )
138
135
139
136
def build_folder_menu (self , folders ):
@@ -177,7 +174,8 @@ def build_menu_apiv3(self, queries, mode=1000, page=1, page_hash=None,
177
174
# Build a combined and sorted list for several queries
178
175
items = []
179
176
for query in queries :
180
- data = json .loads (self .srgssr .open_url (self .srgssr .apiv3_url + query ))
177
+ data = json .loads (
178
+ self .srgssr .open_url (self .srgssr .apiv3_url + query ))
181
179
if data :
182
180
data = utils .try_get (data , ['data' , 'data' ], list , []) or \
183
181
utils .try_get (data , ['data' , 'medias' ], list , []) or \
@@ -202,7 +200,8 @@ def build_menu_apiv3(self, queries, mode=1000, page=1, page_hash=None,
202
200
url = f'{ self .srgssr .apiv3_url } { queries } { symb } next={ cursor } '
203
201
data = json .loads (self .srgssr .open_url (url ))
204
202
else :
205
- data = json .loads (self .srgssr .open_url (self .srgssr .apiv3_url + queries ))
203
+ data = json .loads (
204
+ self .srgssr .open_url (self .srgssr .apiv3_url + queries ))
206
205
cursor = utils .try_get (data , 'next' ) or utils .try_get (
207
206
data , ['data' , 'next' ])
208
207
@@ -263,7 +262,8 @@ def build_favourite_shows_menu(self):
263
262
Builds a list of folders for the favourite shows.
264
263
"""
265
264
self .srgssr .log ('build_favourite_shows_menu' )
266
- self .build_all_shows_menu (favids = self .srgssr .storage_manager .read_favourite_show_ids ())
265
+ self .build_all_shows_menu (
266
+ favids = self .srgssr .storage_manager .read_favourite_show_ids ())
267
267
268
268
def build_topics_menu (self ):
269
269
"""
@@ -287,9 +287,7 @@ def build_newest_favourite_menu(self, page=1):
287
287
list (default: 1)
288
288
"""
289
289
self .srgssr .log ('build_newest_favourite_menu' )
290
-
291
290
show_ids = self .srgssr .storage_manager .read_favourite_show_ids ()
292
-
293
291
queries = []
294
292
for sid in show_ids :
295
293
queries .append ('videos-by-show-id?showId=' + sid )
@@ -326,7 +324,8 @@ def build_menu_from_page(self, url, path):
326
324
return
327
325
data = utils .try_get (js , path , list , [])
328
326
if not data :
329
- self .srgssr .log ('build_menu_from_page: Could not find any data in json' )
327
+ self .srgssr .log (
328
+ 'build_menu_from_page: Could not find any data in json' )
330
329
return
331
330
for elem in data :
332
331
try :
@@ -375,19 +374,21 @@ def build_episode_menu(self, video_id_or_urn, include_segments=True,
375
374
segment_option -- Which segment option to use.
376
375
(default: False)
377
376
"""
378
- self .srgssr .log (f'build_episode_menu, video_id_or_urn = { video_id_or_urn } ' )
377
+ self .srgssr .log (
378
+ f'build_episode_menu, video_id_or_urn = { video_id_or_urn } ' )
379
379
if ':' in video_id_or_urn :
380
380
json_url = 'https://il.srgssr.ch/integrationlayer/2.0/' \
381
381
f'mediaComposition/byUrn/{ video_id_or_urn } .json'
382
382
video_id = video_id_or_urn .split (':' )[- 1 ]
383
383
else :
384
- json_url = f'https://il.srgssr.ch/integrationlayer/2.0/{ self . srgssr . bu } ' \
385
- f'/mediaComposition/video/{ video_id_or_urn } ' \
386
- ' .json'
384
+ json_url = f'https://il.srgssr.ch/integrationlayer/2.0/' \
385
+ f'{ self . srgssr . bu } /mediaComposition/video/' \
386
+ f' { video_id_or_urn } .json'
387
387
video_id = video_id_or_urn
388
388
self .srgssr .log (f'build_episode_menu. Open URL { json_url } ' )
389
389
390
- # TODO: we might not want to catch this error (error is better than empty menu)
390
+ # TODO: we might not want to catch this error
391
+ # (error is better than empty menu)
391
392
try :
392
393
json_response = json .loads (self .srgssr .open_url (json_url ))
393
394
except Exception :
@@ -551,8 +552,8 @@ def build_menu_by_urn(self, urn):
551
552
elif 'topic' in urn :
552
553
self .build_menu_from_page (
553
554
self .srgssr .playtv_url , ('state' , 'loaderData' , 'play-now' ,
554
- 'initialData' , 'pacPageConfigs' ,
555
- 'topicPages' , urn , 'sections' ))
555
+ 'initialData' , 'pacPageConfigs' ,
556
+ 'topicPages' , urn , 'sections' ))
556
557
557
558
def build_entry (self , json_entry , is_folder = False ,
558
559
fanart = None , urn = None , show_image_url = None ,
@@ -690,15 +691,18 @@ def folder_name(dato):
690
691
for i in range (number_of_days ):
691
692
dato = current_date + datetime .timedelta (- i )
692
693
list_item = xbmcgui .ListItem (label = folder_name (dato ))
693
- list_item .setArt ({'thumb' : self .srgssr .icon , 'fanart' : self .srgssr .fanart })
694
+ list_item .setArt (
695
+ {'thumb' : self .srgssr .icon , 'fanart' : self .srgssr .fanart })
694
696
name = dato .strftime ('%d-%m-%Y' )
695
697
purl = self .srgssr .build_url (mode = 24 , name = name )
696
698
xbmcplugin .addDirectoryItem (
697
699
handle = self .handle , url = purl ,
698
700
listitem = list_item , isFolder = True )
699
701
700
- choose_item = xbmcgui .ListItem (label = self .srgssr .language (30071 )) # Choose date
701
- choose_item .setArt ({'thumb' : self .srgssr .icon , 'fanart' : self .srgssr .fanart })
702
+ choose_item = xbmcgui .ListItem (
703
+ label = self .srgssr .language (30071 )) # Choose date
704
+ choose_item .setArt (
705
+ {'thumb' : self .srgssr .icon , 'fanart' : self .srgssr .fanart })
702
706
purl = self .srgssr .build_url (mode = 25 )
703
707
xbmcplugin .addDirectoryItem (
704
708
handle = self .handle , url = purl ,
@@ -825,7 +829,8 @@ def build_search_menu(self):
825
829
continue
826
830
list_item = xbmcgui .ListItem (label = item ['name' ])
827
831
list_item .setProperty ('IsPlayable' , 'false' )
828
- list_item .setArt ({'thumb' : item ['icon' ], 'fanart' : self .srgssr .fanart })
832
+ list_item .setArt (
833
+ {'thumb' : item ['icon' ], 'fanart' : self .srgssr .fanart })
829
834
url = self .srgssr .build_url (item ['mode' ])
830
835
xbmcplugin .addDirectoryItem (
831
836
handle = self .handle , url = url , listitem = list_item , isFolder = True )
@@ -834,7 +839,8 @@ def build_recent_search_menu(self):
834
839
"""
835
840
Lists folders for the most recent searches.
836
841
"""
837
- recent_searches = self .srgssr .storage_manager .read_searches (self .srgssr .fname_media_searches )
842
+ recent_searches = self .srgssr .storage_manager .read_searches (
843
+ self .srgssr .fname_media_searches )
838
844
mode = 28
839
845
for search in recent_searches :
840
846
list_item = xbmcgui .ListItem (label = search )
@@ -857,8 +863,8 @@ def build_search_media_menu(self, mode=28, name='', page=1, page_hash=''):
857
863
page_hash -- the page hash when coming from a previous page
858
864
(default: '')
859
865
"""
860
- self .srgssr .log (f'build_search_media_menu, mode = { mode } , name = { name } , \
861
- page = { page } , page_hash = { page_hash } ' )
866
+ self .srgssr .log (f'build_search_media_menu, mode = { mode } , \
867
+ name = { name } , page = { page } , page_hash = { page_hash } ' )
862
868
media_type = 'video'
863
869
if name :
864
870
# `name` is provided by `next_page` folder or
@@ -875,11 +881,12 @@ def build_search_media_menu(self, mode=28, name='', page=1, page_hash=''):
875
881
if not query_string :
876
882
self .srgssr .log ('build_search_media_menu: No input provided' )
877
883
return
878
-
879
- self .srgssr .storage_manager .write_search (self .srgssr .fname_media_searches , query_string )
884
+
885
+ self .srgssr .storage_manager .write_search (
886
+ self .srgssr .fname_media_searches , query_string )
880
887
query_string = quote_plus (query_string )
881
888
query = f'search/media?searchTerm={ query_string } '
882
889
883
890
query = f'{ query } &mediaType={ media_type } &includeAggregations=false'
884
891
cursor = page_hash if page_hash else ''
885
- return self .build_menu_apiv3 (query , page_hash = cursor )
892
+ return self .build_menu_apiv3 (query , page_hash = cursor )
0 commit comments