|
1 | | -from forms import NonWgStep1, ListReqStep1, PickApprover, DeletionPickApprover, UrlMultiWidget, Preview, ListReqAuthorized, ListReqClose |
| 1 | +from forms import NonWgStep1, ListReqStep1, PickApprover, DeletionPickApprover, UrlMultiWidget, Preview, ListReqAuthorized, ListReqClose, MultiEmailField, AdminRequestor |
2 | 2 | from models import NonWgMailingList, MailingList |
3 | 3 | from ietf.idtracker.models import Area, PersonOrOrgInfo |
4 | 4 | from django import newforms as forms |
@@ -140,12 +140,38 @@ def non_wg_wizard(request): |
140 | 140 | 'approved': None, |
141 | 141 | 'approved_date': None, |
142 | 142 | 'reason_to_delete': None, |
| 143 | + 'add_comment': None, |
| 144 | + 'mail_type': None, |
| 145 | + 'mail_cat': None, |
| 146 | + 'domain_name': None, |
| 147 | + 'admins': MultiEmailField(label='List Administrator(s)', widget=AdminRequestor(attrs={'cols': 41, 'rows': 4})), |
| 148 | + 'initial': MultiEmailField(label='Initial list member(s)', widget=forms.Textarea(attrs={'cols': 41, 'rows': 4}), required=False), |
143 | 149 | } |
144 | 150 |
|
| 151 | +list_labels = { |
| 152 | + 'post_who': 'Who is allowed to post to this list?', |
| 153 | +} |
| 154 | + |
| 155 | +# can I do a multiwidget for the mailing list admins? |
| 156 | +# and something to display @domain after the email list name? |
145 | 157 | list_widgets = { |
| 158 | + 'subscription': forms.Select(choices=MailingList.SUBSCRIPTION_CHOICES), |
| 159 | + 'post_who': forms.Select(choices=(('1', 'List members only'), ('0', 'Open'))), |
| 160 | + 'post_admin': forms.Select(choices=(('0', 'No'), ('1', 'Yes'))), |
| 161 | + 'archive_private': forms.Select(choices=(('0', 'No'), ('1', 'Yes'))), |
146 | 162 | } |
147 | 163 |
|
148 | 164 | list_attrs = { |
| 165 | + 'requestor': { 'size': 55 }, |
| 166 | + 'requestor_email': { 'size': 55 }, |
| 167 | + 'mlist_name': { 'size': 10 }, |
| 168 | + 'short_desc': { 'size': 55 }, |
| 169 | + 'long_desc': { 'cols': 41, 'rows': 4, 'wrap': 'virtual' }, |
| 170 | + 'admins': { 'cols': 41, 'rows': 4 }, |
| 171 | + 'initial': { 'cols': 41, 'rows': 4 }, |
| 172 | + 'welcome_message': { 'cols': 41, 'rows': 4 }, |
| 173 | + 'welcome_new': { 'cols': 41, 'rows': 4 }, |
| 174 | + 'archive_remote': { 'cols': 41, 'rows': 4 }, |
149 | 175 | } |
150 | 176 |
|
151 | 177 | list_callback = form_decorator(fields=list_fields, widgets=list_widgets, attrs=list_attrs) |
@@ -175,7 +201,7 @@ def process_step(self, request, form, step): |
175 | 201 | if form.clean_data['mail_type'].startswith('close'): |
176 | 202 | self.form_list.append(ListReqClose) |
177 | 203 | else: |
178 | | - self.form_list.append(forms.form_for_model(MailingList)) |
| 204 | + self.form_list.append(forms.form_for_model(MailingList, formfield_callback=list_callback)) |
179 | 205 | #XXX not quite |
180 | 206 | super(ListReqWizard, self).process_step(request, form, step) |
181 | 207 |
|
|
0 commit comments