File tree Expand file tree Collapse file tree
templates/django_forms_workflows Expand file tree Collapse file tree Original file line number Diff line number Diff line change 33Enterprise-grade, database-driven form builder with approval workflows
44"""
55
6- __version__ = "0.5.10 "
6+ __version__ = "0.5.11 "
77__author__ = "Django Forms Workflows Contributors"
88__license__ = "LGPL-3.0-only"
99
Original file line number Diff line number Diff line change @@ -69,7 +69,10 @@ <h5 class="mb-0">Submitted Data</h5>
6969 < h5 class ="mb-0 "> Your Decision</ h5 >
7070 </ div >
7171 < div class ="card-body ">
72- < form method ="post " id ="approvalForm ">
72+ < form method ="post " id ="approvalForm "
73+ hx-post =""
74+ hx-indicator ="#loadingIndicator "
75+ hx-disabled-elt ="button[type=submit] ">
7376 {% csrf_token %}
7477 < div class ="mb-3 ">
7578 < label for ="comments " class ="form-label "> Comments (Optional)</ label >
@@ -85,6 +88,10 @@ <h5 class="mb-0">Your Decision</h5>
8588 < a href ="{% url 'forms_workflows:approval_inbox' %} " class ="btn btn-outline-secondary btn-lg ">
8689 < i class ="bi bi-arrow-left "> </ i > Back
8790 </ a >
91+ < span id ="loadingIndicator " class ="htmx-indicator ms-3 ">
92+ < span class ="spinner-border spinner-border-sm " role ="status "> </ span >
93+ Processing...
94+ </ span >
8895 </ div >
8996 </ form >
9097 </ div >
@@ -93,5 +100,13 @@ <h5 class="mb-0">Your Decision</h5>
93100</ div >
94101{% endblock %}
95102
103+ {% block extra_css %}
104+ < style >
105+ .htmx-indicator { display : none; }
106+ .htmx-request .htmx-indicator { display : inline-block; }
107+ .htmx-request button [type = submit ] { opacity : 0.6 ; }
108+ </ style >
109+ {% endblock %}
110+
96111
97112
Original file line number Diff line number Diff line change 113113
114114 <!-- Bootstrap 5 JS Bundle -->
115115 < script src ="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js "> </ script >
116+ <!-- HTMX -->
117+ < script src ="https://unpkg.com/htmx.org@2.0.4 "> </ script >
116118 {% block extra_js %}{% endblock %}
117119</ body >
118120</ html >
Original file line number Diff line number Diff line change 1414from django .contrib .auth .decorators import login_required
1515from django .core .files .storage import default_storage
1616from django .db import models
17- from django .http import HttpResponseForbidden , JsonResponse
17+ from django .http import HttpResponse , HttpResponseForbidden , JsonResponse
1818from django .shortcuts import get_object_or_404 , redirect , render
19+ from django .urls import reverse
1920from django .utils import timezone
2021from django .views .decorators .http import require_http_methods
2122
@@ -353,6 +354,11 @@ def approve_submission(request, task_id):
353354 )
354355
355356 messages .success (request , f"Submission { decision } d successfully." )
357+ redirect_url = reverse ("forms_workflows:approval_inbox" )
358+ if request .headers .get ("HX-Request" ):
359+ response = HttpResponse ()
360+ response ["HX-Redirect" ] = redirect_url
361+ return response
356362 return redirect ("forms_workflows:approval_inbox" )
357363
358364 return render (
Original file line number Diff line number Diff line change 11[tool .poetry ]
22name = " django-forms-workflows"
3- version = " 0.5.10 "
3+ version = " 0.5.11 "
44description = " Enterprise-grade, database-driven form builder with approval workflows and external data integration"
55license = " LGPL-3.0-only"
66readme = " README.md"
You can’t perform that action at this time.
0 commit comments