From 4cf792f8dd06bc755451c6249b0dfdd20a744a08 Mon Sep 17 00:00:00 2001 From: Brody Wilton <brodywilton@hotmail.com> Date: Tue, 19 Mar 2024 10:24:15 +0000 Subject: [PATCH] Implement password reset on dashboard --- myproject/myapp/templates/password_change_done.html | 8 ++++++++ myproject/myapp/templates/password_change_form.html | 12 ++++++++++++ myproject/myapp/templates/user_page.html | 9 ++++++--- myproject/myapp/urls.py | 5 ++++- 4 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 myproject/myapp/templates/password_change_done.html create mode 100644 myproject/myapp/templates/password_change_form.html diff --git a/myproject/myapp/templates/password_change_done.html b/myproject/myapp/templates/password_change_done.html new file mode 100644 index 0000000..c444a26 --- /dev/null +++ b/myproject/myapp/templates/password_change_done.html @@ -0,0 +1,8 @@ +{% extends "_base.html" %} {% block content %} + +<div class="container"> + <h2>Password Changed Successfully</h2> + <p>Your password has been changed successfully</p> +</div> + +{% endblock content %} diff --git a/myproject/myapp/templates/password_change_form.html b/myproject/myapp/templates/password_change_form.html new file mode 100644 index 0000000..ab290a4 --- /dev/null +++ b/myproject/myapp/templates/password_change_form.html @@ -0,0 +1,12 @@ +{% extends "_base.html" %} {% block content %} + +<div class="container"> + <h2>Change Your Password</h2> + <form method="post"> + {% csrf_token %} + {{ form.as_p }} + <button type="submit">Change my password</button> + </form> +</div> + +{% endblock content %} \ No newline at end of file diff --git a/myproject/myapp/templates/user_page.html b/myproject/myapp/templates/user_page.html index 5f6b6d6..3999efc 100644 --- a/myproject/myapp/templates/user_page.html +++ b/myproject/myapp/templates/user_page.html @@ -9,8 +9,11 @@ </div> <!-- Right Content --> <div class="col-span-full xl:col-auto"> - - <div + <div class="p-4 mb-4 bg-white border boder-gray-200 rounded-lg shadow-sm 2xl:col-span-2 dark:border-gray-700 sm:p-6 dark:bg-gray-800"> + <h3 class="mb-4 text-xl font-semibold dark:text-white">Change your password</h3> + <a href="{% url 'password_change' %}" class="text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800">Change Password</a> + </div> + <!-- <div class="p-4 mb-4 bg-white border border-gray-200 rounded-lg shadow-sm 2xl:col-span-2 dark:border-gray-700 sm:p-6 dark:bg-gray-800" > <h3 class="mb-4 text-xl font-semibold dark:text-white"> @@ -145,7 +148,7 @@ </div> </form> {% comment %} REPLACE WITH LOGIC TO CHECK PROPER USER {% endcomment %} - </div> + </div> --> {% if 1 %} <div class="p-4 mb-4 bg-white border border-gray-200 rounded-lg shadow-sm 2xl:col-span-2 dark:border-gray-700 sm:p-6 dark:bg-gray-800" diff --git a/myproject/myapp/urls.py b/myproject/myapp/urls.py index 9ea69f9..37ec9c8 100644 --- a/myproject/myapp/urls.py +++ b/myproject/myapp/urls.py @@ -1,6 +1,7 @@ from django.urls import path -from .views import InstrumentDetectionView, index, users, maintenance, handler404, handler500, register, user_login, terms_conditions, privacy_policy, handling_music_file, pricing, generate_pdf, admin_table +from .views import InstrumentDetectionView, index, users, maintenance, handler404, handler500, register, user_login, terms_conditions, privacy_policy, handling_music_file, pricing, generate_pdf, admin_table +from django.contrib.auth import views as auth_views urlpatterns = [ # path('', index, name='index'), <- uncomment when index/main page will be ready @@ -21,4 +22,6 @@ urlpatterns = [ path('admin_table/', admin_table, name='admin_table'), path('instrument_detection/', InstrumentDetectionView.as_view(), name='instrument_detection') + path('password_change/', auth_views.PasswordChangeView.as_view(template_name='password_change_form.html'), name='password_change'), + path('password_change/done/', auth_views.PasswordChangeDoneView.as_view(template_name='password_change_done.html'), name='password_change_done'), ] -- GitLab