avoid auto registration via link previews
continuous-integration/drone/push Build is passing Details

This commit is contained in:
xAndy 2025-05-17 23:44:13 +02:00
parent 38cdbec9fa
commit f2c00ec8d9
3 changed files with 24 additions and 0 deletions

View File

@ -0,0 +1,11 @@
{% extends "helper_base.html" %}
{% block title %}Registrierung{% endblock %}
{% block content %}
<p>Du solltest automatisch eingeloggt werden. Falls nicht, klicke bitte hier:</p>
<a class="button is-link" href="{% url 'login_confirm' token %}">Login</a>
<script>
window.location.href = "{% url 'login_confirm' token %}";
</script>
{% endblock %}

View File

@ -5,6 +5,7 @@ from . import views
urlpatterns = [
path("", views.index, name="index"),
path("l/<slug:token>", views.login, name="token_login"),
path("login_confirm/<slug:token>", views.login_confirm, name="login_confirm"),
path("logout", views.logout, name="token_logout"),
path("register", views.register, name="register"),
path("asta", views.asta, name="asta"),

View File

@ -98,7 +98,19 @@ def login(request, token):
"Wir konnten dich nicht in unserer Datenbank finden. Bitte registriere dich neu, auch wenn du letztes Jahr bereits geholfen hast.",
)
return redirect("register")
return render(request, "login.html", {"token": token})
def login_confirm(request, token):
try:
tk = LoginToken.objects.get(pk=token)
except LoginToken.DoesNotExist:
messages.add_message(
request,
messages.WARNING,
"Wir konnten dich nicht in unserer Datenbank finden. Bitte registriere dich neu, auch wenn du letztes Jahr bereits geholfen hast.",
)
return redirect("register")
if not tk.helper.number_validated:
tk.helper.number_validated = True
tk.helper.save()