Return 404 for old tokens.

This commit is contained in:
Víðir Valberg Guðmundsson 2021-08-19 10:21:38 +02:00
parent 26201be541
commit 9e576b9f49
1 changed files with 10 additions and 4 deletions

View File

@ -1,9 +1,11 @@
from django.contrib import messages
from django.contrib.auth.mixins import LoginRequiredMixin
from django.http import Http404
from django.shortcuts import redirect
from django.urls import reverse
from django.views.generic import DetailView, ListView
from ..utils.models import CampReadOnlyModeError
from .models import Token, TokenFind
@ -13,10 +15,14 @@ class TokenFindView(LoginRequiredMixin, DetailView):
slug_url_kwarg = "token"
def get(self, request, *args, **kwargs):
# register this tokenview if it isn't already
token, created = TokenFind.objects.get_or_create(
token=self.get_object(), user=request.user
)
# register this token find if it isn't already
try:
token, created = TokenFind.objects.get_or_create(
token=self.get_object(), user=request.user
)
except CampReadOnlyModeError:
raise Http404
if created:
messages.success(
self.request,