From d5b8be16c01d90ee9a05c4c0f0f833a9dc67e316 Mon Sep 17 00:00:00 2001 From: James Wang Date: Tue, 19 Apr 2016 11:00:43 -0400 Subject: [PATCH] Implement competition start and end times --- server/api/user.py | 2 +- server/api/utils.py | 16 ++++++++++++++++ web/index.html | 4 ++-- web/pages/admin/settings.html | 4 ++-- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/server/api/user.py b/server/api/user.py index 9a9acbf..9ef4e7d 100644 --- a/server/api/user.py +++ b/server/api/user.py @@ -132,7 +132,7 @@ def user_status(): "success": 1, "logged_in": logged_in, "admin": is_admin(), - "competition": is_admin(), + "competition": utils.is_ctf_time(), "in_team": in_team(get_user().first()), "username": session["username"] if logged_in else "", } diff --git a/server/api/utils.py b/server/api/utils.py index 3c64f0f..bcdf9b7 100644 --- a/server/api/utils.py +++ b/server/api/utils.py @@ -100,3 +100,19 @@ def generate_identicon(email, filename): image.save(open("pfp/%s.png" % filename, "w"), "PNG") return + +def is_ctf_time(): + import settings + start = settings.get("ctf_begin") + end = settings.get("ctf_end") + start = [int(start), 0][start is None] + end = [int(end), 0][end is None] + time = get_time_since_epoch() + + if start and end: + return start < time < end + + if start < time and end == 0: + return True + + return False diff --git a/web/index.html b/web/index.html index de8ae3f..f9e86e4 100644 --- a/web/index.html +++ b/web/index.html @@ -50,10 +50,10 @@
  • Login