From 85d0934ba0b57934414c263d1ee6c4afc7c01a98 Mon Sep 17 00:00:00 2001 From: Jennifer Richards Date: Wed, 10 May 2023 17:03:31 -0300 Subject: [PATCH] refactor: Refactor LiaisonForm without BetterModelForm --- ietf/liaisons/forms.py | 10 +------ ietf/templates/liaisons/edit.html | 45 +++++++++++++++++++++---------- 2 files changed, 32 insertions(+), 23 deletions(-) diff --git a/ietf/liaisons/forms.py b/ietf/liaisons/forms.py index 3dfe6e406..01aa935dc 100644 --- a/ietf/liaisons/forms.py +++ b/ietf/liaisons/forms.py @@ -9,7 +9,6 @@ import operator from typing import Union # pyflakes:ignore from email.utils import parseaddr -from form_utils.forms import BetterModelForm from django import forms from django.conf import settings @@ -213,7 +212,7 @@ class CustomModelMultipleChoiceField(forms.ModelMultipleChoiceField): return super(CustomModelMultipleChoiceField, self).prepare_value(value) -class LiaisonModelForm(BetterModelForm): +class LiaisonModelForm(forms.ModelForm): '''Specify fields which require a custom widget or that are not part of the model. ''' from_groups = forms.ModelMultipleChoiceField(queryset=Group.objects.all(),label='Groups',required=False) @@ -238,13 +237,6 @@ class LiaisonModelForm(BetterModelForm): class Meta: model = LiaisonStatement exclude = ('attachments','state','from_name','to_name') - fieldsets = [('From', {'fields': ['from_groups','from_contact', 'response_contacts'], 'legend': ''}), - ('To', {'fields': ['to_groups','to_contacts'], 'legend': ''}), - ('Other email addresses', {'fields': ['technical_contacts','action_holder_contacts','cc_contacts'], 'legend': ''}), - ('Purpose', {'fields':['purpose', 'deadline'], 'legend': ''}), - ('Reference', {'fields': ['other_identifiers','related_to'], 'legend': ''}), - ('Liaison Statement', {'fields': ['title', 'submitted_date', 'body', 'attachments'], 'legend': ''}), - ('Add attachment', {'fields': ['attach_title', 'attach_file', 'attach_button'], 'legend': ''})] def __init__(self, user, *args, **kwargs): super(LiaisonModelForm, self).__init__(*args, **kwargs) diff --git a/ietf/templates/liaisons/edit.html b/ietf/templates/liaisons/edit.html index 2c7b4b65b..30cc4b00e 100644 --- a/ietf/templates/liaisons/edit.html +++ b/ietf/templates/liaisons/edit.html @@ -47,21 +47,38 @@ method="post" enctype="multipart/form-data" data-edit-form="{{ form.edit }}" - data-ajax-info-url="{% url "ietf.liaisons.views.ajax_get_liaison_info" %}"> + data-ajax-info-url="{% url 'ietf.liaisons.views.ajax_get_liaison_info' %}"> {% csrf_token %} - {% for fieldset in form.fieldsets %} -

{{ fieldset.name }}

- {% for field in fieldset %} - {% if field.id_for_label != "id_attachments" %} - {% bootstrap_field field layout="horizontal" %} - {% else %} -
-

{{ field.label }}

-
{{ field }}
-
- {% endif %} - {% endfor %} - {% endfor %} +

From

+ {% bootstrap_field form.from_groups layout="horizontal" %} + {% bootstrap_field form.from_contact layout="horizontal" %} + {% bootstrap_field form.response_contacts layout="horizontal" %} +

To

+ {% bootstrap_field form.to_groups layout="horizontal" %} + {% bootstrap_field form.to_contacts layout="horizontal" %} +

Other email addresses

+ {% bootstrap_field form.technical_contacts layout="horizontal" %} + {% bootstrap_field form.action_holder_contacts layout="horizontal" %} + {% bootstrap_field form.cc_contacts layout="horizontal" %} +

Purpose

+ {% bootstrap_field form.purpose layout="horizontal" %} + {% bootstrap_field form.deadline layout="horizontal" %} +

Reference

+ {% bootstrap_field form.other_identifiers layout="horizontal" %} + {% bootstrap_field form.related_to layout="horizontal" %} +

Liaison Statement

+ {% bootstrap_field form.title layout="horizontal" %} + {% bootstrap_field form.submitted_date layout="horizontal" %} + {% bootstrap_field form.body layout="horizontal" %} +
+

{{ form.attachments.label }}

+
{{ form.attachments }}
+
+

Add attachment

+ {% bootstrap_field form.attach_title layout="horizontal" %} + {% bootstrap_field form.attach_file layout="horizontal" %} + {% bootstrap_field form.attach_button layout="horizontal" %} + Cancel