Skip to content

Commit 6a32a36

Browse files
committed
Merged in [15012] from ford@isoc.org:
Add IRTF State option to Additional Search Criteria pulldown. - Legacy-Id: 15016 Note: SVN reference [15012] has been migrated to Git commit cd91260
2 parents 18572cb + cd91260 commit 6a32a36

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
@@ -64,14 +64,15 @@ class SearchForm(forms.Form):
6464
activedrafts = forms.BooleanField(required=False, initial=True)
6565
olddrafts = forms.BooleanField(required=False, initial=False)
6666

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

7677
sort = forms.ChoiceField(
7778
choices= (
@@ -111,7 +112,9 @@ def clean(self):
111112
for k in ('author', 'group', 'area', 'ad'):
112113
if q['by'] == k and not q.get(k):
113114
q['by'] = None
114-
if q['by'] == 'state' and not (q.get("state") or q.get('substate')):
115+
if q['by'] == 'state' and not (q.get('state') or q.get('substate')):
116+
q['by'] = None
117+
if q['by'] == 'irtfstate' and not (q.get('irtfstate')):
115118
q['by'] = None
116119
else:
117120
q['by'] = None
@@ -121,6 +124,8 @@ def clean(self):
121124
q[k] = ""
122125
if q['by'] != 'state':
123126
q['state'] = q['substate'] = None
127+
if q['by'] != 'irtfstate':
128+
q['irtfstate'] = None
124129
return q
125130

126131
def retrieve_search_results(form, all_types=False):
@@ -183,6 +188,8 @@ def retrieve_search_results(form, all_types=False):
183188
docs = docs.filter(states=query["state"])
184189
if query["substate"]:
185190
docs = docs.filter(tags=query["substate"])
191+
elif by == "irtfstate":
192+
docs = docs.filter(states=query["irtfstate"])
186193
elif by == "stream":
187194
docs = docs.filter(stream=query["stream"])
188195

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)