diff --git a/aleksis/apps/alsijil/forms.py b/aleksis/apps/alsijil/forms.py index b529f99b269e178aede6f0ddec76710d53e8dd23..4482d663d7e767969c33b241f5461aaf2abc5cf7 100644 --- a/aleksis/apps/alsijil/forms.py +++ b/aleksis/apps/alsijil/forms.py @@ -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() - ] + diff --git a/aleksis/apps/alsijil/templates/alsijil/class_register/person.html b/aleksis/apps/alsijil/templates/alsijil/class_register/person.html index 30a08ac0c228e67fa8c9fc6d6b743cfd83dd9c8b..a0041c196982dc8438c1e5cfaadcc6c8cceff9ee 100644 --- a/aleksis/apps/alsijil/templates/alsijil/class_register/person.html +++ b/aleksis/apps/alsijil/templates/alsijil/class_register/person.html @@ -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> diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py index d25c08336fb332e84501ebe553b2ca475227cb61..19c0f19de32e695b135c80c6613661bb74ab541f 100644 --- a/aleksis/apps/alsijil/views.py +++ b/aleksis/apps/alsijil/views.py @@ -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)