From adf2449d373bcd07e2b0ce557beeb1f49d1894e4 Mon Sep 17 00:00:00 2001 From: Andrew Godwin Date: Thu, 17 Nov 2022 19:36:25 -0700 Subject: Add the user settings page too --- users/views/settings.py | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'users/views/settings.py') diff --git a/users/views/settings.py b/users/views/settings.py index d823676..fd138c2 100644 --- a/users/views/settings.py +++ b/users/views/settings.py @@ -126,6 +126,7 @@ class ProfilePage(FormView): """ template_name = "settings/profile.html" + extra_context = {"section": "profile"} class form_class(forms.Form): name = forms.CharField(max_length=500) @@ -150,11 +151,6 @@ class ProfilePage(FormView): "image": self.request.identity.image.url, } - def get_context_data(self): - context = super().get_context_data() - context["section"] = "profile" - return context - def form_valid(self, form): # Update identity name and summary self.request.identity.name = form.cleaned_data["name"] @@ -174,3 +170,24 @@ class ProfilePage(FormView): self.request.identity.image = image self.request.identity.save() return redirect(".") + + +@method_decorator(identity_required, name="dispatch") +class SecurityPage(FormView): + """ + Lets the identity's profile be edited + """ + + template_name = "settings/login_security.html" + extra_context = {"section": "security"} + + class form_class(forms.Form): + email = forms.EmailField( + disabled=True, + help_text="Your email address cannot be changed yet.", + ) + + def get_initial(self): + return {"email": self.request.user.email} + + template_name = "settings/login_security.html" -- cgit v1.2.3