Make the table headers match.
[xonotic/xonstat.git] / xonstat / templates / main_index.mako
1 <%inherit file="base.mako"/>
2
3 <%block name="title">
4   Leaderboard
5 </%block>
6
7 <%block name="hero_unit">
8   <div class="text-center">
9     <img src="/static/css/img/xonotic-logo.png" />
10     % if stat_line is None:
11       <p class="statline">Tracking Xonotic statistics since October 2011.</p>
12     % else:
13       <p class="statline">Tracking ${stat_line|n} since October 2011.</p>
14     % endif
15
16     % if day_stat_line is not None:
17       <p class="statline">${day_stat_line|n} in the past 24 hours.</p>
18     % endif
19   </div>
20 </%block>
21
22 ##### RANKS #####
23 % if len(ranks) < 4:
24   <div class="row">
25     <div class="small-12 large-12 columns">
26       <p class="text-center"><i class="icon-white icon-info-sign"> </i> You don't seem to have any ranks yet.</p>
27     </div>
28   </div>
29
30 % else:
31   <div class="row">
32     % for rs in ranks[:4]:
33       % if len(rs) > 0:
34         <div class="small-12 large-3 columns">
35           % if rs[0].game_type_cd == 'duel':
36             <h5>Duel Ranks <a href="${request.route_url('rank_index', game_type_cd=rs[0].game_type_cd)}" title="See more ${rs[0].game_type_cd} rankings"><i class="fa fa-plus-circle"></i></a></h5>
37           % elif rs[0].game_type_cd == 'ctf':
38             <h5>CTF Ranks <a href="${request.route_url('rank_index', game_type_cd=rs[0].game_type_cd)}" title="See more ${rs[0].game_type_cd} rankings"><i class="fa fa-plus-circle"></i></a></h5>
39           % elif rs[0].game_type_cd == 'dm':
40             <h5>DM Ranks <a href="${request.route_url('rank_index', game_type_cd=rs[0].game_type_cd)}" title="See more ${rs[0].game_type_cd} rankings"><i class="fa fa-plus-circle"></i></a></h5>
41           % elif rs[0].game_type_cd == 'tdm':
42             <h5>TDM Ranks <a href="${request.route_url('rank_index', game_type_cd=rs[0].game_type_cd)}" title="See more ${rs[0].game_type_cd} rankings"><i class="fa fa-plus-circle"></i></a></h5>
43           % endif
44
45           <table class="table-hover table-condensed">
46             <thead>
47               <tr>
48                 <th class="small-2">#</th>
49                 <th class="small-7">Nick</th>
50                 <th class="small-3">Elo</th>
51               </tr>
52             </thead>
53             <tbody>
54             <% i = 1 %>
55             % for r in rs:
56             <tr>
57               <td>${i}</td>
58               <td class="no-stretch"><a href="${request.route_url('player_info', id=r.player_id)}" title="Go to the player info page for this player">${r.nick_html_colors()|n}</a></td>
59               <td>${int(round(r.elo))}</td>
60             </tr>
61             <% i = i+1 %>
62             % endfor
63             </tbody>
64           </table>
65     </div>
66   % endif
67
68   % endfor
69 </div>
70 % endif
71
72
73 ##### ACTIVE PLAYERS #####
74 <div class="row">
75   <div class="small-12 large-4 columns">
76     <h5>Most Active Players <a href="${request.route_url('top_players_index')}" title="See more player activity"><i class="fa fa-plus-circle"></i></a></h5>
77       <table class="table table-hover table-condensed">
78         <thead>
79           <tr>
80             <th class="small-2">#</th>
81             <th class="small-7">Nick</th>
82             <th class="small-3">Time</th>
83           </tr>
84         </thead>
85         <tbody>
86         % for tp in top_players:
87           <tr>
88             <td>${tp.sort_order}</td>
89             <td class="no-stretch"><a href="${request.route_url('player_info', id=tp.player_id)}" title="Go to the player info page for this player">${tp.nick_html_colors()|n}</a></td>
90             <td>${tp.alivetime}</td>
91           </tr>
92         % endfor
93         </tbody>
94       </table>
95   </div>
96
97
98 ##### ACTIVE SERVERS #####
99   <div class="small-12 large-4 columns">
100     <h5>Most Active Servers <a href="${request.route_url('top_servers_index')}" title="See more server activity"><i class="fa fa-plus-circle"></i></a></h5>
101     <table class="table table-hover table-condensed">
102       <thead>
103         <tr>
104           <th class="small-2">#</th>
105           <th class="small-7">Server</th>
106           <th class="small-3">Time</th>
107         </tr>
108       </thead>
109       <tbody>
110       % for ts in top_servers:
111         <tr>
112           <td>${ts.sort_order}</td>
113           <td class="no-stretch"><a href="${request.route_url('server_info', id=ts.server_id)}" title="Go to the server info page for ${ts.server_name}">${ts.server_name}</a></td>
114           <td>${ts.play_time_str()}</td>
115         </tr>
116       % endfor
117       </tbody>
118     </table>
119   </div>
120
121
122 ##### ACTIVE MAPS #####
123   <div class="small-12 large-4 columns">
124     <h5>Most Active Maps <a href="${request.route_url('top_maps_index')}" title="See more map activity"><i class="fa fa-plus-circle"></i></a></h5>
125     <table class="table table-hover table-condensed">
126       <thead>
127         <tr>
128           <th class="small-2">#</th>
129           <th class="small-7">Map</th>
130           <th class="small-3">Games</th>
131         </tr>
132       </thead>
133       <tbody>
134       % for tm in top_maps:
135         <tr>
136           <td>${tm.sort_order}</td>
137           <td class="no-stretch"><a href="${request.route_url('map_info', id=tm.map_id)}" title="Go to the map info page for ${tm.map_name}">${tm.map_name}</a></td>
138           <td>${tm.games}</td>
139         </tr>
140       % endfor
141       </tbody>
142     </table>
143   </div>
144 </div>
145
146 <div class="row">
147   <div class="small-12 columns">
148     <small>*Most active stats are from the past 7 days</small>
149   </div>
150 </div>
151
152
153 ##### RECENT GAMES #####
154 % if len(recent_games) > 0:
155 <div class="row">
156   <div class="small-12 columns">
157     <h5>Recent Games <a href="${request.route_url('game_index')}"><i class="fa fa-plus-circle"></i></a></h5>
158     <table class="table table-hover table-condensed">
159       <thead>
160         <tr>
161           <th class="small-1 text-center"></th>
162           <th class="small-1">Type</th>
163           <th class="show-for-medium-up small-3">Server</th>
164           <th class="show-for-medium-up small-2">Map</th>
165           <th class="show-for-large-up small-2">Time</th>
166           <th class="small-3">Winner</th>
167         </tr>
168       </thead>
169       <tbody>
170       % for rg in recent_games:
171         <tr>
172           <td class="text-center"><a class="button tiny" href="${request.route_url('game_info', id=rg.game_id)}" title="View detailed information about this game">view</a></td>
173           <td class="text-center"><span class="sprite sprite-${rg.game_type_cd}" alt="${rg.game_type_cd}" title="${rg.game_type_descr}"></span></td>
174           <td class="show-for-medium-up no-stretch"><a href="${request.route_url('server_info', id=rg.server_id)}" title="Go to the detail page for this server">${rg.server_name}</a></td>
175           <td class="show-for-medium-up"><a href="${request.route_url('map_info', id=rg.map_id)}" title="Go to the map detail page for this map">${rg.map_name}</a></td>
176           <td class="show-for-large-up"><span class="abstime" data-epoch="${rg.epoch}" title="${rg.start_dt.strftime('%a, %d %b %Y %H:%M:%S UTC')}">${rg.fuzzy_date}</span></td>
177           <td class="no-stretch">
178             % if rg.player_id > 2:
179             <a href="${request.route_url('player_info', id=rg.player_id)}" title="Go to the player info page for this player">${rg.nick_html_colors|n}</a></td>
180             % else:
181             ${rg.nick_html_colors|n}</td>
182             % endif
183         </tr>
184         % endfor
185         </tbody>
186     </table>
187   </div>
188 </div>
189 % endif