X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonstat.git;a=blobdiff_plain;f=xonstat%2Ftemplates%2Fplayer_info.mako;h=677c0580417e0eb5a3d56ca66a991e62ed4ab2a8;hp=3149228e486c7b5c168efd5d4f43486818ba715f;hb=51c42763989fcd89c3d213b897773005ce02c7b7;hpb=7c5316b773629190d25089000b95c9e6ad6517a0 diff --git a/xonstat/templates/player_info.mako b/xonstat/templates/player_info.mako index 3149228..677c058 100644 --- a/xonstat/templates/player_info.mako +++ b/xonstat/templates/player_info.mako @@ -6,159 +6,179 @@ ${nav.nav('players')} -<%block name="js"> - % if player is not None: - - - + + + - % endif +}); + +$(".dmg-weap").click(function () { + var dataurl = $(this).find('a').attr('href'); + + $('.damage-nav').find('.weapon-active').removeClass('weapon-active'); + $(this).addClass('weapon-active'); + + $.ajax({ + url: dataurl, + method: 'GET', + dataType: 'json', + success: plot_dmg_graph + }); +}); + +// populate the graphs with the default weapons +$.ajax({ +url: '${request.route_url("player_accuracy", id=player.player_id)}', +method: 'GET', +dataType: 'json', +success: plot_acc_graph +}); + +$.ajax({ + url: '${request.route_url("player_damage", id=player.player_id)}', + method: 'GET', + dataType: 'json', + success: plot_dmg_graph +}); +}) + +% endif <%block name="title"> @@ -173,110 +193,200 @@ Player Information % else:
-

${player.nick_html_colors()|n}

+

+ ${player.nick_html_colors()|n} +

+

+ Joined ${player.joined_pretty_date()} (player #${player.player_id}) + % if cake_day: + + % endif +

-
-

- Member Since: ${player.create_dt.strftime('%m/%d/%Y at %I:%M %p')}
+

+
+ % for g in games_played: + % if not g.game_type_cd in ['cq']: +
+
+

+ % if g.game_type_cd in overall_stats: + Last Played: ${overall_stats[g.game_type_cd].last_played_fuzzy}
+ % else: +
+ % endif - Last Seen: ${recent_games[0][1].fuzzy_date()}
+ Games Played: + % if g.game_type_cd == 'overall': + + % else: + + % endif + ${g.games}
- Playing Time: ${total_stats['alivetime']}
+ Playing Time: ${overall_stats[g.game_type_cd].total_playing_time}
- <% games_breakdown_str = ', '.join(["{0} {1}".format(ng, gt) for (gt, ng) in games_breakdown]) %> - Games Played: ${total_games} (${games_breakdown_str})
+ % if g.game_type_cd in fav_maps: + Favorite Map: ${fav_maps[g.game_type_cd].map_name}
+ % else: +
+ % endif + + % if g.game_type_cd == 'ctf': + % if overall_stats[g.game_type_cd].total_captures is not None: + Fastest flag captures...
+ % else: +
+ % endif + % else: +
+ % endif + +

+
+
+

+ Win Percentage: ${round(g.win_pct,2)}% (${g.wins} wins, ${g.losses} losses)
+ + % if g.game_type_cd in overall_stats: + % if overall_stats[g.game_type_cd].k_d_ratio is not None: + Kill Ratio: ${round(overall_stats[g.game_type_cd].k_d_ratio,2)} (${overall_stats[g.game_type_cd].total_kills} kills, ${overall_stats[g.game_type_cd].total_deaths} deaths)
+ % endif + % else: +
+ % endif - % if fav_map is not None: - Favorite Map: ${fav_map['name']}
- % endif -

-
-
-

- % if total_games > 0 and total_stats['wins'] is not None: - Win Percentage: ${round(float(total_stats['wins'])/total_games * 100, 2)}% (${total_stats['wins']} wins, ${total_games - total_stats['wins']} losses)
- % endif - - % if total_stats['kills'] > 0 and total_stats['deaths'] > 0: - Kill Ratio: ${round(float(total_stats['kills'])/total_stats['deaths'], 3)} (${total_stats['kills']} kills, ${total_stats['deaths']} deaths)
- % endif - - % if elos_display is not None and len(elos_display) > 0: - Elo: - ${', '.join(elos_display)} -
- %if '*' in ', '.join(elos_display): - *preliminary Elo
- %endif - % endif + % if g.game_type_cd in elos: + % if g.game_type_cd == 'overall': + Best Elo: ${round(elos[g.game_type_cd].elo,2)} (${elos[g.game_type_cd].game_type_cd}, ${elos[g.game_type_cd].games} games)
+ % else: + Elo: ${round(elos[g.game_type_cd].elo,2)} (${elos[g.game_type_cd].games} games)
+ % endif + % else: +
+ % endif + + % if g.game_type_cd in ranks: + % if g.game_type_cd == 'overall': + Best Rank: ${ranks[g.game_type_cd].rank} of ${ranks[g.game_type_cd].max_rank} (${ranks[g.game_type_cd].game_type_cd}, percentile: ${round(ranks[g.game_type_cd].percentile,2)})
+ % else: + Rank: + + + ${ranks[g.game_type_cd].rank} of ${ranks[g.game_type_cd].max_rank} + (percentile: ${round(ranks[g.game_type_cd].percentile,2)}) +
+
+ % endif + % else: +
+ % endif - % if ranks_display != '': - Ranks: ${ranks_display}
+ % if g.game_type_cd == 'ctf': + % if overall_stats[g.game_type_cd].cap_ratio is not None: + Cap Ratio: ${round(overall_stats[g.game_type_cd].cap_ratio,2)} (${overall_stats[g.game_type_cd].total_captures} captures, ${overall_stats[g.game_type_cd].total_pickups} pickups)
+ % else: +
+ % endif + % else: +
+ % endif +

+
+
% endif -

+ % endfor +
+
+
+
+
+
% if 'nex' in recent_weapons or 'rifle' in recent_weapons or 'minstanex' in recent_weapons or 'uzi' in recent_weapons or 'shotgun' in recent_weapons:
-
+

Accuracy

-
+
    % if 'nex' in recent_weapons:
  • -
    - -

    Nex

    - -
    +
    + +

    Nex

    + +
  • % endif % if 'rifle' in recent_weapons:
  • -
    - -

    Rifle

    - -
    +
    + +

    Rifle

    + +
  • % endif % if 'minstanex' in recent_weapons:
  • -
    - -

    Minstanex

    - -
    +
    + +

    Minstanex

    + +
  • % endif % if 'uzi' in recent_weapons:
  • -
    - -

    Uzi

    - -
    +
    + +

    Uzi

    + +
  • % endif % if 'shotgun' in recent_weapons:
  • -
    - -

    Shotgun

    - -
    +
    + +

    Shotgun

    + +
  • % endif
@@ -289,70 +399,70 @@ Player Information % if 'rocketlauncher' in recent_weapons or 'grenadelauncher' in recent_weapons or 'electro' in recent_weapons or 'crylink' in recent_weapons or 'laser' in recent_weapons:
-
+

Damage Efficiency

-
+
    % if 'rocketlauncher' in recent_weapons:
  • -
    - -

    Rocket

    - -
    +
    + +

    Rocket

    + +
  • % endif % if 'grenadelauncher' in recent_weapons:
  • -
    - -

    Mortar

    - -
    +
    + +

    Mortar

    + +
  • % endif % if 'electro' in recent_weapons:
  • -
    - -

    Electro

    - -
    +
    + +

    Electro

    + +
  • % endif % if 'crylink' in recent_weapons:
  • -
    - -

    Crylink

    - -
    +
    + +

    Crylink

    + +
  • % endif % if 'hagar' in recent_weapons:
  • -
    - -

    Hagar

    - -
    +
    + +

    Hagar

    + +
  • % endif % if 'laser' in recent_weapons:
  • -
    - -

    Laser

    - -
    +
    + +

    Laser

    + +
  • % endif @@ -369,46 +479,62 @@ Player Information

    Recent Games

    - +
    - - - - - - + + + + + + + - % for (gamestat, game, server, map) in recent_games: - - - - - - + + + + + + + - - + % else: + + % endif + + + % endfor
    TypeServerMapResultPlayedTypeServerMapResultPlayedElo
    view${game.game_type_cd}${server.name}${map.name} - % if gamestat.team != None: - % if gamestat.team == game.winner: - Win - % else: - Loss - % endif + % for rg in recent_games: +
    view${rg.server_name}${rg.map_name} + % if rg.team != None: + % if rg.team == rg.winner: + Win % else: - % if gamestat.rank == 1: - Win + Loss + % endif + % else: + % if rg.rank == 1: + Win + % else: + Loss (#${rg.rank}) + % endif + % endif + ${rg.fuzzy_date} + + % if rg.elo_delta is not None: + % if round(rg.elo_delta,2) > 0: + + % elif round(rg.elo_delta,2) < 0: + % else: - Loss (#${gamestat.rank}) + % endif - % endif - ${game.fuzzy_date()}
    % if total_games > 10: - More games played by ${player.nick_html_colors()|n}... +

    More...

    % endif