It's an old code, sir, but it checks out.

This commit is contained in:
Víðir Valberg Guðmundsson 2019-08-13 17:53:13 +02:00
parent 1b56280b12
commit c6bf69730c
3 changed files with 28 additions and 9 deletions

View file

@ -94,3 +94,5 @@ ACCOUNTINGSYSTEM_EMAIL = "{{ django_accountingsystem_email }}"
ECONOMYTEAM_EMAIL = "{{ django_economyteam_email }}" ECONOMYTEAM_EMAIL = "{{ django_economyteam_email }}"
ECONOMYTEAM_NAME = "Economy" ECONOMYTEAM_NAME = "Economy"
BORNHACK_2019_OLD_TOKEN_TOKEN = "{{ bornhack_2019_old_token_token }}"

View file

@ -7,10 +7,18 @@ Secret Token Found! | {{ block.super }}
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<h3 class="text-center">Secret Token Found!</h3>
<p class="lead text-center">You found a secret token:</p> {% if view.older_code %}
<p class="lead text-center"><span class="badge">{{ token.description }}</span></p> <h3 class="text-center">It's an older code, sir, but it checks out!</h3>
<p class="lead text-center">Your visit has been registered! Keep hunting, there might be more tokens out there.</p> <p class="lead text-center">You have tried to use an older token, so here have a token for your efforts!</p>
<p class="lead text-center"><a href="{% url 'tokens:tokenfind_list' %}">List All Found Tokens</a></p> <pre class="lead text-center">{{ view.older_token_token }}</pre>
{% else %}
<h3 class="text-center">Secret Token Found!</h3>
<p class="lead text-center">You found a secret token:</p>
<p class="lead text-center"><span class="badge">{{ token.description }}</span></p>
<p class="lead text-center">Your visit has been registered! Keep hunting, there might be more tokens out there.</p>
<p class="lead text-center"><a href="{% url 'tokens:tokenfind_list' %}">List All Found Tokens</a></p>
{% endif %}
{% endblock %} {% endblock %}

View file

@ -1,6 +1,9 @@
from django.conf import settings
from django.contrib.auth.mixins import LoginRequiredMixin from django.contrib.auth.mixins import LoginRequiredMixin
from django.core.exceptions import ValidationError
from django.views.generic import ListView, DetailView from django.views.generic import ListView, DetailView
from utils.models import CampReadOnlyModeError
from .models import Token, TokenFind from .models import Token, TokenFind
@ -9,13 +12,19 @@ class TokenDetailView(LoginRequiredMixin, DetailView):
model = Token model = Token
slug_field = "token" slug_field = "token"
slug_url_kwarg = "token" slug_url_kwarg = "token"
older_code = False
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):
# register this tokenview if it isn't already # register this tokenview if it isn't already
token, created = TokenFind.objects.get_or_create( try:
token=self.get_object(), user=request.user token, created = TokenFind.objects.get_or_create(
) token=self.get_object(), user=request.user
return super().get(request, *args, **kwargs) )
return super().get(request, *args, **kwargs)
except CampReadOnlyModeError:
self.older_code = True
self.older_token_token = settings.BORNHACK_2019_OLD_TOKEN_TOKEN
return super().get(request, *args, **kwargs)
class TokenFindListView(LoginRequiredMixin, ListView): class TokenFindListView(LoginRequiredMixin, ListView):