summaryrefslogtreecommitdiff
path: root/web/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'web/views.py')
-rw-r--r--web/views.py24
1 files changed, 21 insertions, 3 deletions
diff --git a/web/views.py b/web/views.py
index cc537c4..0009739 100644
--- a/web/views.py
+++ b/web/views.py
@@ -1,8 +1,11 @@
-from django.shortcuts import render
-from web.models import Event, Availability
-from django.shortcuts import get_object_or_404, redirect
from datetime import timedelta
+from django.contrib.auth import update_session_auth_hash
from django.contrib.auth.decorators import login_required
+from django.contrib.auth.forms import PasswordChangeForm
+from django.contrib.auth.views import PasswordChangeView
+from django.shortcuts import get_object_or_404, redirect, render
+from django.urls import reverse_lazy
+from web.models import Event, Availability
@login_required()
@@ -27,6 +30,21 @@ def index(request):
return render(request, "index.html", context)
+def change_password(request):
+ if request.method == 'POST':
+ form = PasswordChangeForm(request.user, request.POST)
+ if form.is_valid():
+ user = form.save()
+ update_session_auth_hash(request, user)
+ return redirect('password_change_done')
+ else:
+ form = PasswordChangeForm(request.user)
+ return render(request, 'change-password/change_password.html', {'form': form})
+
+def password_change_done(request):
+ return render(request, 'change-password/password_change_done.html')
+
+
@login_required()
def event(request, event_id):