Skip to content

Commit 6bc2cfe

Browse files
committed
Merged [3246] from adam@nostrum.com:
Adding page to allow viewing meeting slot requests as they are made. There's no link to these yet. - Legacy-Id: 3255 Note: SVN reference [3246] has been migrated to Git commit 4f9e90d
2 parents ec86817 + 4f9e90d commit 6bc2cfe

4 files changed

Lines changed: 141 additions & 0 deletions

File tree

ietf/meeting/urls.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@
77
(r'^(?P<meeting_num>\d+)/materials.html$', views.show_html_materials),
88
(r'^agenda/$', views.html_agenda),
99
(r'^agenda(?:.html)?$', views.html_agenda),
10+
(r'^requests.html$', views.meeting_requests),
1011
(r'^agenda.txt$', views.text_agenda),
1112
(r'^agenda/agenda.ics$', views.ical_agenda),
1213
(r'^agenda.ics$', views.ical_agenda),
1314
(r'^agenda.csv$', views.csv_agenda),
1415
(r'^agenda/week-view.html$', views.week_view),
1516
(r'^week-view.html$', views.week_view),
1617
(r'^(?P<num>\d+)/agenda(?:.html)?/?$', views.html_agenda),
18+
(r'^(?P<num>\d+)/requests.html$', views.meeting_requests),
1719
(r'^(?P<num>\d+)/agenda.txt$', views.text_agenda),
1820
(r'^(?P<num>\d+)/agenda.ics$', views.ical_agenda),
1921
(r'^(?P<num>\d+)/agenda.csv$', views.csv_agenda),

ietf/meeting/views.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -362,3 +362,22 @@ def csv_agenda(request, num=None):
362362
{"timeslots":timeslots, "update":update, "meeting":meeting, "venue":venue, "ads":ads,
363363
"plenaryw_agenda":plenaryw_agenda, "plenaryt_agenda":plenaryt_agenda, },
364364
RequestContext(request)), mimetype="text/csv")
365+
366+
def meeting_requests(request, num=None) :
367+
timeslots, update, meeting, venue, ads, plenaryw_agenda, plenaryt_agenda = agenda_info(num)
368+
sessions = WgMeetingSession.objects.filter(meeting=meeting)
369+
370+
wgs = IETFWG.objects.filter(status=IETFWG.ACTIVE).order_by("group_acronym__acronym");
371+
rgs = IRTF.objects.all().order_by('acronym')
372+
areas = Area.objects.filter(status=Area.ACTIVE).order_by('area_acronym__acronym')
373+
return render_to_response("meeting/requests.html",
374+
{"sessions": sessions, "timeslots":timeslots, "update":update, "meeting":meeting, "venue":venue, "ads":ads, "wgs":wgs,
375+
"plenaryw_agenda":plenaryw_agenda, "plenaryt_agenda":plenaryt_agenda, "areas":areas},
376+
context_instance=RequestContext(request))
377+
378+
def conflict_digraph(request, num=None) :
379+
timeslots, update, meeting, venue, ads, plenaryw_agenda, plenaryt_agenda = agenda_info(num)
380+
sessions = WgMeetingSession.objects.filter(meeting=meeting)
381+
return render_to_response("meeting/digraph.html",
382+
{"sessions":sessions},
383+
context_instance=RequestContext(request), mimetype="text/plain")

ietf/proceedings/models.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -448,6 +448,15 @@ def interim_meeting (self):
448448
return True
449449
else:
450450
return False
451+
def length_session1_desc (self):
452+
mh = MeetingHour.objects.get(hour_id=self.length_session1)
453+
return mh.hour_desc
454+
def length_session2_desc (self):
455+
mh = MeetingHour.objects.get(hour_id=self.length_session2)
456+
return mh.hour_desc
457+
def length_session3_desc (self):
458+
mh = MeetingHour.objects.get(hour_id=self.length_session3)
459+
return mh.hour_desc
451460
class Meta:
452461
db_table = 'wg_meeting_sessions'
453462
verbose_name = "WG meeting session"
@@ -566,6 +575,14 @@ class Meta:
566575
db_table = 'wg_proceedings_activities'
567576
verbose_name = "WG material upload"
568577

578+
class MeetingHour(models.Model):
579+
hour_id = models.IntegerField(primary_key=True)
580+
hour_desc = models.CharField(max_length=60, blank=True)
581+
def __unicode__(self):
582+
return self.hour_desc
583+
class Meta:
584+
db_table = u'meeting_hours'
585+
569586
# changes done by convert-096.py:changed maxlength to max_length
570587
# removed core
571588
# removed raw_id_admin
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
{% extends "base.html" %}{% load ietf_filters %}
2+
{# Copyright The IETF Trust 2007, All Rights Reserved #}
3+
{% block title %}IETF {{ meeting.num }} Meeting Timeslot Requests{% endblock %}
4+
{% block morecss %}
5+
h2 { border-style: none none solid none }
6+
h3 { color: #0000a0 }
7+
th { text-align: right; vertical-align: text-top; }
8+
{% endblock morecss %}
9+
10+
{% block content %}
11+
<h1>IETF {{ meeting.num }} Meeting Timeslot Requests</h1>
12+
13+
{# cache for 15 minutes -- XXX need to add criteria #}
14+
{% load cache %}
15+
{% cache 900 meeting.num %}
16+
{% endcache %}
17+
18+
{% regroup sessions|dictsort:"area" by area as area_list %}
19+
{% for area in area_list %}
20+
{% if area.grouper %}{% ifnotequal area.grouper|upper "1PLENARY" %}
21+
<h2>{{area.grouper|upper}}</h2>
22+
23+
<h3>Summary</h3>
24+
<table>
25+
{% for session in area.list|dictsort:"acronym" %}
26+
{% if session.length_session1 %}
27+
<tr>
28+
<th>{{session.acronym|upper}}: </th>
29+
<td>
30+
{{session.length_session1_desc}}
31+
{% ifnotequal session.length_session2 "0" %}
32+
+ {{session.length_session2_desc}}
33+
{% endifnotequal %}
34+
{% ifnotequal session.length_session3 "0" %}
35+
+ {{session.length_session3_desc}}
36+
{% endifnotequal %}
37+
</td>
38+
</tr>
39+
{% endif %}
40+
{% endfor %}
41+
<tr><th>Unscheduled:</th><td>
42+
{% for wg in wgs %}
43+
{% ifequal wg.area_acronym|upper area.grouper|upper %}
44+
{% ifequal wg.meeting_scheduled|upper "NO" %}
45+
{{wg|upper}}
46+
{% endifequal %}
47+
{% endifequal %}
48+
{% endfor %}
49+
</td></tr>
50+
</table>
51+
52+
53+
{% for session in area.list|dictsort:"acronym" %}
54+
{% if session.length_session1 %}
55+
<h3>{{session.acronym|upper}}</h3>
56+
<table>
57+
<tr><th>Requested&nbsp;By: </th>
58+
<td>{{session.requested_by}} on {{session.requested_date}}
59+
{% ifnotequal session.requested_date session.last_modified_date %}
60+
(modified {{session.last_modified_date}})
61+
{% endifnotequal %}
62+
</td>
63+
</tr>
64+
<tr>
65+
<th>Session&nbsp;Length: </th>
66+
<td>
67+
{{session.length_session1_desc}}
68+
{% ifnotequal session.length_session2 "0" %}
69+
+ {{session.length_session2_desc}}
70+
{% endifnotequal %}
71+
{% ifnotequal session.length_session3 "0" %}
72+
+ {{session.length_session3_desc}}
73+
{% endifnotequal %}
74+
</td>
75+
</tr>
76+
{% if session.conflict1 %}
77+
<tr><th>Primary&nbsp;Conflicts: </th><td>{{session.conflict1}}</td></tr>
78+
{% endif %}
79+
{% if session.conflict2 %}
80+
<tr><th>Secondary&nbsp;Conflicts: </th><td>{{session.conflict2}}</td></tr>
81+
{% endif %}
82+
{% if session.conflict3 %}
83+
<tr><th>Tertiary&nbsp;Conflicts: </th><td>{{session.conflict3}}</td></tr>
84+
{% endif %}
85+
{% if session.conflict_other %}
86+
<tr><th>Other&nbsp;Conflicts: </th><td>{{session.conflict_other}}</td></tr>
87+
{% endif %}
88+
{% if session.special_req %}
89+
<tr><th>Special&nbsp;Requests: </th><td>{{session.special_req}}</td></tr>
90+
{% endif %}
91+
{% if session.ad_comments %}
92+
<tr><th>AD&nbsp;Comments: </th><td>{{session.ad_comments}}</td></tr>
93+
{% endif %}
94+
<table>
95+
{% endif %}
96+
97+
{%endfor%}
98+
{% endifnotequal %}{% endif %}
99+
{% endfor %}
100+
<br>
101+
102+
103+
{% endblock %}

0 commit comments

Comments
 (0)