def listplayer(userid: UserID) -> Dict[str, Any]: frontend = JubeatFrontend(g.data, g.config, g.cache) info = frontend.get_all_player_info([userid])[userid] return { 'player': info, }
def viewsettings() -> Response: frontend = JubeatFrontend(g.data, g.config, g.cache) userid = g.userID info = frontend.get_all_player_info([userid])[userid] versions = sorted( [version for (game, version, name) in frontend.all_games()], reverse=True, ) if not info: abort(404) all_emblems = frontend.get_all_items(versions) return render_react( 'Jubeat Game Settings', 'jubeat/settings.react.js', { 'player': info, 'versions': {version: name for (game, version, name) in frontend.all_games()}, 'emblems': all_emblems, }, { 'updatename': url_for('jubeat_pages.updatename'), 'updateemblem': url_for('jubeat_pages.updateemblem') }, )
def showjubility(userid: UserID) -> Response: frontend = JubeatFrontend(g.data, g.config, g.cache) info = frontend.get_all_player_info([userid])[userid] if not info: abort(404) latest_version = sorted(info.keys(), reverse=True)[0] return render_react( f'{info[latest_version]["name"]}\'s Jubility Breakdown', 'jubeat/jubility.react.js', { 'playerid': userid, 'player': info, 'songs': frontend.get_all_songs(), 'versions': {version: name for (game, version, name) in frontend.all_games()}, }, { 'refresh': url_for('jubeat_pages.listplayer', userid=userid), 'individual_score': url_for('jubeat_pages.viewtopscores', musicid=-1), 'profile': url_for('jubeat_pages.viewplayer', userid=userid), }, )
def viewplayer(userid: UserID) -> Response: frontend = JubeatFrontend(g.data, g.config, g.cache) info = frontend.get_all_player_info([userid])[userid] if not info: abort(404) latest_version = sorted(info.keys(), reverse=True)[0] return render_react( f'{info[latest_version]["name"]}\'s Jubeat Profile', 'jubeat/player.react.js', { 'playerid': userid, 'own_profile': userid == g.userID, 'player': info, 'versions': {version: name for (game, version, name) in frontend.all_games()}, }, { 'refresh': url_for('jubeat_pages.listplayer', userid=userid), 'records': url_for('jubeat_pages.viewrecords', userid=userid), 'scores': url_for('jubeat_pages.viewscores', userid=userid), 'jubility': url_for('jubeat_pages.showjubility', userid=userid) }, )
def searchrivals() -> Dict[str, Any]: frontend = JubeatFrontend(g.data, g.config, g.cache) version = int(request.get_json()['version']) name = request.get_json()['term'] # Try to treat the term as an extid extid = ID.parse_extid(name) matches = set() profiles = g.data.remote.user.get_all_profiles(GameConstants.JUBEAT, version) for (userid, profile) in profiles: if profile.get_int('extid') == extid or profile.get_str('name').lower() == name.lower(): matches.add(userid) playerinfo = frontend.get_all_player_info(list(matches), allow_remote=True) return { 'results': playerinfo, }
def viewsettings() -> Response: frontend = JubeatFrontend(g.data, g.config, g.cache) userid = g.userID info = frontend.get_all_player_info([userid])[userid] if not info: abort(404) return render_react( 'Jubeat Game Settings', 'jubeat/settings.react.js', { 'player': info, 'versions': {version: name for (game, version, name) in frontend.all_games()}, }, { 'updatename': url_for('jubeat_pages.updatename'), }, )