Skip to content

Commit 60a60de

Browse files
committed
Replaced inline database lookups with get_active_ads().
- Legacy-Id: 14987
1 parent 8e97669 commit 60a60de

2 files changed

Lines changed: 5 additions & 5 deletions

File tree

ietf/doc/models.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
DocRelationshipName, DocReminderTypeName, BallotPositionName, ReviewRequestStateName, FormalLanguageName,
2424
DocUrlTagName)
2525
from ietf.person.models import Email, Person
26+
from ietf.person.utils import get_active_ads
2627
from ietf.utils import log
2728
from ietf.utils.admin import admin_link
2829
from ietf.utils.validators import validate_no_control_chars
@@ -1031,9 +1032,9 @@ class BallotDocEvent(DocEvent):
10311032

10321033
def active_ad_positions(self):
10331034
"""Return dict mapping each active AD to a current ballot position (or None if they haven't voted)."""
1034-
active_ads = list(Person.objects.filter(role__name="ad", role__group__state="active", role__group__type="area"))
10351035
res = {}
10361036

1037+
active_ads = get_active_ads()
10371038
positions = BallotPositionDocEvent.objects.filter(type="changed_ballot_position",ad__in=active_ads, ballot=self).select_related('ad', 'pos').order_by("-time", "-id")
10381039

10391040
for pos in positions:
@@ -1050,7 +1051,7 @@ def all_positions(self):
10501051

10511052
positions = []
10521053
seen = {}
1053-
active_ads = list(Person.objects.filter(role__name="ad", role__group__state="active", role__group__type="area").distinct())
1054+
active_ads = get_active_ads()
10541055
for e in BallotPositionDocEvent.objects.filter(type="changed_ballot_position", ballot=self).select_related('ad', 'pos').order_by("-time", '-id'):
10551056
if e.ad not in seen:
10561057
e.old_ad = e.ad not in active_ads

ietf/doc/views_search.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
from ietf.idindex.index import active_drafts_index_by_group
5454
from ietf.name.models import DocTagName, DocTypeName, StreamName
5555
from ietf.person.models import Person
56+
from ietf.person.utils import get_active_ads
5657
from ietf.utils.draft_search import normalize_draftname
5758
from ietf.doc.utils_search import prepare_document_table
5859

@@ -87,9 +88,7 @@ class SearchForm(forms.Form):
8788
def __init__(self, *args, **kwargs):
8889
super(SearchForm, self).__init__(*args, **kwargs)
8990
responsible = Document.objects.values_list('ad', flat=True).distinct()
90-
active_ads = list(Person.objects.filter(role__name="ad",
91-
role__group__type="area",
92-
role__group__state="active").distinct())
91+
active_ads = get_active_ads()
9392
inactive_ads = list(((Person.objects.filter(pk__in=responsible) | Person.objects.filter(role__name="pre-ad",
9493
role__group__type="area",
9594
role__group__state="active")).distinct())

0 commit comments

Comments
 (0)