From 8fa6a1ef080ef8cae5673416eda1e1546f0c93ff Mon Sep 17 00:00:00 2001 From: Zdenek Kubala <zkubala@suse.com> Date: Tue, 28 Jun 2022 16:45:41 +0200 Subject: [PATCH] join sifrovacka only when it is active --- sifrovacka/templates/sifrovacka.html | 32 +++++++++++++++++----------- sifrovacka/views.py | 5 ++++- 2 files changed, 23 insertions(+), 14 deletions(-) diff --git a/sifrovacka/templates/sifrovacka.html b/sifrovacka/templates/sifrovacka.html index 5df3ca7..40bfeb0 100644 --- a/sifrovacka/templates/sifrovacka.html +++ b/sifrovacka/templates/sifrovacka.html @@ -39,20 +39,26 @@ <hr> {% if request.user.is_authenticated %} {% if not sifrovacka_stage_count == 0 %} - {% if not sifrovacka_current_stage_urlhash %} - <form action="{% url 'home' %}" method="post"> - {% csrf_token %} - <button class="btn btn--autowidth btn--hoveractive btn--to-grey-500" type="submit" value={{ sifrovacka_id }} name='signupsif'> - <div class="btn__body ">Přihlásit se k šifrovačce</div> - </button> - </form> + {% if not is_archived_sifrovacka %} + {% if not sifrovacka_current_stage_urlhash %} + <form action="{% url 'home' %}" method="post"> + {% csrf_token %} + <button class="btn btn--autowidth btn--hoveractive btn--to-grey-500" type="submit" value={{ sifrovacka_id }} name='signupsif'> + <div class="btn__body ">Přihlásit se k šifrovačce</div> + </button> + </form> + {% else %} + <h1 class="head-alt-sm">Vaše Aktuální úroveň</h1> + {% for stage in sifrovacka_stages %} + {% if sifrovacka_current_stage_urlhash.at_stage == stage.stage_urlhash %} + <li><a href={% url 'stage' stage.sifrovacka_id stage.stage_urlhash %}>{{ stage }}</a></li> + {% endif %} + {% endfor %} + {% endif %} {% else %} - <h1 class="head-alt-sm">Vaše Aktuální úroveň</h1> - {% for stage in sifrovacka_stages %} - {% if sifrovacka_current_stage_urlhash.at_stage == stage.stage_urlhash %} - <li><a href={% url 'stage' stage.sifrovacka_id stage.stage_urlhash %}>{{ stage }}</a></li> - {% endif %} - {% endfor %} + <div class="alert alert--grey-125"> + <span> Šifrovačka skončila a není možné se k ní přihlásit.</span> + </div> {% endif %} {% else %} <div class="alert alert--grey-125"> diff --git a/sifrovacka/views.py b/sifrovacka/views.py index 4cf0b27..74de479 100644 --- a/sifrovacka/views.py +++ b/sifrovacka/views.py @@ -148,6 +148,8 @@ def detail(request, sifrovacka_id): #sifrovacka_detail = Sifrovacka.objects.get(id = sifrovacka_id) sifrovacka_stages = Stages.objects.filter(sifrovacka__sifrovacka_name = sifrovacka_detail) sifrovacka_stage_count = sifrovacka_stages.count() + is_archived_sifrovacka = Sifrovacka.objects.filter(id = sifrovacka_id, + enddate_sifrovacka__lt = timezone.now()) if request.user.is_authenticated: sifrovacka_all_user_current_stages= Participants.objects.filter(user = \ request.user).filter(sifrovacka_id = \ @@ -167,7 +169,8 @@ def detail(request, sifrovacka_id): "sifrovacka_stage_count": sifrovacka_stage_count, "sifrovacka_current_id": sifrovacka_current_id, "sifrovacka_current_stage_urlhash": - sifrovacka_current_stage_urlhash + sifrovacka_current_stage_urlhash, + "is_archived_sifrovacka": is_archived_sifrovacka } return render(request, 'sifrovacka.html', context) -- GitLab