11# Copyright The IETF Trust 2007, All Rights Reserved
22
3- from forms import NonWgStep1 , ListReqStep1 , PickApprover , DeletionPickApprover , UrlMultiWidget , Preview , ListReqAuthorized , ListReqClose , MultiEmailField , AdminRequestor , ApprovalComment , ListApprover , LooseModelChoiceField
3+ from forms import NonWgStep1 , ListReqStep1 , PickApprover , DeletionPickApprover , UrlMultiWidget , Preview , ListReqAuthorized , ListReqClose , MultiEmailField , AdminRequestor , ApprovalComment , ListApprover
44from models import NonWgMailingList , MailingList , Domain
55from ietf .idtracker .models import Area , PersonOrOrgInfo , AreaDirector , WGChair , Role
66from django import newforms as forms
1313from datetime import datetime
1414
1515def get_approvers_from_area (area_id ) :
16- if area_id == "none" :
17- return [ad .person_id for ad in Role .objects .filter (role_name__in = ("IETF" , "IAB" , ))]
18- else :
19- return [ad .person_id for ad in Area .objects .get (area_acronym = area_id ).areadirector_set .all ()]
16+ if not area_id :
17+ return [ad .person_id for ad in Role .objects .filter (role_name__in = ("IETF" , "IAB" , ))]
18+ else :
19+ return [ad .person_id for ad in Area .objects .get (area_acronym = area_id ).areadirector_set .all ()]
2020
2121def formchoice (form , field ):
2222 if not (form .is_valid ()):
@@ -105,19 +105,19 @@ def process_step(self, request, form, step):
105105 if step == 0 :
106106 self .clean_forms = [ form ]
107107 if form .clean_data ['add_edit' ] == 'add' :
108- nonwg_fields ["area" ] = LooseModelChoiceField (Area .objects .filter (status = 1 ))
108+ nonwg_fields ["area" ] = forms . ModelChoiceField (Area .objects .filter (status = 1 ), required = False , empty_label = 'none' )
109109 nonwg_callback = form_decorator (fields = nonwg_fields , widgets = nonwg_widgets , attrs = nonwg_attrs , querysets = nonwg_querysets )
110110
111111 self .form_list .append (forms .form_for_model (NonWgMailingList , formfield_callback = nonwg_callback ))
112112 elif form .clean_data ['add_edit' ] == 'edit' :
113113 list = NonWgMailingList .objects .get (pk = form .clean_data ['list_id' ])
114- nonwg_fields ["area" ] = LooseModelChoiceField (Area .objects .filter (status = 1 ), initial = list .area_id is None and "none" or list .area_id )
114+ nonwg_fields ["area" ] = forms . ModelChoiceField (Area .objects .filter (status = 1 ), required = False , empty_label = 'none' , initial = list .area_id is None or list .area_id )
115115 nonwg_callback = form_decorator (fields = nonwg_fields , widgets = nonwg_widgets , attrs = nonwg_attrs , querysets = nonwg_querysets )
116116
117117 self .form_list .append (forms .form_for_instance (list , formfield_callback = nonwg_callback ))
118118 elif form .clean_data ['add_edit' ] == 'delete' :
119119 list = NonWgMailingList .objects .get (pk = form .clean_data ['list_id_delete' ])
120- self .form_list .append (gen_approval (get_approvers_from_area (list .area is None and "none" or list .area_id ), DeletionPickApprover ))
120+ self .form_list .append (gen_approval (get_approvers_from_area (list .area is None or list .area_id ), DeletionPickApprover ))
121121 self .form_list .append (Preview )
122122 else :
123123 self .clean_forms .append (form )
@@ -135,7 +135,7 @@ def done(self, request, form_list):
135135 if add_edit == 'add' or add_edit == 'edit' :
136136 template = 'mailinglists/nwg_addedit_email.txt'
137137 approver = self .clean_forms [2 ].clean_data ['approver' ]
138- if self .clean_forms [1 ].clean_data ["area" ] == "none" :
138+ if not self .clean_forms [1 ].clean_data ["area" ] :
139139 self .clean_forms [1 ].clean_data ["area" ] = None
140140
141141 list = NonWgMailingList (** self .clean_forms [1 ].clean_data )
0 commit comments