@@ -39,9 +39,15 @@ def __init__(self, *args, **kwargs):
3939 positions = Position .objects .get_by_nomcom (self .nomcom ).opened ().order_by ('name' )
4040 results = []
4141 for position in positions :
42- nominees = [('%s_%s' % (position .id , i .id ), unicode (i )) for i in Nominee .objects .get_by_nomcom (self .nomcom ).not_duplicated ().filter (nominee_position = position ).select_related ("email" , "email__person" )]
42+ accepted_nominees = [np .nominee for np in NomineePosition .objects .filter (position = position ,state = 'accepted' ).exclude (nominee__duplicated__isnull = False )]
43+ nominees = [('%s_%s' % (position .id , i .id ), unicode (i )) for i in accepted_nominees ]
4344 if nominees :
44- results .append ((position .name , nominees ))
45+ results .append ((position .name + " (Accepted)" , nominees ))
46+ for position in positions :
47+ other_nominees = [np .nominee for np in NomineePosition .objects .filter (position = position ).exclude (state = 'accepted' ).exclude (nominee__duplicated__isnull = False )]
48+ nominees = [('%s_%s' % (position .id , i .id ), unicode (i )) for i in other_nominees ]
49+ if nominees :
50+ results .append ((position .name + " (Declined or Pending)" , nominees ))
4551 kwargs ['choices' ] = results
4652 super (PositionNomineeField , self ).__init__ (* args , ** kwargs )
4753
@@ -671,7 +677,7 @@ def set_nomcom(self, nomcom, user, instances=None):
671677 if self .feedback_type .slug != 'nomina' :
672678 self .fields ['nominee' ] = MultiplePositionNomineeField (nomcom = self .nomcom ,
673679 required = True ,
674- widget = forms .SelectMultiple ,
680+ widget = forms .SelectMultiple ( attrs = { 'class' : 'nominee_multi_select' , 'size' : '12' }) ,
675681 help_text = 'Hold down "Control", or "Command" on a Mac, to select more than one.' )
676682 else :
677683 self .fields ['position' ] = forms .ModelChoiceField (queryset = Position .objects .get_by_nomcom (self .nomcom ).opened (), label = "Position" )
0 commit comments