|
22 | 22 | from ietf.dbtemplate.models import DBTemplate |
23 | 23 | from ietf.dbtemplate.views import group_template_edit, group_template_show |
24 | 24 | from ietf.name.models import NomineePositionStateName, FeedbackTypeName |
25 | | -from ietf.group.models import Group, GroupEvent |
| 25 | +from ietf.group.models import Group, GroupEvent, Role |
26 | 26 | from ietf.message.models import Message |
27 | 27 | from ietf.meeting.models import Meeting |
28 | 28 |
|
|
37 | 37 | FeedbackLastSeen, Topic, TopicFeedbackLastSeen, ) |
38 | 38 | from ietf.nomcom.utils import (get_nomcom_by_year, store_nomcom_private_key, |
39 | 39 | get_hash_nominee_position, send_reminder_to_nominees, |
40 | | - HOME_TEMPLATE, NOMINEE_ACCEPT_REMINDER_TEMPLATE,NOMINEE_QUESTIONNAIRE_REMINDER_TEMPLATE) |
| 40 | + HOME_TEMPLATE, NOMINEE_ACCEPT_REMINDER_TEMPLATE,NOMINEE_QUESTIONNAIRE_REMINDER_TEMPLATE, |
| 41 | + DISQUALIFYING_ROLE_QUERY_EXPRESSION) |
41 | 42 | from ietf.ietfauth.utils import role_required |
42 | 43 | from ietf.person.models import Person |
43 | 44 | from ietf.utils import log |
@@ -1251,14 +1252,8 @@ def eligible(request, year): |
1251 | 1252 | registration_emails = m.meetingregistration_set.values_list('email',flat=True) |
1252 | 1253 | attendees[m] = Person.objects.filter(email__address__in=registration_emails).distinct() |
1253 | 1254 | # See RFC8713 section 4.15 |
1254 | | - potentials.update( |
1255 | | - attendees[m] \ |
1256 | | - .exclude(role__group__acronym='isocbot', role__name_id__in=['member','chair']) \ |
1257 | | - .exclude(role__group__acronym='ietf-trust', role__name_id__in=['member','chair']) \ |
1258 | | - .exclude(role__group__acronym='llc-board', role__name_id__in=['member','chair']) \ |
1259 | | - .exclude(role__group__type_id='area',role__group__state='active',role__name_id='ad') \ |
1260 | | - .exclude(role__group__acronym='iab',role__name_id__in=['member','chair']) |
1261 | | - ) |
| 1255 | + disqualified_roles = Role.objects.filter(DISQUALIFYING_ROLE_QUERY_EXPRESSION) |
| 1256 | + potentials.update(attendees[m].exclude(role__in=disqualified_roles)) |
1262 | 1257 | eligible_persons = [] |
1263 | 1258 | for p in potentials: |
1264 | 1259 | count = 0 |
|
0 commit comments