def login(ask=1, **kwargs): ask = int(ask) creds = get_credentials() if len(creds['username']) < 1 or len(creds['password']) < 1 or ask == 1: user_info = plugin_ask_for_creds(creds) if user_info['result']: set_credentials(username=user_info['username'], password=user_info['password']) login_result = api_login() if not login_result['result']: profile_settings = load_profile(profile_id=1) profile_settings['last_login_success'] = 0 profile_settings['pswd'] = '' save_profile(profile_id=1, profile=profile_settings) plugin_login_error(login_result) else: profile_settings = load_profile(profile_id=1) profile_settings['last_login_success'] = 1 save_profile(profile_id=1, profile=profile_settings) gui.ok(message=_.LOGIN_SUCCESS) api_get_channels() plugin_post_login() gui.refresh()
def _reset(**kwargs): if not gui.yes_no(_.PLUGIN_RESET_YES_NO): return _close() try: xbmc.executeJSONRPC( '{{"jsonrpc":"2.0","id":1,"method":"Addons.SetAddonEnabled","params":{{"addonid":"{}","enabled":false}}}}' .format(ADDON_ID)) profile_settings = load_profile(profile_id=1) proxyserver_port = int(profile_settings['proxyserver_port']) system = profile_settings['system'] arch = profile_settings['arch'] shutil.rmtree(ADDON_PROFILE) directory = os.path.dirname(ADDON_PROFILE + os.sep + "images") try: if not os.path.exists(directory): os.makedirs(directory) except: pass directory = os.path.dirname(ADDON_PROFILE + os.sep + "cache") try: if not os.path.exists(directory): os.makedirs(directory) except: pass query = "UPDATE `vars` SET `arch`='{arch}', `system`='{system}', `test_running`=0, `proxyserver_port`={proxyserver_port} WHERE profile_id={profile_id}".format( arch=arch, system=system, proxyserver_port=proxyserver_port, profile_id=1) query_settings(query=query, return_result=False, return_insert=False, commit=True) download_files() update_settings() update_prefs() except: pass xbmc.executeJSONRPC( '{{"jsonrpc":"2.0","id":1,"method":"Addons.SetAddonEnabled","params":{{"addonid":"{}","enabled":true}}}}' .format(ADDON_ID)) gui.notification(_.PLUGIN_RESET_OK) signals.emit(signals.AFTER_RESET) gui.refresh()
def logout(**kwargs): if not gui.yes_no(message=_.LOGOUT_YES_NO): return profile_settings = load_profile(profile_id=1) profile_settings['pswd'] = '' profile_settings['username'] = '' save_profile(profile_id=1, profile=profile_settings) gui.refresh()
def _reset(**kwargs): if not gui.yes_no(_.PLUGIN_RESET_YES_NO): return _close() try: method = 'Addons.SetAddonEnabled' json_rpc(method, {"addonid": ADDON_ID, "enabled": "false"}) remove_dir(directory="cache", ext=False) remove_dir(directory="tmp", ext=False) for file in glob.glob(os.path.join(ADDON_PROFILE, "stream*")): remove_file(file=file, ext=True) for file in glob.glob(os.path.join(ADDON_PROFILE, "*.json")): remove_file(file=file, ext=True) for file in glob.glob(os.path.join(ADDON_PROFILE, "*.xml")): remove_file(file=file, ext=True) if not os.path.isdir(os.path.join(ADDON_PROFILE, "cache")): os.makedirs(os.path.join(ADDON_PROFILE, "cache")) if not os.path.isdir(os.path.join(ADDON_PROFILE, "tmp")): os.makedirs(os.path.join(ADDON_PROFILE, "tmp")) if not os.path.isdir(os.path.join(ADDON_PROFILE, "movies")): os.makedirs(os.path.join(ADDON_PROFILE, "movies")) if not os.path.isdir(os.path.join(ADDON_PROFILE, "shows")): os.makedirs(os.path.join(ADDON_PROFILE, "shows")) except: pass method = 'Addons.SetAddonEnabled' json_rpc(method, {"addonid": ADDON_ID, "enabled": "true"}) gui.notification(_.PLUGIN_RESET_OK) signals.emit(signals.AFTER_RESET) gui.refresh()
def _reset(**kwargs): if not gui.yes_no(_.PLUGIN_RESET_YES_NO): return _close() try: xbmc.executeJSONRPC( '{{"jsonrpc":"2.0","id":1,"method":"Addons.SetAddonEnabled","params":{{"addonid":"{}","enabled":false}}}}' .format(ADDON_ID)) shutil.rmtree(ADDON_PROFILE) directory = os.path.dirname(ADDON_PROFILE + os.sep + "images/empty.jpg") try: if not os.path.exists(directory): os.makedirs(directory) except: pass directory = os.path.dirname(ADDON_PROFILE + os.sep + "cache/empty.json") try: if not os.path.exists(directory): os.makedirs(directory) except: pass except: pass xbmc.executeJSONRPC( '{{"jsonrpc":"2.0","id":1,"method":"Addons.SetAddonEnabled","params":{{"addonid":"{}","enabled":true}}}}' .format(ADDON_ID)) gui.notification(_.PLUGIN_RESET_OK) signals.emit(signals.AFTER_RESET) gui.refresh()
def _settings(**kwargs): _close() settings.open() gui.refresh()
def api_remove_from_watchlist(id, **kwargs): if api_remove_from_watchlist(id=id): gui.refresh() gui.notification(_.REMOVED_FROM_WATCHLIST) else: gui.notification(_.REMOVE_FROM_WATCHLIST_FAILED)
def reset_addon(**kwargs): plugin._reset() gui.refresh()