From 19b5317d7277d6f2fa823f50fa3fc2127a64364e Mon Sep 17 00:00:00 2001 From: Tzafrir Cohen Date: Wed, 29 Nov 2017 16:38:07 +0200 Subject: WIP --- default.py | 53 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 46 insertions(+), 7 deletions(-) diff --git a/default.py b/default.py index 8a82b01..95779a7 100644 --- a/default.py +++ b/default.py @@ -50,7 +50,17 @@ class Page: self.addon_handle = int(argv[1]) self.args = urlparse.parse_qs(argv[2][1:]) self.mode = self.args.get('mode', None) - self.content_type = self.args.get('content_type', None) + content_type = self.args.get('content_type', None) + if content_type: + self.content_type = content_type[0] + else: + self.content_type = None + + def is_video(self): + return self.content_type == 'video' + + def is_audio(self): + return self.content_type == 'audio' def build_url(self, query): #query['addon_handle'] = self.addon_handle @@ -201,7 +211,7 @@ def show_menu(page): expiration=datetime.timedelta(days=1)) -def main_page(page): +def video_main_page(page): url = page.build_url({'mode': 'shows', 'name': 'programs'}) li = xbmcgui.ListItem(u'תוכניות טלוויזיה') page.add_directory_item(url=url, listitem=li, isFolder=True) @@ -215,16 +225,29 @@ def main_page(page): page.end_directory() -def main(): - page = Page(sys.argv) +def video_main(page): + if page.mode is not None: + mode = page.mode[0] - trace(' | '.join(sys.argv)) - trace("{}".format(page)) + if page.mode is None: + video_main_page(page) + elif mode == 'shows': + video_top_menu(page, page.args['name'][0]) + elif mode == 'show': + show_menu(page) + elif mode == 'placeholder': + name = page.args['name'][0] + page.placeholder_folder(name) + else: + trace("No handler for mode '{}'".format(mode)) + + +def audio_main(page): if page.mode is not None: mode = page.mode[0] if page.mode is None: - main_page(page) + audio_main_page(page) elif mode == 'shows': video_top_menu(page, page.args['name'][0]) elif mode == 'show': @@ -234,6 +257,22 @@ def main(): page.placeholder_folder(name) else: trace("No handler for mode '{}'".format(mode)) + + +def main(): + trace(' | '.join(sys.argv)) + page = Page(sys.argv) + + trace("{}".format(page)) + trace("Video? " + str(page.is_video()) + ", audio? " + str(page.is_audio())) + + if page.is_audio(): + page.placeholder_folder("audio") + elif page.is_video(): + video_main(page) + else: + page.placeholder_folder("no content type") + trace("Done showing page") -- cgit v1.2.3