diff options
author | Tor Andersson <tor@ccxvii.net> | 2021-11-14 16:53:13 +0100 |
---|---|---|
committer | Tor Andersson <tor@ccxvii.net> | 2021-11-14 17:29:04 +0100 |
commit | bf9b4ddafe5d11e510760f6af4479e29da6987ba (patch) | |
tree | b9e14da608b511a035d43dd0a69d7f4cce0e0871 /server.js | |
parent | e207e21fd2a1a4dbfce607ad99aa2975c5f924ee (diff) | |
download | server-bf9b4ddafe5d11e510760f6af4479e29da6987ba.tar.gz |
Limit number of finished games shown.
Diffstat (limited to 'server.js')
-rw-r--r-- | server.js | 18 |
1 files changed, 10 insertions, 8 deletions
@@ -921,8 +921,9 @@ const QUERY_LIST_GAMES = SQL(` const QUERY_LIST_GAMES_OF_TITLE = SQL(` SELECT * FROM game_view - WHERE private=0 AND title_id=$title_id - ORDER BY status ASC, mtime DESC + WHERE private=0 AND title_id=? AND status=? + ORDER BY mtime DESC + LIMIT ? `); const QUERY_LIST_GAMES_OF_USER = SQL(` @@ -1015,11 +1016,12 @@ app.get('/info/:title_id', may_be_logged_in, function (req, res) { if (!title) return res.status(404).send("Invalid title."); if (req.isAuthenticated()) { - let games = QUERY_LIST_GAMES_OF_TITLE.all({title_id: title_id}); - annotate_games(games, req.user.user_id); - let open_games = games.filter(game => game.status === 0); - let active_games = games.filter(game => game.status === 1); - let finished_games = games.filter(game => game.status === 2); + let open_games = QUERY_LIST_GAMES_OF_TITLE.all(title_id, 0, 1000); + let active_games = QUERY_LIST_GAMES_OF_TITLE.all(title_id, 1, 1000); + let finished_games = QUERY_LIST_GAMES_OF_TITLE.all(title_id, 2, 50); + annotate_games(open_games, req.user.user_id); + annotate_games(active_games, req.user.user_id); + annotate_games(finished_games, req.user.user_id); res.set("Cache-Control", "no-store"); res.render('info.ejs', { user: req.user, @@ -1670,7 +1672,7 @@ io.on('connection', (socket) => { try { let seed = random_seed(); let state = socket.rules.setup(seed, scenario, players); - put_replay(socket.game_id, null, 'setup', [seed, scenario, options, players]); + put_replay(socket.game_id, null, 'setup', [seed, scenario, null, players]); for (let other of clients[socket.game_id]) { other.log_length = 0; send_state(other, state); |