1 <%inherit file="base.mako"/>
2 <%namespace name="nav" file="nav.mako" />
3 <%namespace file="scoreboard.mako" import="scoreboard" />
4 <%namespace file="accuracy.mako" import="accuracy" />
6 <%block name="navigation">
10 <%block name="foundation">
12 $(document).foundation({
26 <h2>Sorry, that game wasn't found!</h2>
31 <div class="small-12 columns">
32 <h3>Game #${game.game_id}</h3>
34 <span class="sprite sprite-${game.game_type_cd}"></span> ${gametype.descr} <br />
35 Played ${game.fuzzy_date()} <span class="abstime" data-epoch="${game.epoch()}" title="${game.start_dt.strftime('%a, %d %b %Y %H:%M:%S UTC')}"> <i class="fa fa-info-circle"></i></span><br />
36 Server: <a href="${request.route_url("server_info", id=server.server_id)}" name="Server info page for ${server.name}">${server.name}</a><br />
37 Map: <a href="${request.route_url("map_info", id=map.map_id)}" name="Map info page for ${map.name}">${map.name}</a><br />
38 % if game.duration is not None:
39 Duration: ${"%s:%02d" % (game.duration.seconds/60, game.duration.seconds%60)}
45 <div class="small-3 columns">
46 <table class="table-condensed">
52 % for ts in teamscores:
53 <tr class="${ts.team}"><td>${ts.team.capitalize()}</td><td>${ts.score}</td></tr>
61 ##### Games that have team scores push the scoreboard table to the right by
63 % if len(tgstats) == len(stats_by_team):
64 % for tgstat in tgstats:
67 <div class="small-1 columns teamscore">
68 <div class="teamname ${tgstat.team_html_color()}">
69 ${tgstat.team_html_color().capitalize()}
71 <div class="${tgstat.team_html_color()}">
72 % if game.game_type_cd == 'ctf':
74 % elif game.game_type_cd == 'ca':
76 % elif game.game_type_cd == 'nb':
84 <div class="small-12 medium-11 columns game">
85 ${scoreboard(game.game_type_cd, stats_by_team[tgstat.team], show_elo, show_latency)}
90 ##### Games that do not have team scores use the full width
92 % for team in stats_by_team.keys():
94 <div class="small-12 columns game">
95 ${scoreboard(game.game_type_cd, stats_by_team[team], show_elo, show_latency)}
101 % if len(captimes) > 0:
103 <div class="small-6 columns">
104 <h3>Best Flag Capture Times</h3>
105 <table class="table-hover table-condensed">
113 % for pgs in captimes:
116 % if pgs.player_id > 2:
117 <a href="${request.route_url("player_info", id=pgs.player_id)}"
118 title="Go to the info page for this player">
119 <span class="nick">${pgs.nick_html_colors()|n}</span>
122 <span class="nick">${pgs.nick_html_colors()|n}</span>
125 <td>${round(float(pgs.fastest.seconds) + (pgs.fastest.microseconds/1000000.0), 2)}</td>
134 % if len(pgstats) > 0 and len(pwstats) > 0:
136 <div class="small-12 medium-9 columns">
137 <ul class="accordion" data-accordion>
138 % for pgstat in pgstats:
139 % if pgstat.player_game_stat_id in pwstats:
140 <li class="accordion-navigation">
141 <a href="#accuracy-${pgstat.player_game_stat_id}">Accuracy for ${pgstat.nick_html_colors()|n}</a>
142 <div id="accuracy-${pgstat.player_game_stat_id}" class="content">
143 ${accuracy(pwstats[pgstat.player_game_stat_id])}