import datetime\r
import logging\r
import re\r
+import sqlalchemy as sa\r
import time\r
from pyramid.response import Response\r
+from pyramid.url import current_route_url\r
from sqlalchemy import desc\r
from webhelpers.paginate import Page, PageURL\r
from xonstat.models import *\r
Provides a list of all the current players. \r
"""\r
if 'page' in request.matchdict:\r
- current_page = request.matchdict['page']\r
+ current_page = int(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
+ filter(sa.not_(Player.nick.like('Anonymous Player%'))).\\r
order_by(Player.player_id.desc())\r
\r
players = Page(player_q, current_page, url=page_url)\r
\r
- \r
+ last_linked_page = current_page + 4\r
+ if last_linked_page > players.last_page:\r
+ last_linked_page = players.last_page\r
+\r
+ pages_to_link = range(current_page+1, last_linked_page+1)\r
+\r
except Exception as e:\r
players = None\r
+ raise e\r
\r
- return {'players':players, }\r
+ return {'players':players,\r
+ 'pages_to_link':pages_to_link,\r
+ }\r
\r
\r
def player_info(request):\r