def relogin(userid): config = plugin.get_storage('config') users = config['users'] old_password = users[userid] password = (xbmcutils.keyboard(old_password, '请输入密码', True) or '').strip() if not password: return api = creaet_api_with_publickey() try: login_info = api.try_login(userid, password, on_verifycode) except Exception as e: plugin.log.info(traceback.format_exc()) if isinstance(e, ClientApiError): e = e.get_errmsg() xbmcutils.show_msg('登录失败: %s' % e) return if not login_info: return _save_user_info(config, userid, password, login_info, api) plugin.notify('用户登录成功', delay=3000) xbmcutils.refresh()
def add_user(): userid = (xbmcutils.keyboard(heading='请输入您的百度云帐号') or '').strip() if not userid: return config = plugin.get_storage('config') users = config.setdefault('users', {}) if userid in users: plugin.notify('用户已存在', delay=2000) return password = (xbmcutils.keyboard(heading='请输入密码', hidden=True) or '').strip() if not password: return api = creaet_api_with_publickey() try: login_info = api.try_login(userid, password, on_verifycode) except Exception as e: plugin.log.info(traceback.format_exc()) if isinstance(e, ClientApiError): e = e.get_errmsg() xbmcutils.show_msg('登录失败: %s' % e) return if not login_info: return _save_user_info(config, userid, password, login_info, api) plugin.notify('用户添加成功', delay=3000) xbmcutils.refresh()
def delete_path(userid, path): api = get_api(userid) try: plugin.notify('正在删除文件,请稍候...', delay=2000) api.delete(path) except PCSApiError as e: xbmcutils.show_msg(str(e), '错误') else: xbmc.sleep(1000) xbmcutils.refresh()
def select_user(): config = plugin.get_storage('config') users = config.get('users', {}) if not users: return userid_list = users.keys() userid_list.insert(0, NULL_USER) choice = xbmcutils.select('请选择活动帐号', userid_list) if choice < 0: return config['current_user'] = userid_list[choice] if choice > 0 else None config.sync() xbmcutils.refresh()
def select_user(): config = plugin.get_storage("config") users = config.get("users", {}) if not users: return userid_list = users.keys() userid_list.insert(0, NULL_USER) choice = xbmcutils.select("请选择活动帐号", userid_list) if choice < 0: return config["current_user"] = userid_list[choice] if choice > 0 else None config.sync() xbmcutils.refresh()
def remove_user(userid): if not xbmcutils.yesno('注销帐号', '是否注销帐号 %s?' % userid): return config = plugin.get_storage('config') users = config.setdefault('users', {}) users.pop(userid, None) if config.get('current_user') == userid: config['current_user'] = users.keys()[0] if users else None config.sync() userdata = plugin.get_storage('userdata') userdata.pop(userid, None) userdata.sync() plugin.notify('帐号已经注销成功', delay=3000) xbmcutils.refresh()
def remove_user(userid): if not xbmcutils.yesno("注销帐号", "是否注销帐号 %s?" % userid): return config = plugin.get_storage("config") users = config.setdefault("users", {}) users.pop(userid, None) if config.get("current_user") == userid: config["current_user"] = users.keys()[0] if users else None config.sync() userdata = plugin.get_storage("userdata") userdata.pop(userid, None) userdata.sync() plugin.notify("帐号已经注销成功", delay=3000) xbmcutils.refresh()
def unfollow(userid, follow_uk): api = get_api(userid) api.unfollow(follow_uk) xbmcutils.refresh()