"""\r
Provides a list of all the current players. \r
"""\r
- players = DBSession.query(Player)\r
+ if 'page' in request.matchdict:\r
+ current_page = request.matchdict['page']\r
+ else:\r
+ current_page = 1\r
+\r
+ try:\r
+ player_q = DBSession.query(Player).\\r
+ filter(Player.player_id > 2).\\r
+ order_by(Player.player_id)\r
+\r
+ players = Page(player_q, current_page, url=page_url)\r
+\r
+ \r
+ except Exception as e:\r
+ players = None\r
+\r
+ return {'players':players, }\r
\r
- log.debug("testing logging; entered PlayerHandler.index()")\r
- return {'players':players}\r
\r
def player_info(request):\r
"""\r
"order by descr"\r
).params(player_id=player_id).all()\r
\r
- log.debug(weapon_stats)\r
-\r
recent_games = DBSession.query(PlayerGameStat, Game, Server, Map).\\r
filter(PlayerGameStat.player_id == player_id).\\r
filter(PlayerGameStat.game_id == Game.game_id).\\r
filter(Game.map_id == Map.map_id).\\r
order_by(Game.game_id.desc())[0:10]\r
\r
+ game_stats = {}\r
+ (game_stats['avg_rank'], game_stats['total_kills'], \r
+ game_stats['total_deaths'], game_stats['total_suicides'], \r
+ game_stats['total_score'], game_stats['total_time'], \r
+ game_stats['total_held'], game_stats['total_captures'], \r
+ game_stats['total_pickups'],game_stats['total_drops'], \r
+ game_stats['total_returns'], game_stats['total_collects'], \r
+ game_stats['total_destroys'], game_stats['total_dhk'], \r
+ game_stats['total_pushes'], game_stats['total_pushed'], \r
+ game_stats['total_carrier_frags'], \r
+ game_stats['total_alivetime'],\r
+ game_stats['total_games_played']) = DBSession.\\r
+ query("avg_rank", "total_kills", "total_deaths", \r
+ "total_suicides", "total_score", "total_time", "total_held",\r
+ "total_captures", "total_pickups", "total_drops", \r
+ "total_returns", "total_collects", "total_destroys", \r
+ "total_dhk", "total_pushes", "total_pushed", \r
+ "total_carrier_frags", "total_alivetime", \r
+ "total_games_played").\\r
+ from_statement(\r
+ "select round(avg(rank)) avg_rank, sum(kills) total_kills, "\r
+ "sum(deaths) total_deaths, sum(suicides) total_suicides, "\r
+ "sum(score) total_score, sum(time) total_time, "\r
+ "sum(held) total_held, sum(captures) total_captures, "\r
+ "sum(pickups) total_pickups, sum(drops) total_drops, "\r
+ "sum(returns) total_returns, sum(collects) total_collects, "\r
+ "sum(destroys) total_destroys, sum(destroys_holding_key) total_dhk, "\r
+ "sum(pushes) total_pushes, sum(pushed) total_pushed, "\r
+ "sum(carrier_frags) total_carrier_frags, "\r
+ "sum(alivetime) total_alivetime, count(*) total_games_played "\r
+ "from player_game_stats "\r
+ "where player_id=:player_id"\r
+ ).params(player_id=player_id).one()\r
+\r
+ for (key,value) in game_stats.items():\r
+ if value == None:\r
+ game_stats[key] = '-'\r
+\r
except Exception as e:\r
player = None\r
weapon_stats = None\r
+ game_stats = None\r
recent_games = None\r
+\r
return {'player':player, \r
'recent_games':recent_games,\r
- 'weapon_stats':weapon_stats}\r
+ 'weapon_stats':weapon_stats,\r
+ 'game_stats':game_stats}\r
\r
\r
def player_game_index(request):\r
except Exception as e:\r
player = None\r
games = None\r
- raise e\r
\r
return {'player':player,\r
'games':games}\r
-\r
-\r
-def player_weapon_stats(request):\r
- """\r
- List the accuracy statistics for the given player_id in a particular\r
- game.\r
- """\r
- game_id = request.matchdict['game_id']\r
- pgstat_id = request.matchdict['pgstat_id']\r
- try:\r
- pwstats = DBSession.query(PlayerWeaponStat, Weapon).\\r
- filter(PlayerWeaponStat.weapon_cd==Weapon.weapon_cd).\\r
- filter_by(game_id=game_id).\\r
- filter_by(player_game_stat_id=pgstat_id).\\r
- order_by(Weapon.descr).\\r
- all()\r
-\r
- pgstat = DBSession.query(PlayerGameStat).\\r
- filter_by(player_game_stat_id=pgstat_id).one()\r
-\r
- game = DBSession.query(Game).filter_by(game_id=game_id).one()\r
-\r
- log.debug(pwstats)\r
- log.debug(pgstat)\r
- log.debug(game)\r
-\r
- except Exception as e:\r
- pwstats = None\r
- pgstat = None\r
- game = None\r
- raise e\r
- return {'pwstats':pwstats, 'pgstat':pgstat, 'game':game}\r