def onnow_list(eurosport): # Get the plugin handle __handle__ = int(sys.argv[1]) onnow = eurosport.onnow() videos = onnow.videos() # Create list for items listing = [] for video in sorted(videos, key=channel_schedule_key): build_list('onnow', video, listing, onnow) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)
def onearlier_list(eurosport): # Get the plugin handle __handle__ = int(sys.argv[1]) onearlier = eurosport.onearlier() videos = onearlier.videos() # Create list for items listing = [] for video in sorted(videos, key=schedule_start_key): build_list('onearlier', video, listing, onearlier) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)
def daily_list(eurosport,collid,day): # Get the plugin handle __handle__ = int(sys.argv[1]) dailyList = eurosport.dailyList(collid,day) videos = dailyList.videos() # Create list for items listing = [] for video in sorted(videos, key=schedule_start_key): build_list('daily', video, listing, dailyList) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)
def ondemand_list(eurosport): # Get the plugin handle __handle__ = int(sys.argv[1]) ondemand = eurosport.ondemand() sports = ondemand.sports() # Create list for items listing = [] for sport in sorted(sports, key=sport_sort_key): build_list('ondemand', sport, listing, ondemand) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)
def ontv_list(eurosport): # Get the plugin handle __handle__ = int(sys.argv[1]) # Get todays date date_today = datetime.today().strftime('%Y-%m-%d') # Get collection id collection_id = getcollectionid(eurosport) ontv = eurosport.ontv(collection_id, date_today) videos = ontv.videos() # Create list for items listing = [] for video in sorted(videos, key=channel_schedule_key): build_list('ontv', video, listing, ontv) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)
def sport_list(eurosport, sport): # Get the plugin handle __handle__ = int(sys.argv[1]) sport = eurosport.sport(sport) videos = sport.videos() # Create list for items listing = [] if sortOrder == "Ending soon": for video in sorted(videos, key=publish_end_key): build_list('sport', video, listing, sport) elif sortOrder == 'Earliest first': for video in sorted(videos, key=publish_start_key): build_list('sport', video, listing, sport) else: for video in sorted(videos, key=publish_start_key, reverse=True): build_list('sport', video, listing, sport) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)
def olympics_pager(eurosport, collid, day, pageNumber): # Get the plugin handle __handle__ = int(sys.argv[1]) nextPage = False # Fudge eurosport page number if int(pageNumber) == 1 or int(pageNumber) == 2: euroPageNumber = 1 if int(pageNumber) == 3 or int(pageNumber) == 4: euroPageNumber = 2 if int(pageNumber) == 5 or int(pageNumber) == 6: euroPageNumber = 3 # Get videos for today & sort into transmission order response = eurosport.olyontoday(collid, day, euroPageNumber) videos = response.videos() sortedVideos = sorted(videos, key=schedule_start_key) # Set page limits if len(sortedVideos) == 0: start = 0 end = 0 nextPage = False else: if int(pageNumber) % 2 != 0: start = 0 end = 50 if len(sortedVideos) > 50: nextPage = True else: nextPage = False else: if len(sortedVideos) == 100: start = 50 end = 100 nextPage = True else: start = 50 end = len(sortedVideos) nextPage = False # Create subset of videos subset = sortedVideos[start:end] # Create list for items listing = [] for video in subset: build_list('daily', video, listing, response) if nextPage: __url__ = sys.argv[0] item = ListItem('Next') pageNumber = int(pageNumber) + 1 url = '{0}?action=OlympicsPager&collid={1}&day={2}&pageNumber={3}'.format( __url__, collid, day, pageNumber) isfolder = True listing.append((url, item, isfolder)) addDirectoryItems(__handle__, listing, len(listing)) endOfDirectory(__handle__)