Skip to content
Snippets Groups Projects
Verified Commit 4c809b44 authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Fix action form usage

parent 6465643d
No related branches found
No related tags found
1 merge request!111Resolve "[Person overview] Implement multiple selection for marking absences as excused or for deleting"
Pipeline #6197 failed
......@@ -173,6 +173,13 @@ class ExcuseTypeForm(forms.ModelForm):
fields = ["short_name", "name"]
class PersonOverviewForm(ActionForm):
def get_actions(self):
return [mark_as_excused, delete_personal_note] + [
mark_as_excuse_type_generator(excuse_type) for excuse_type in ExcuseType.objects.all()
]
class GroupRoleForm(forms.ModelForm):
layout = Layout("name", "icon", "colour")
......@@ -257,11 +264,4 @@ class GroupRoleAssignmentEditForm(forms.ModelForm):
class Meta:
model = GroupRoleAssignment
fields = ["date_start", "date_end"]
class PersonOverviewForm(ActionForm):
def get_actions(self):
return [
mark_as_excused,
delete_personal_note
] + [
mark_as_excuse_type_generator(excuse_type) for excuse_type in ExcuseType.models.all()
]
......@@ -148,10 +148,10 @@
<h5>{% trans "Relevant personal notes" %}</h5>
<form action="" method="post">
{% csrf_token %}
{% form form=action_form %}{% endform %}
<button type="submit">Enter</button>
</form>
{% render_table personal_notes_table %}
{% form form=action_form %}{% endform %}
<button type="submit" class="btn waves-effect waves-light">Enter</button>
{% render_table personal_notes_table %}
</form>
<ul class="collapsible">
<li>
<div>
......
......@@ -787,13 +787,14 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp
context["personal_notes"] = personal_notes
context["excuse_types"] = ExcuseType.objects.all()
form = PersonOverviewForm(request, request.POST or None, queryset=personal_notes)
form = PersonOverviewForm(request, request.POST or None, queryset=PersonalNote.objects.all())
if request.method == "POST":
if form.is_valid():
with reversion.create_revision():
reversion.set_user(request.user)
# FIXME CHECK PERMISSION
form.execute()
person.refresh_from_db()
person.refresh_from_db()
context["action_form"] = form
table = PersonalNoteTable(personal_notes)
RequestConfig(request, paginate={"per_page": 20}).configure(table)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment