Implement competition start and end times
This commit is contained in:
parent
b428bef808
commit
d5b8be16c0
4 changed files with 21 additions and 5 deletions
|
@ -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 "",
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -50,10 +50,10 @@
|
|||
<li><a href="/login">Login</a></li>
|
||||
</ul>
|
||||
<ul class="nav navbar-nav navbar-right" ng-show="config.navbar['logged_in']==true">
|
||||
<div ng-show="config.navbar['competition_started']==true">
|
||||
<div ng-show="config.navbar['competition']==true">
|
||||
</div>
|
||||
<li><a href="/chat">Chat</a></li>
|
||||
<li class="dropdown" ng-show="config.navbar['competition']==true">
|
||||
<li class="dropdown" ng-show="config.navbar['competition']==true||config.navbar['admin']==true">
|
||||
<a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Competition <span class="caret"></span></a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="/problems">Problems</a></li>
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
<div ng-if="settings">
|
||||
<div id="settings_msg"/>
|
||||
<form class="form-horizontal" onsubmit="update_settings(); return false;" id="update_settings_form">
|
||||
<input class="form-control" name="ctf_begin" value="{{ settings['ctf_begin'] }}"/>
|
||||
<input class="form-control" name="ctf_begin" placeholder="CTF Start time (seconds)" value="{{ settings['ctf_begin'] }}" required/>
|
||||
<br>
|
||||
<input class="form-control" name="ctf_end" value="{{ settings['ctf_end'] }}"/>
|
||||
<input class="form-control" name="ctf_end" placeholder="CTF End time (seconds)" value="{{ settings['ctf_end'] }}"required/>
|
||||
<br>
|
||||
<input type="submit" class="btn btn-success" value="Update"/>
|
||||
</form>
|
||||
|
|
Loading…
Reference in a new issue