Skip to content

Commit 779087d

Browse files
committed
Merged in [18601] from fenton@bluepopcorn.net:
Added NomCom membership history page. Fixes issue ietf-tools#3006. Branch - Legacy-Id: 18614 Note: SVN reference [18601] has been migrated to Git commit 431a112
2 parents e815b87 + 431a112 commit 779087d

5 files changed

Lines changed: 852 additions & 1 deletion

File tree

ietf/nomcom/tests.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ def setUp(self):
9090

9191
# public urls
9292
self.index_url = reverse('ietf.nomcom.views.year_index', kwargs={'year': self.year})
93+
self.history_url = reverse('ietf.nomcom.views.history')
9394
self.requirements_url = reverse('ietf.nomcom.views.requirements', kwargs={'year': self.year})
9495
self.questionnaires_url = reverse('ietf.nomcom.views.questionnaires', kwargs={'year': self.year})
9596
self.public_feedback_url = reverse('ietf.nomcom.views.public_feedback', kwargs={'year': self.year})
@@ -492,6 +493,10 @@ def test_index_view(self):
492493
"""Verify home view"""
493494
self.check_url_status(self.index_url, 200)
494495

496+
def test_history_view(self):
497+
"""Verify history view"""
498+
self.check_url_status(self.history_url, 200)
499+
495500
def test_announcements_view(self):
496501
nomcom = Group.objects.get(acronym="nomcom%s" % self.year, type="nomcom")
497502
msg = Message.objects.create(

ietf/nomcom/urls.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
urlpatterns = [
77
url(r'^$', views.index),
88
url(r'^ann/$', views.announcements),
9+
url(r'^history/$', views.history),
910
url(r'^(?P<year>\d{4})/private/$', views.private_index),
1011
url(r'^(?P<year>\d{4})/private/key/$', views.private_key),
1112
url(r'^(?P<year>\d{4})/private/help/$', views.configuration_help),

ietf/nomcom/views.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,40 @@ def announcements(request):
112112
},
113113
)
114114

115+
def history(request):
116+
nomcom_list = Group.objects.filter(type__slug='nomcom').order_by('acronym')
117+
118+
regimes = []
119+
120+
for nomcom in nomcom_list:
121+
year = int(nomcom.acronym[6:])
122+
if year > 2012:
123+
personnel = {}
124+
for r in Role.objects.filter(group=nomcom).order_by('person__name').select_related("email", "person", "name"):
125+
if r.name_id not in personnel:
126+
personnel[r.name_id] = []
127+
personnel[r.name_id].append(r)
128+
129+
nomcom.personnel = []
130+
for role_name_slug, roles in personnel.items():
131+
label = roles[0].name.name
132+
if len(roles) > 1:
133+
if label.endswith("y"):
134+
label = label[:-1] + "ies"
135+
else:
136+
label += "s"
137+
138+
nomcom.personnel.append((role_name_slug, label, roles))
139+
140+
nomcom.personnel.sort(key=lambda t: t[2][0].name.order)
141+
142+
regimes.append(dict(year=year, label="%s/%s" % (year, year+1), nomcom=nomcom))
143+
144+
regimes.sort(key=lambda x: x['year'], reverse=True)
145+
146+
return render(request, "nomcom/history.html", {'nomcom_list': nomcom_list,
147+
'regimes': regimes})
148+
115149
@role_required("Nomcom")
116150
def private_key(request, year):
117151
nomcom = get_nomcom_by_year(year)

ietf/templates/nomcom/announcements.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ <h2 class="anchor-target" id="{{ regime.group.start_year }}">Messages from {{ re
5656

5757
<h2 class="anchor-target" id="historical">Historical information</h2>
5858
<ul>
59-
<li><a href="https://www.ietf.org/nomcom/committee.html">NomCom Members (by year)</a></li>
59+
<li><a href="{% url "ietf.nomcom.views.history" %}">NomCom Members (by year)</a></li>
6060
</ul>
6161

6262

0 commit comments

Comments
 (0)