diff options
author | Tor Andersson <tor@ccxvii.net> | 2022-06-14 20:40:25 +0200 |
---|---|---|
committer | Tor Andersson <tor@ccxvii.net> | 2022-06-14 21:09:48 +0200 |
commit | 06f757c23d0d9f7a2b86f6c828f886ee8e642e03 (patch) | |
tree | 56771af9be14e393e2753a70c7080f5558e28014 /views | |
parent | ae02f4cde98879b6fddc12c87c4fd3c5663d493e (diff) | |
download | server-06f757c23d0d9f7a2b86f6c828f886ee8e642e03.tar.gz |
Clean up game list logic.
Diffstat (limited to 'views')
-rw-r--r-- | views/games_active.pug | 20 | ||||
-rw-r--r-- | views/games_finished.pug | 4 | ||||
-rw-r--r-- | views/games_public.pug | 6 | ||||
-rw-r--r-- | views/head.pug | 32 | ||||
-rw-r--r-- | views/info.pug | 5 | ||||
-rw-r--r-- | views/user.pug | 9 |
6 files changed, 49 insertions, 27 deletions
diff --git a/views/games_active.pug b/views/games_active.pug index a72a203..66ee86c 100644 --- a/views/games_active.pug +++ b/views/games_active.pug @@ -1,28 +1,23 @@ //- vim:ts=4:sw=4: +- 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) doctype html html head include head title= SITE_NAME if active_games.length > 0 - meta(http-equiv="refresh" content=300) + meta(http-equiv="refresh" content=600) body include header article h1 Your games - if ready_games.length > 0 - h2 Ready to start - +gamelist(ready_games) - if open_games.length > 0 h2 Open +gamelist(open_games) - if replacement_games.length > 0 - h2 Need replacement - +gamelist(replacement_games) - if active_games.length > 0 h2 Active +gamelist(active_games) @@ -31,7 +26,8 @@ html h2 Recently finished +gamelist(finished_games) - p <a href="/games/finished">All your finished games</a> - - if open_games.length === 0 && ready_games.length === 0 && active_games.length === 0 && finished_games.length === 0 + if open_games.length === 0 && active_games.length === 0 && finished_games.length === 0 p Nothing here. + + p + a(href="/games/finished") All your finished games diff --git a/views/games_finished.pug b/views/games_finished.pug index df7f038..26d0378 100644 --- a/views/games_finished.pug +++ b/views/games_finished.pug @@ -12,7 +12,7 @@ html else h1 #{who.name}’s finished games - if finished_games.length > 0 - +gamelist(finished_games) + if games.length > 0 + +gamelist(games) else p Nothing here. diff --git a/views/games_public.pug b/views/games_public.pug index 44b250d..a3b1407 100644 --- a/views/games_public.pug +++ b/views/games_public.pug @@ -1,11 +1,15 @@ //- vim:ts=4:sw=4: +- let open_games = games.filter(game => game.status === 0 && !game.is_ready) +- let ready_games = games.filter(game => game.status === 0 && game.is_ready) +- let replacement_games = games.filter(game => game.status === 1 && !game.is_ready) +- let active_games = games.filter(game => game.status === 1 && game.is_ready) doctype html html head include head title= SITE_NAME if user - meta(http-equiv="refresh" content=600) + meta(http-equiv="refresh" content=900) body include header article diff --git a/views/head.pug b/views/head.pug index 748d417..005a4b2 100644 --- a/views/head.pug +++ b/views/head.pug @@ -59,18 +59,28 @@ mixin gamelist(list,hide_title=0) | <a href="/join/#{item.game_id}">#{item.game_id}</a> – | <a href="/#{item.title_id}">#{item.title_name}</a> - if item.status === 0 || !item.is_ready - a(class="command" href=`/join/${item.game_id}`) Join - else - if item.is_yours - - let verb = (item.status > 1) ? "Review" : "Play" - if item.your_role - a(class="command" href=`/${item.title_id}/play:${item.game_id}:${item.your_role}`)= verb + case item.status + when 0 + if item.is_yours && item.is_ready + a(class="command" href=`/join/${item.game_id}`) Start else - a(class="command" href="/join/"+item.game_id)= verb - else - - let verb = (item.status > 1) ? "Review" : "View" - a(class="command" href=`/${item.title_id}/play:${item.game_id}`)= verb + a(class="command" href=`/join/${item.game_id}`) Join + when 1 + if item.is_yours + if item.your_role + a(class="command" href=`/${item.title_id}/play:${item.game_id}:${item.your_role}`) Play + else + a(class="command" href="/join/"+item.game_id) Play + else + a(class="command" href=`/${item.title_id}/play:${item.game_id}`) View + when 2 + if item.is_yours + if item.your_role + a(class="command" href=`/${item.title_id}/play:${item.game_id}:${item.your_role}`) Review + else + a(class="command" href="/join/"+item.game_id) Review + else + a(class="command" href=`/${item.title_id}/play:${item.game_id}`) Review div.game_main div.game_info diff --git a/views/info.pug b/views/info.pug index 24425e5..62698c9 100644 --- a/views/info.pug +++ b/views/info.pug @@ -1,4 +1,9 @@ //- vim:ts=4:sw=4: +- let open_games = games.filter(game => game.status === 0 && !game.is_ready) +- let ready_games = games.filter(game => game.status === 0 && game.is_ready) +- let replacement_games = games.filter(game => game.status === 1 && !game.is_ready) +- let active_games = games.filter(game => game.status === 1 && game.is_ready) +- let finished_games = games.filter(game => game.status === 2) doctype html html head diff --git a/views/user.pug b/views/user.pug index 73c2e2d..fb98da7 100644 --- a/views/user.pug +++ b/views/user.pug @@ -1,4 +1,7 @@ //- vim:ts=4:sw=4: +- 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) doctype html html head @@ -22,8 +25,12 @@ html p a(href="/message/send/"+who.name) Send message + if open_games.length > 0 + h2 Open + +gamelist(open_games) + if active_games.length > 0 - h2 Playing + h2 Active +gamelist(active_games) if finished_games.length > 0 |