def miscellany(self): self.data = self.misc_list() self.list = [] for item in self.data: if control.setting('lang_split') == '0': if 'Greek' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[2]) elif 'English' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[0]) else: li = control.item(label=item['title']) elif control.setting('lang_split') == '1': li = control.item(label=item['title'].partition(' - ')[0]) elif control.setting('lang_split') == '2': li = control.item(label=item['title'].partition(' - ')[2]) else: li = control.item(label=item['title']) li.setArt({ 'icon': item['icon'], 'fanart': control.addonInfo('fanart') }) url = item['url'] isFolder = True self.list.append((url, li, isFolder)) control.addItems(syshandle, self.list) control.directory(syshandle)
def paper_index(link): menu = [] items = _paper_index(link) if items is None: return for i in items: li = control.item(label=i['title']) li.setArt({ 'poster': i['image'], 'thumb': i['image'], 'fanart': control.join(control.addonPath, 'resources', 'media', 'newspaper_fanart.png') }) li.setInfo('image', {'title': i['title'], 'picturepath': i['url']}) url = i['url'] menu.append((url, li, False)) control.content(syshandle, 'images') control.addItems(syshandle, menu) control.directory(syshandle)
def kids_songs(self): self.data = [ { 'title': u'Zouzounia TV kids songs - Παιδικά Τραγούδια από τα Ζουζούνια', 'url': 'plugin://plugin.video.zouzounia.tv/', 'icon': 'https://yt3.ggpht.com/-zhH35bOsqec/AAAAAAAAAAI/AAAAAAAAAAA/LxUO6o-ZHPc/s256-c-k-no-mo-rj-c0xffffff/photo.jpg' } , { 'title': u'Greek songs with lyrics No.1 - Ελληνικά παιδικά τραγούδια με στίχους No.1', 'url': '{0}/channel/UCUmGu9Ncu5NeaEjwpLXW0PQ/'.format(YT_ADDON), 'icon': 'https://yt3.ggpht.com/-MVbyrB7DJrY/AAAAAAAAAAI/AAAAAAAAAAA/WjLUCzyX3zI/s256-c-k-no-mo-rj-c0xffffff/photo.jpg' } , { 'title': u'Greek songs with lyrics No.2 - Ελληνικά παιδικά τραγούδια με στίχους No.2', 'url': '{0}/channel/UCyENiZwRYzfXzbwP-Mxk9oA/'.format(YT_ADDON), 'icon': 'https://yt3.ggpht.com/-Jdrq5I2r5Tc/AAAAAAAAAAI/AAAAAAAAAAA/z7IPqFS7jqA/s256-c-k-no-mo-rj-c0xffffff/photo.jpg' } , { 'title': u'Greek Karaoke - Ελληνικό Καραόκε', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeRlD0w1GXbitRL6sbyMscVi/'.format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/Iz5P8xJel-U/mqdefault.jpg' } , { 'title': u'Karaoke for English Learning - Μαθαίνω Αγγλικά με καραόκε', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeSL-M5Q0qG3Eszj0I1O98bT/'.format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/L2atYpQ7Zbg/mqdefault.jpg' } , { 'title': u'Learning Music for Kids - Μαθαίνω Μουσική, για παιδιά', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeRr5VH-HylSX89MHXQ_KyS0/'.format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/w5tF5J_BNfI/mqdefault.jpg' } ] for item in self.data: if control.setting('lang_split') == '0': if 'Greek' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[2]) elif 'English' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[0]) else: li = control.item(label=item['title']) elif control.setting('lang_split') == '1': li = control.item(label=item['title'].partition(' - ')[0]) elif control.setting('lang_split') == '2': li = control.item(label=item['title'].partition(' - ')[2]) else: li = control.item(label=item['title']) li.setArt({'icon': item['icon'], 'fanart': control.addonInfo('fanart')}) self.list.append((item['url'], li, True)) control.addItems(syshandle, self.list) control.directory(syshandle)
def papers_index(self): self.data = self.front_pages() for i in self.data: i.update({'action': None, 'isFolder': 'False'}) try: self.list = [ item for item in self.data if item['group'] == int(control.setting('papers_group')) ] except Exception: self.list = [item for item in self.data if item['group'] == 0] control.setSetting('papers_group', '0') if control.setting('papers_group') == '1': integer = 30232 elif control.setting('papers_group') == '2': integer = 30233 elif control.setting('papers_group') == '3': integer = 30234 else: integer = 30231 switch = { 'title': control.lang(30047).format(control.lang(integer)), 'icon': iconname('switcher'), 'action': 'papers_switcher' } if control.setting('show_pic_switcher') == 'true': li = control.item(label=switch['title']) li.setArt({ 'icon': switch['icon'], 'fanart': control.addonInfo('fanart') }) url = '{0}?action={1}'.format(sysaddon, switch['action']) control.addItem(syshandle, url, li) for i in self.list: li = control.item(label=i['title']) li.setArt({ 'icon': i['image'], 'poster': i['image'], 'thumb': i['image'], 'fanart': control.addonInfo('fanart') }) li.setInfo('image', {'title': i['title'], 'picturepath': i['url']}) url = i['url'] self.directory.append((url, li, False)) control.addItems(syshandle, self.directory) control.directory(syshandle)
def papers_index(self): # self.data = cache.get(self.front_pages, 12) self.data = self.front_pages() if not self.data: return for i in self.data: i.update({'action': None, 'isFolder': 'False'}) self.list = [ item for item in self.data if any(item['group'] == group for group in [int(control.setting('papers_group'))]) ] if not control.setting('papers_group') == '0' else self.data if control.setting('papers_group') == '1': integer = 30231 elif control.setting('papers_group') == '2': integer = 30232 elif control.setting('papers_group') == '3': integer = 30233 elif control.setting('papers_group') == '4': integer = 30234 else: integer = 30235 switch = { 'title': control.lang(30047).format(control.lang(integer)), 'icon': iconname('switcher'), 'action': 'papers_switcher' } if control.setting('show_pic_switcher') == 'true': li = control.item(label=switch['title'], iconImage=switch['icon']) li.setArt({'fanart': control.addonInfo('fanart')}) url = '{0}?action={1}'.format(self.sysaddon, switch['action']) control.addItem(self.syshandle, url, li) for i in self.list: li = control.item(label=i['title'], iconImage=i['image']) li.setArt({ 'poster': i['image'], 'thumb': i['image'], 'fanart': control.addonInfo('fanart') }) li.setInfo('image', {'title': i['title'], 'picturepath': i['url']}) url = i['url'] isFolder = False self.directory.append((url, li, isFolder)) control.addItems(self.syshandle, self.directory) control.directory(self.syshandle)
def kids(self): self.data = [{ 'title': control.lang(30078), 'url': 'plugin://plugin.video.AliveGR/?action=kids_live', 'icon': iconname('kids_live') }, { 'title': control.lang(30074), 'url': '{0}?action={1}'.format(self.sysaddon, 'cartoon_collection'), 'icon': iconname('cartoon_collection') }, { 'title': control.lang(30075), 'url': '{0}?action={1}'.format(self.sysaddon, 'educational'), 'icon': iconname('educational') }, { 'title': control.lang(30076), 'url': '{0}?action={1}'.format(self.sysaddon, 'kids_songs'), 'icon': iconname('kids_songs') }] try: if control.condVisibility('System.HasAddon({0})'.format(sdik)): extended = [ dict((k, control.lang(v) if (k == 'title') else v) for k, v in item.items()) for item in extension.kids_indexer ] extended = [ dict((k, iconname(v) if (k == 'icon') else v) for k, v in item.items()) for item in extended ] self.data = [self.data[0]] + extended + self.data[1:] except: pass for item in self.data: li = control.item(label=item['title']) li.setArt({ 'icon': item['icon'], 'fanart': control.addonInfo('fanart') }) self.list.append((item['url'], li, True)) control.addItems(self.syshandle, self.list) control.directory(self.syshandle)
def listing(self, url=None, return_list=False, query=None): if url: self.data = self.items_list(url) else: self.data = self.replies_viewer(query) if self.data is None: return self.list = action_updater(self.data) self.menu = cm_updater(self.list, url) if return_list: return self.menu else: if active_mode()[1] == 'pictures': for i in self.menu: li = control.item(label=i['title']) li.setArt({ 'icon': i['image'], 'poster': i['image'], 'thumb': i['image'], 'fanart': control.addonInfo('fanart') }) li.setInfo('image', { 'title': i['title'], 'picturepath': i['url'] }) url = i['url'] self.directory.append((url, li, False)) control.addItems(init.syshandle, self.directory) control.directory(init.syshandle) else: directory.add(self.menu, content='movies')
def constructor(channels): menu = [] for item in channels: li = control.item(label=item['title']) li.setInfo('video', {'title': item['title'], 'plot': item['plot']}) li.setArt({ 'fanart': item['fanart'], 'icon': item['icon'], 'thumb': item['icon'] }) li.setProperty('IsPlayable', 'true') _url = '{0}?action=play&url={1}'.format(sysaddon, item['url']) _isFolder = False menu.append((_url, li, _isFolder)) control.addItems(syshandle, menu) control.directory(syshandle)
def miscellany(self): if control.setting('debug') == 'true': self.data = cache.get(self.misc_list, int(control.setting('cache_period'))) else: self.data = cache.get(self.misc_list, 24) if self.data is None: log_debug('Misc channels list did not load successfully') return self.list = [] for item in self.data: if control.setting('lang_split') == '0': if 'Greek' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[2]) elif 'English' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[0]) else: li = control.item(label=item['title']) elif control.setting('lang_split') == '1': li = control.item(label=item['title'].partition(' - ')[0]) elif control.setting('lang_split') == '2': li = control.item(label=item['title'].partition(' - ')[2]) else: li = control.item(label=item['title']) li.setArt({ 'icon': item['icon'], 'fanart': control.addonInfo('fanart') }) url = item['url'] isFolder = True self.list.append((url, li, isFolder)) control.addItems(self.syshandle, self.list) control.directory(self.syshandle)
def news(self): items = [{ 'title': control.lang(30230), 'icon': 'https://www.iconexperience.com/_img/v_collection_png/256x256/shadow/newspaper.png', 'url': '{0}?action=papers'.format(self.sysaddon), 'fanart': control.addonInfo('fanart') }, { 'title': control.lang(30118), 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='ert_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.ert.gr/?action=episodes&url=http%3a%2f%2fwebtv.ert.gr%2fcategory%2fkatigories%2feidiseis%2f', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='ert_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30119), 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='ant1_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.antenna.gr/?action=news', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='ant1_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30120), 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='star_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.star.gr/?action=news', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='star_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30122), 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='alpha_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.alphatv.gr/?action=news', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='alpha_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30121), 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='skai_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.skai.gr/?action=news', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='skai_fanart.jpg', media_subfolder=False) }, { 'title': 'Euronews', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='euronews_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.euronews.com/?action=videos&url=%22methodName%22%3a%22content.getThemeDetails%22%2c%22params%22%3a%7b%22tId%22%3a%221%22%7d', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='euronews_fanart.jpg', media_subfolder=False) }] for item in items: list_item = control.item(label=item['title']) list_item.setArt({'icon': item['icon'], 'fanart': item['fanart']}) url = item['url'] isFolder = True self.list.append((url, list_item, isFolder)) control.addItems(self.syshandle, self.list) control.directory(self.syshandle)
def sports_news(self): self.data = [{ 'title': 'ERT Sports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='ert_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.ert.gr/?action=listing&url=https%3A%2F%2Fwww.ertflix.gr%2Fcategory%2Fathlitika%2F', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='ert_fanart.jpg', media_subfolder=False) }, { 'title': 'Ant1 Sports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='ant1_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.antenna.gr/?action=videos&url=https%3a%2f%2fwww.antenna.gr%2fwebtv%2f3062%2fathlitika%3fshowall', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='ant1_fanart.jpg', media_subfolder=False) }, { 'title': 'Alpha Sports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='alpha_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.alphatv.gr/?action=news_episodes&query=19&title=%ce%91%ce%b8%ce%bb%ce%b7%cf%84%ce%b9%ce%ba%ce%b1', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='alpha_fanart.jpg', media_subfolder=False) }, { 'title': 'Euronews Sports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='euronews_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.euronews.com/?action=videos&url=%22methodName%22%3a%22content.getThemeDetails%22%2c%22params%22%3a%7b%22tId%22%3a%228%22%7d', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='euronews_fanart.jpg', media_subfolder=False) }, { 'title': 'NovaSports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='nova_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.novasports.gr/', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='nova_fanart.jpg', media_subfolder=False) }] for item in self.data: list_item = control.item(label=item['title']) list_item.setArt({'icon': item['icon'], 'fanart': item['fanart']}) _url_ = item['url'] isFolder = True self.list.append((_url_, list_item, isFolder)) control.addItems(syshandle, self.list) control.directory(syshandle)
def networks(self): networks = [{ 'title': 'EPT', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='ert_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.ert.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='ert_fanart.jpg', media_subfolder=False) }, { 'title': 'ANT1', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='ant1_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.antenna.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='ant1_fanart.jpg', media_subfolder=False) }, { 'title': 'STAR', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='star_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.star.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='star_fanart.jpg', media_subfolder=False) }, { 'title': 'ALPHA', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='alpha_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.alphatv.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='alpha_fanart.jpg', media_subfolder=False) }, { 'title': 'SKAI', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='skai_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.skai.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='skai_fanart.jpg', media_subfolder=False) }, { 'title': 'EURONEWS', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='euronews_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.euronews.com/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='euronews_fanart.jpg', media_subfolder=False) }, { 'title': 'NOVASPORTS', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='nova_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.novasports.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='nova_fanart.jpg', media_subfolder=False) }, { 'title': 'GREEK VOICE', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='wzra48_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.greekvoice/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='wzra48_fanart.jpg', media_subfolder=False) }, { 'title': 'TORONTO CHANNELS', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='tc_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.Toronto-Channels/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='tc_fanart.jpg', media_subfolder=False) }, { 'title': 'MONTREAL GREEK TV', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='mg_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.montreal.greek-tv/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='mgtv_fanart.jpg', media_subfolder=False) }, { 'title': 'FAROS ON AIR', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='faros_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.faros.on-air/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='faros_fanart.jpg', media_subfolder=False) }] for network in networks: list_item = control.item(label=network['title']) list_item.setArt({ 'icon': network['icon'], 'fanart': network['fanart'] }) url = network['url'] self.list.append((url, list_item, True)) control.addItems(self.syshandle, self.list) control.directory(self.syshandle)
def external_links(self): self.data = [{ 'title': control.lang(30030), 'icon': control.addonInfo('icon'), 'url': 'https://farosonair.com/' }, { 'title': control.lang(30031), 'icon': control.addonInfo('icon'), 'url': 'https://farosonair.com/category/farosnews/' }, { 'title': control.lang(30028), 'icon': 'facebook.png', 'url': 'https://www.facebook.com/farosonair' }, { 'title': control.lang(30029), 'icon': 'instagram.png', 'url': 'https://www.instagram.com/farosonair16/' }, { 'title': control.lang(30026), 'icon': 'twitter.png', 'url': 'https://twitter.com/faros_on_air' }, { 'title': control.lang(30027), 'icon': 'youtube_sub.png', 'url': 'https://www.youtube.com/channel/UCfU04d4DbqpyotwfgxRS6EQ?sub_confirmation=1' }] for i in self.data: i.update({'action': 'open_website'}) if control.setting('external_action') == 'false': links = [i['url'] for i in self.data] titles = [i['title'] for i in self.data] choice = control.selectDialog(titles) if choice >= 0: if control.condVisibility('System.Platform.Android'): from resources.lib.helpers import android_activity android_activity(links[choice]) else: import webbrowser webbrowser.open(links[choice]) else: pass else: for i in self.data: if i['icon'] != control.addonInfo('icon'): image = control.join(control.addonPath, 'resources', 'media', i['icon']) else: image = control.addonInfo('icon') li = control.item(label=i['title']) li.setArt({ 'poster': image, 'thumb': image, 'fanart': control.addonInfo('fanart') }) li.setInfo('video', {'title': i['title']}) url = '{0}?action={1}&url={2}'.format(sysaddon, i['action'], i['url']) self.list.append((url, li, False)) control.addItems(syshandle, self.list) control.directory(syshandle)
def sports_news(self): self.data = [{ 'title': 'EPT Sports', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='ert_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.ert.gr/?action=episodes&url=http%3a%2f%2fwebtv.ert.gr%2fcategory%2fkatigories%2fathlitika%2f', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='ert_fanart.jpg', media_subfolder=False) }, { 'title': 'Skai Sports', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='skai_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.skai.gr/?action=sports', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='skai_fanart.jpg', media_subfolder=False) }, { 'title': 'Euronews Sports', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='euronews_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.euronews.com/?action=videos&url=%22methodName%22%3a%22content.getThemeDetails%22%2c%22params%22%3a%7b%22tId%22%3a%228%22%7d', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='euronews_fanart.jpg', media_subfolder=False) }, { 'title': 'NovaSports', 'icon': control.addonmedia(addonid=art_id, theme='networks', icon='nova_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.novasports.gr/', 'fanart': control.addonmedia(addonid=art_id, theme='networks', icon='nova_fanart.jpg', media_subfolder=False) }] for item in self.data: list_item = control.item(label=item['title']) list_item.setArt({'icon': item['icon'], 'fanart': item['fanart']}) _url_ = item['url'] isFolder = True self.list.append((_url_, list_item, isFolder)) control.addItems(self.syshandle, self.list) control.directory(self.syshandle)
def cartoon_collection(self): self.data = [{ 'title': u'Classical Films - Κλασσικά Κινηματογραφημένα', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PLF0A5359586D57FE8/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/X9RxumkELfE/mqdefault.jpg' }, { 'title': u'Mythology - Μυθολογία', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PL3E1C926284F12F32/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/kpd-Z_VK6Jc/mqdefault.jpg' }, { 'title': u'Aesop\'s Fables - Αισώπου Μύθοι', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PL4FF9F773D3596E60/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/Gkr-pV_gY48/mqdefault.jpg' }, { 'title': u'Greek Fairy Tales - Ελληνικά Παραμύθια', 'url': '{0}/channel/UC9VmWb5Wd5sc4E4k1CevEug/'.format(YT_ADDON), 'icon': 'https://yt3.ggpht.com/-n8KoGQ6U_zc/AAAAAAAAAAI/AAAAAAAAAAA/SoUWvy5-Tb8/s256-c-k-no-mo-rj-c0xffffff/photo.jpg' }, { 'title': u'Fairy Tales & Songs - Παραμύθια και Τραγούδια', 'url': '{0}/channel/UCClAFTnbGditvz9_7_7eumw/playlists/'.format(YT_ADDON), 'icon': 'https://yt3.ggpht.com/-mBPhzUcDIHM/AAAAAAAAAAI/AAAAAAAAAAA/pNQi44zsLq8/s256-c-k-no-mo-rj-c0xffffff/photo.jpg' }, { 'title': u'Collection Miscellaneous - Συλλογή Διάφορα', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PL4075DA390F6E82B1/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/MPtZ_VHNg34/mqdefault.jpg' }] for i in self.data: i['url'] = '?'.join( [i['url'], 'addon_id={}'.format(control.addonInfo('id'))]) additional = { 'title': u'Various full length movies - Διάφορες ταινίες πλήρους μήκους', 'url': '{0}?action={1}'.format(sysaddon, 'cartoon_various'), 'icon': iconname('kids') } if control.setting('show_alt_vod') == 'true': self.data.insert(0, additional) for item in self.data: if control.setting('lang_split') == '0': if 'Greek' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[2]) elif 'English' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[0]) else: li = control.item(label=item['title']) elif control.setting('lang_split') == '1': li = control.item(label=item['title'].partition(' - ')[0]) elif control.setting('lang_split') == '2': li = control.item(label=item['title'].partition(' - ')[2]) else: li = control.item(label=item['title']) li.setArt({ 'icon': item['icon'], 'fanart': control.addonInfo('fanart') }) self.list.append((item['url'], li, True)) control.addItems(syshandle, self.list) control.directory(syshandle)
def educational(self): self.data = [{ 'title': u'Learn about animals - Μάθε για τα ζώα', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PL7Adbo89X3LRboPyGr30sIRMnc20C77ui/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/_fDdVYJA9Vk/mqdefault.jpg' }, { 'title': u'Secondary school education - Εκπαίδευση Δημοτικού Σχολείου', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PL7Adbo89X3LQvxn7RyUySvQy6C6hTUTXf/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/isxjo7M2h74/mqdefault.jpg' }, { 'title': u'Sexual Education for children - Σεξουαλική Αγωγή για παιδιά', 'url': '{0}/channel/UCsKQX1G7XQO2a5nD9nrse-Q/playlist/PL7Adbo89X3LRy-LRQEeRdT_kf5iFdofsu/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/l9gN1F6S3bc/mqdefault.jpg' }, { 'title': u'World\'s Seven Ancient Miracles - Τα Επτά Θαύματα του Αρχαίου Κόσμου', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeThKG7GK1k2DRgB5im-vPHc/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/5nEDQ_jYJIo/mqdefault.jpg' }, { 'title': u'The land of Knowledge - Η Χώρα των Γνώσεων', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeS-ZVlk0vgNdx5igsFvYN8s/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/K-Ba9l2uDDk/mqdefault.jpg' }, { 'title': u'Ancient Egypt - Αρχαία Αίγυπτος', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeTrRcdIHjtziNEkqPqalUOa/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/pV8EMy8gaXI/mqdefault.jpg' }, { 'title': u'Explorers & Seafarers - Εξερευνητές και Θαλασσοπόροι', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeQRBb7ayyynWgYEUbkQKPpJ/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/SPdnnVNZgwc/mqdefault.jpg' }, { 'title': u'Mini Encyclopaedia - Μικρή Εγκυκλοπαίδεια', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeTLMi1bFqLC_cn5ZAtqSvlV/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/o31_SNQFYhc/mqdefault.jpg' }, { 'title': u'Miscellaneous Documentaties - Διάφορα Ντοκυμαντέρ', 'url': '{0}/channel/UCp_0VMwvn5LeJMhtreBFIcA/playlist/PLP25S0MkvCeRY94Yga82ZYsPJ9Xbe3OiZ/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/Vf_o_Q5ZQRg/mqdefault.jpg' }, { 'title': u'Learn Ancient Greek - Μάθετε Αρχαία Ελληνικά', 'url': '{0}/channel/UC5quWsvOBNUaR-Duv3K-JFA/playlist/PLxqCshQO3A1HnlHwxda3wX_kzY-C0gpZq/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/st01jb_Xb7g/mqdefault.jpg' }, { 'title': u'Drawings - Ζωγραφιές', 'url': '{0}/channel/UC5quWsvOBNUaR-Duv3K-JFA/playlist/PLxqCshQO3A1FmjzGXbfIjTSXcysLfPfKM/' .format(YT_ADDON), 'icon': 'https://i.ytimg.com/vi/GdiLSXePno8/mqdefault.jpg' }] for item in self.data: if control.setting('lang_split') == '0': if 'Greek' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[2]) elif 'English' in control.infoLabel('System.Language'): li = control.item(label=item['title'].partition(' - ')[0]) else: li = control.item(label=item['title']) elif control.setting('lang_split') == '1': li = control.item(label=item['title'].partition(' - ')[0]) elif control.setting('lang_split') == '2': li = control.item(label=item['title'].partition(' - ')[2]) else: li = control.item(label=item['title']) li.setArt({ 'icon': item['icon'], 'fanart': control.addonInfo('fanart') }) self.list.append((item['url'], li, True)) control.addItems(syshandle, self.list) control.directory(syshandle)
def news(self): items = [{ 'title': control.lang(30230), 'icon': 'https://www.iconexperience.com/_img/v_collection_png/256x256/shadow/newspaper.png', 'url': '{0}?action=papers'.format(sysaddon), 'fanart': control.addonInfo('fanart') }, { 'title': control.lang(30118), 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='ert_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.ert.gr/?action=categories&url=https%3A%2F%2Fwww.ertflix.gr%2Fshow%2Fnews', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='ert_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30119), 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='ant1_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.antenna.gr/?action=videos&url=https%3a%2f%2fwww.ant1news.gr%2fvideos', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='ant1_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30120), 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='star_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.star.gr/?action=news', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='star_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30122), 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='alpha_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.alphatv.gr/?action=news&url=https%3a%2f%2fwww.alphatv.gr%2fnews', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='alpha_fanart.jpg', media_subfolder=False) }, { 'title': control.lang(30121), 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='skai_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.skai.gr/?action=news', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='skai_fanart.jpg', media_subfolder=False) }] for item in items: list_item = control.item(label=item['title']) list_item.setArt({'icon': item['icon'], 'fanart': item['fanart']}) url = item['url'] isFolder = True if 'papers' not in item['url'] else False self.list.append((url, list_item, isFolder)) control.addItems(syshandle, self.list) control.directory(syshandle)
def sports_news(self): self.data = [ { 'title': 'ERTflix Sports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='ert_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.ert.gr/?action=categories&url=https%3a%2f%2fwww.ertflix.gr%2fshow%2fsport', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='ert_fanart.jpg', media_subfolder=False) } # , # { # 'title': 'Ant1 Sports', # 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='ant1_icon.png', media_subfolder=False), # 'url': 'plugin://plugin.video.antenna.gr/?action=videos&url=https%3a%2f%2fwww.antenna.gr%2fwebtv%2f3062%2fathlitika%3fshowall', # 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='ant1_fanart.jpg', media_subfolder=False) # } , { 'title': 'Alpha Sports', 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='alpha_icon.png', media_subfolder=False), 'url': 'plugin://plugin.video.alphatv.gr/?action=news_episodes&query=19&title=%ce%91%ce%b8%ce%bb%ce%b7%cf%84%ce%b9%ce%ba%ce%b1', 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='alpha_fanart.jpg', media_subfolder=False) } # , # { # 'title': 'NovaSports', # 'icon': control.addonmedia(addonid=ART_ID, theme='networks', icon='nova_icon.png', media_subfolder=False), # 'url': 'plugin://plugin.video.novasports.gr/', # 'fanart': control.addonmedia(addonid=ART_ID, theme='networks', icon='nova_fanart.jpg', media_subfolder=False) # } ] for item in self.data: list_item = control.item(label=item['title']) list_item.setArt({'icon': item['icon'], 'fanart': item['fanart']}) _url_ = item['url'] isFolder = True self.list.append((_url_, list_item, isFolder)) control.addItems(syshandle, self.list) control.directory(syshandle)
def main_menu(): menu = [] menu_items = [ { 'title': control.lang(30001), 'icon': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='television.png'), 'url': '{0}?action={1}'.format(sysaddon, 'live'), 'fanart': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='GV_TV2_fanart.jpg') }, { 'title': control.lang(30002), 'icon': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='radio.png'), 'url': '{0}?action={1}'.format(sysaddon, 'radio'), 'fanart': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='TILEMOUSIKI_fanart.jpg') }, { 'title': control.lang(30014), 'icon': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='GV_YT_icon.png'), 'url': 'plugin://plugin.video.youtube/channel/{0}/?addon_id={1}'.format( channel_id, control.addonInfo('id')), 'fanart': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='GV_TV2_fanart.jpg') } # , # { # 'title': control.lang(30004), # 'icon': control.addonmedia(addonid='resource.images.greekvoice.artwork', icon='settings.png'), # 'url': '{0}?action={1}'.format(sysaddon, 'settings'), # 'fanart': control.addonInfo('fanart') # } ] for item in menu_items: li = control.item(label=item['title']) li.setInfo('video', {'title': item['title']}) li.setArt({ 'fanart': item['fanart'], 'icon': item['icon'], 'thumb': item['icon'] }) _url = item['url'] if item['url'].endswith('settings'): _isFolder = False else: _isFolder = True menu.append((_url, li, _isFolder)) control.addItems(syshandle, menu) control.directory(syshandle)