Skip to content

Commit cd91260

Browse files
committed
Add IRTF State option to Additional Search Criteria pulldown. Commit ready for merge.
- Legacy-Id: 15012
1 parent 56869d9 commit cd91260

2 files changed

Lines changed: 19 additions & 2 deletions

File tree

ietf/doc/views_search.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,14 +63,15 @@ class SearchForm(forms.Form):
6363
activedrafts = forms.BooleanField(required=False, initial=True)
6464
olddrafts = forms.BooleanField(required=False, initial=False)
6565

66-
by = forms.ChoiceField(choices=[(x,x) for x in ('author','group','area','ad','state','stream')], required=False, initial='group')
66+
by = forms.ChoiceField(choices=[(x,x) for x in ('author','group','area','ad','state','irtfstate','stream')], required=False, initial='group')
6767
author = forms.CharField(required=False)
6868
group = forms.CharField(required=False)
6969
stream = forms.ModelChoiceField(StreamName.objects.all().order_by('name'), empty_label="any stream", required=False)
7070
area = forms.ModelChoiceField(Group.objects.filter(type="area", state="active").order_by('name'), empty_label="any area", required=False)
7171
ad = forms.ChoiceField(choices=(), required=False)
7272
state = forms.ModelChoiceField(State.objects.filter(type="draft-iesg"), empty_label="any state", required=False)
7373
substate = forms.ChoiceField(choices=(), required=False)
74+
irtfstate = forms.ModelChoiceField(State.objects.filter(type="draft-stream-irtf"), empty_label="any state", required=False)
7475

7576
sort = forms.ChoiceField(
7677
choices= (
@@ -112,7 +113,9 @@ def clean(self):
112113
for k in ('author', 'group', 'area', 'ad'):
113114
if q['by'] == k and not q.get(k):
114115
q['by'] = None
115-
if q['by'] == 'state' and not (q.get("state") or q.get('substate')):
116+
if q['by'] == 'state' and not (q.get('state') or q.get('substate')):
117+
q['by'] = None
118+
if q['by'] == 'irtfstate' and not (q.get('irtfstate')):
116119
q['by'] = None
117120
else:
118121
q['by'] = None
@@ -122,6 +125,8 @@ def clean(self):
122125
q[k] = ""
123126
if q['by'] != 'state':
124127
q['state'] = q['substate'] = None
128+
if q['by'] != 'irtfstate':
129+
q['irtfstate'] = None
125130
return q
126131

127132
def retrieve_search_results(form, all_types=False):
@@ -184,6 +189,8 @@ def retrieve_search_results(form, all_types=False):
184189
docs = docs.filter(states=query["state"])
185190
if query["substate"]:
186191
docs = docs.filter(tags=query["substate"])
192+
elif by == "irtfstate":
193+
docs = docs.filter(states=query["irtfstate"])
187194
elif by == "stream":
188195
docs = docs.filter(stream=query["stream"])
189196

ietf/templates/doc/search/search_form.html

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,16 @@
106106
</div>
107107
</div>
108108

109+
<div class="form-group search_field">
110+
<div class="col-sm-4">
111+
<input type="radio" name="by" value="irtfstate" {% if form.by.value == "irtfstate" %}checked{% endif %} id="irtfstate"/>
112+
<label for="irtfstate" class="control-label">IRTF State</label>
113+
</div>
114+
<div class="col-sm-8">
115+
{{ form.irtfstate|add_class:"form-control" }}
116+
</div>
117+
</div>
118+
109119
<div class="form-group search_field">
110120
<div class="col-sm-4">
111121
<input type="radio" name="by" value="stream" {% if form.by.value == "stream" %}checked{% endif %} id="stream"/>

0 commit comments

Comments
 (0)