|
|
@@ -79,23 +79,35 @@ class LogoutHandler(BaseHandler):
|
|
|
self.redirect('/')
|
|
|
|
|
|
class ServersHandler(BaseHandler):
|
|
|
- @tornado.web.authenticated
|
|
|
@tornado.gen.coroutine
|
|
|
def get(self):
|
|
|
- groups = servers = None
|
|
|
- user_id = self.current_user['id']
|
|
|
+ if self.current_user:
|
|
|
+ user_id = self.current_user['id']
|
|
|
+ demo = False
|
|
|
+ else:
|
|
|
+ user_id = 1
|
|
|
+ demo = True
|
|
|
groups = yield self.db.get_groups(user_id)
|
|
|
servers = yield self.db.get_servers(user_id)
|
|
|
- self.render('servers.html', groups=groups, servers=servers)
|
|
|
+ self.render('servers.html', groups=groups, servers=servers, demo=demo)
|
|
|
|
|
|
class StatsHandler(BaseHandler):
|
|
|
- @tornado.web.authenticated
|
|
|
@tornado.gen.coroutine
|
|
|
def get(self, group_id, server_id):
|
|
|
group_id = int(group_id)
|
|
|
+ if self.current_user:
|
|
|
+ user_id = self.current_user['id']
|
|
|
+ demo = False
|
|
|
+ elif group_id == 1:
|
|
|
+ user_id = 1
|
|
|
+ demo = True
|
|
|
+ else:
|
|
|
+ raise tornado.web.HTTPError(401)
|
|
|
+ servers = yield self.db.get_servers(user_id)
|
|
|
+ if group_id not in servers:
|
|
|
+ raise tornado.web.HTTPError(403)
|
|
|
api_key = yield self.db.get_api_key(group_id)
|
|
|
- servers = yield self.db.get_servers(self.current_user['id'])
|
|
|
- self.render('stats.html', group_id=group_id, api_key=api_key, servers=servers[group_id])
|
|
|
+ self.render('stats.html', group_id=group_id, api_key=api_key, servers=servers[group_id], demo=demo)
|
|
|
|
|
|
class GroupsHandler(BaseHandler):
|
|
|
@tornado.web.authenticated
|