def listplayer(userid: UserID) -> Dict[str, Any]: frontend = SoundVoltexFrontend(g.data, g.config, g.cache) info = frontend.get_all_player_info([userid])[userid] return { 'player': info, }
def searchrivals() -> Dict[str, Any]: frontend = SoundVoltexFrontend(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.SDVX, 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 = SoundVoltexFrontend(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( 'SDVX Game Settings', 'sdvx/settings.react.js', { 'player': info, 'versions': {version: name for (game, version, name) in frontend.all_games()}, }, { 'updatename': url_for('sdvx_pages.updatename'), }, )
def viewplayer(userid: UserID) -> Response: frontend = SoundVoltexFrontend(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 SDVX Profile', 'sdvx/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('sdvx_pages.listplayer', userid=userid), 'records': url_for('sdvx_pages.viewrecords', userid=userid), 'scores': url_for('sdvx_pages.viewscores', userid=userid), }, )