1010
1111table#wg-selector { border:1px solid black; border-collapse:collapse; }
1212#wg-selector td,#wg-selector th { border:1px solid black; padding: 2px}
13- #wg-selector div.selected { background-color: #D0D0FF ; cursor: pointer; }
14- #wg-selector div.unselected { background-color: #FFFFFF; cursor: pointer; }
13+ #wg-selector div.selected { background-color: #c0c0FF ; cursor: pointer; }
14+ #wg-selector div.unselected { cursor: pointer; }
1515#wg-selector td.inactive div { background-color: #EEEEEE; color: #808080; cursor:default;}
1616#wg-selector.hidden { display: none; }
1717#wg-selector-toggle-text { text-decoration: underline; cursor: pointer; }
2727#ical-link A:active { color: #FF00FF; }
2828#ical-link A:hover { color: #FF0000; }
2929
30+ tr.time-title { font-weight: bold; color:#800000;}
31+ tr.grouprow > td { padding: 4px; }
32+ td.materials { align:right; }
33+ span.note { font-style: italic; color:#ff0000; }
34+
35+ #APP-groups, #selector-APP { color:#008; background-color:#eef }
36+ #GEN-groups, #selector-GEN { color:#080; background-color:#efe }
37+ #INT-groups, #selector-INT { color:#088; background-color:#eff }
38+ #OPS-groups, #selector-OPS { color:#800; background-color:#fee }
39+ #RAI-groups, #selector-RAI { color:#808; background-color:#fef }
40+ #RTG-groups, #selector-RTG { color:#880; background-color:#ffe }
41+ #SEC-groups, #selector-SEC { color:#488; background-color:#dff }
42+ #TSV-groups, #selector-TSV { color:#484; background-color:#dfd }
43+ #IRTF-groups, #selector-IRTF { color:#448; background-color:#ddf }
44+
3045img.hidden { display: none; }
3146
3247.ietf-agenda-palette { border-collapse:collapse; border:2px solid black; background:white; overflow:hidden; }
135150 {
136151 iframe . setAttribute ( "src" , iframe . getAttribute ( "xsrc" ) ) ;
137152 }
138- r ( iframe ) ;
139153 }
140154 }
141155 else
148162
149163 }
150164
151- /* Resizes an IFRAME to fit its contents */
152- function r ( obj )
165+ /* Resizes an IFRAME to fit its contents and attempts to convert to a div */
166+ function r ( iframe )
153167 {
154168 try
155169 {
156- docHeight = obj . contentWindow . document . body . scrollHeight ;
157- obj . height = docHeight ;
170+ iframe . height = 1 ;
171+ docHeight = iframe . contentWindow . document . body . scrollHeight ;
172+ iframe . height = docHeight ;
173+ }
174+ catch ( e ) { return ; }
175+
176+ if ( iframe . contentWindow . document . body . innerHTML )
177+ {
178+ var div = document . createElement ( "div" ) ;
179+ div . style . border = "solid" ;
180+ div . style . borderWidth = "1px" ;
181+ div . style . margin = "0" ;
182+ div . style . padding = "10px" ;
183+ div . style . overflow = "auto" ;
184+ div . innerHTML = iframe . contentWindow . document . body . innerHTML ;
185+ iframe . parentNode . replaceChild ( div , iframe ) ;
158186 }
159- catch ( e ) { }
160187 }
161188
162189 function toggle ( selection )
211238{% block content %}
212239< h1 > IETF {{ meeting.num }} Meeting Agenda</ h1 >
213240< p > {{ meeting.city }}, {{ meeting.start_date|date:"F j" }}-{% ifnotequal meeting.start_date.month meeting.end_date.month %}{{ meeting.end_date|date:"F " }}{% endifnotequal %}{{ meeting.end_date|date:"j, Y" }}< br />
214- Updated {{ update.updated |date:"Y-m-d H:i:s T" }}</ p >
241+ Updated {{ modified |date:"Y-m-d H:i:s T" }}</ p >
215242< div class ="noprint ">
216243(There's also a < a href ="/meeting/{{meeting.num}}/agenda.txt "> plaintext agenda</ a > and a < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/ "> tools-style agenda</ a > available)</ div >
217244
218245< p > < strong > IETF agendas are subject to change, up to and during the meeting.</ strong > </ p >
219246
220247{# cache this part for 15 minutes -- it takes 3-6 seconds to generate #}
221- {% load cache %}
222- {% cache 900 ietf_meeting_agenda meeting.num %}
248+ {% load cache %}{% cache 900 ietf_meeting_agenda meeting.num %}
223249
224250You can customize the agenda below to show only selected working group sessions. To be able to return to the customized view later, bookmark the resulting URL:
225251< div class ="noprint " onclick ="toggle_wg_selector() ">
226252 < img id ="wg-selector-triangle-right " src ="/images/triangle-right.png " />
227253 < img id ="wg-selector-triangle-down " src ="/images/triangle-down.png " class ="hidden " />
228254 < span id ="wg-selector-toggle-text "> Select working group sessions</ span >
229255</ div >
256+
230257< table id ="wg-selector " width ="100% " class ="hidden ">
231258 < tr >
232259 {% for area in area_list %}
233- < th > < div id ='selector-{{area.area_acronym |upper}} ' class ="unselected " onclick ="toggle(this) "> {{area.area_acronym |upper}}</ div > </ th >
260+ < th > < div id ='selector-{{area|upper}} ' class ="unselected " onclick ="toggle(this) "> {{area|upper}}</ div > </ th >
234261 {% endfor %}
235- < th > < div id ='selector-IRTF ' class ="unselected " onclick ="toggle(this) "> IRTF</ div > </ th >
236262 </ tr >
237-
238263 < tr >
239- {% for area in area_list %}
240- < td valign ="top " id ="{{area.area_acronym|upper}}-groups ">
241- {% for wg in wg_list %}
242- {% ifequal wg.area.area.area_acronym area.area_acronym %}
243- < div id ='selector-{{wg}} ' class ="unselected " onclick ="toggle(this) "> {{wg}}</ div >
244- {% endifequal %}
245- {% endfor %}
246- </ td >
247- {% endfor %}
248-
249- < td valign ="top " id ="IRTF-groups ">
250- {% for rg in rg_list %}
251- < div id ='selector-{{rg|lower}} ' class ="unselected " onclick ="toggle(this) "> {{rg|lower}}</ div >
252- {% endfor %}
253- </ td >
254-
264+ {% for wg in wg_list %}{% ifchanged wg.parent.acronym %}{% if forloop.counter > 1 %}
265+ </ td > {% endif %}
266+ < td valign ="top " id ="{{wg.parent.acronym|upper}}-groups "> {% endifchanged %}
267+ < div id ='selector-{{wg.acronym}} ' class ="unselected " onclick ="toggle(this) "> {% if wg.state.name = "BOF" %}< i > {{wg.acronym}}</ i > {% else %}{{wg.acronym}}{% endif %}</ div > {% endfor %}
268+ </ td >
255269 </ tr >
270+ < tr > < td align ="center " colspan ="{{area_list.count}} "> < i > Groups displayed in italics are BOFs</ i > </ td > </ tr >
256271</ table >
257272
258273< div id ="ical-link " class ="hidden "> < span style ="font-size:150% "> Week View</ span > < br /> < a id ="ical-href " href ="agenda.ics "> < em > Download as an ical file</ em > </ a > </ div >
@@ -263,78 +278,64 @@ <h1>IETF {{ meeting.num }} Meeting Agenda</h1>
263278{% for slot in timeslots %}
264279 {% ifchanged %}
265280 < tr class ="meeting-date ">
266- < td colspan ="4 ">
267- < h2 class ="ietf-divider "> {{ slot.meeting_date |date:"l"|upper }}, {{ slot.meeting_date |date:"F j, Y" }}</ h2 >
268- </ td >
281+ < td colspan ="6 ">
282+ < h2 class ="ietf-divider "> {{ slot.time |date:"l"|upper }}, {{ slot.time |date:"F j, Y" }}</ h2 >
283+ </ td >
269284 </ tr >
270- {% if slot.reg_info %}
271- < tr >
272- < td colspan ="4 ">
273- {{ slot.registration.time_desc }} {{ slot.registration.name }}
274- {% if venue.reg_area_name %} - < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{ venue.reg_area_name|slugify }} "> {{ venue.reg_area_name|escape }}</ a > {% endif %}
275- </ td >
276- </ tr >
277- {% endif %}
278285 {% endifchanged %}
279- {% if slot.session_name %}
280- {% if slot.break_info %}
281- < tr >
282- < td colspan ="4 ">
283- < br />
284- {{ slot.break_info.time_desc }} {{ slot.break_info.name }}
285- {% if venue.break_area_name and slot.break_info.show_break_location %} - < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{ venue.break_area_name|slugify }} "> {{ venue.break_area_name|escape }}</ a > {% endif %}
286- </ td >
287- </ tr >
288- {% endif %}
289- < tr >
290- < td colspan ="4 ">
291- < b > {{ slot.time_desc }} {{ slot.session_name }}</ b >
292- {% ifequal slot.sessions.0.acronym "plenaryw" %}
293- < b > - < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{ slot.sessions.0.room_id.room_name|slugify }} "> {{ slot.sessions.0.room_id.room_name }}</ a > </ b > < br />
294- < pre > {{ plenaryw_agenda|escape }}</ pre >
295- {% endifequal %}
296- {% ifequal slot.sessions.0.acronym "plenaryt" %}
297- < b > - < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{ slot.sessions.0.room_id.room_name|slugify }} "> {{ slot.sessions.0.room_id.room_name }}</ a > </ b > < br />
298- < pre > {{ plenaryt_agenda|escape }}</ pre >
299- {% endifequal %}
300- </ td >
286+ {% ifchanged %}
287+ < tr class ="time-title ">
288+ < td colspan ="1 ">
289+ {{slot.time|date:"Hi"}}-{{slot.end_time|date:"Hi"}}
290+ </ td >
291+ < td colspan ="5 ">
292+ {{slot.name}}
293+ {% if slot.type.name != 'Session' %} -
294+ {% if slot.show_location %}< a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{ slot.get_location|slugify }} "> {{slot.get_location|escape}}</ a > {% endif %}
295+ {% endif %}
296+ </ td >
301297 </ tr >
302- {% if not slot.is_plenary %}
303- {% for session in slot.sessions_by_area|dictsort:"area" %}
304- < tr id ="{{meeting.num}}-{{slot.meeting_date|date: "D "|lower}}-{{slot.time_desc|slice:":4"}}-{{session.info.area|upper}}-{{session.info.acronym|lower}}" class="grouprow ">
305- < td > < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{session.info.room_id.room_name|slugify}} " title ="room map "> {{ session.info.room_id.room_name}}</ a > </ td >
306- {% if session.info.area %}
307- < td > {{ session.info.area|upper}}</ td >
308- < td > {% if session.info.isWG %}< a href ="/wg/{{ session.info.acronym|lower }}/ "> {{ session.info.acronym|lower }}</ a > {% else %}{{ session.info.acronym|lower }}{% endif %}</ td >
309- < td >
310- < table width ="100% "> < tr > < td >
311- < img src ="/images/color-palette-4x4.gif " alt ="" onclick ="pickAgendaColor('{{meeting.num}}-{{slot.meeting_date|date: "D "|lower}}-{{slot.time_desc|slice:":4"}}-{{session.info.area|upper}}-{{session.info.acronym|lower}}',this);" title="color tag this line "/ class="noprint">
312- {% if session.info.agenda_file %}< a href ="http://www.ietf.org/proceedings/{{ session.info.agenda_file }} " title ="session agenda "> {{ session.info.acronym_name|escape }} {{ session.info.group_type_str }}</ a > {% else %}{{ session.info.acronym_name|escape }} {{ session.info.group_type_str }}{% endif %}
313- {% if session.info.special_agenda_note %}< br /> - {{ session.info.special_agenda_note }}{% endif %}
314- </ td > < td align ="right "> drafts: < a href ="/meeting/{{ meeting.num }}/agenda/{{session.info.acronym}}-drafts.tgz "> tar</ a > |< a href ="/meeting/{{ meeting.num }}/agenda/{{session.info.acronym}}-drafts.pdf "> pdf</ a > </ td > </ tr > </ table >
315- </ td >
316- {% endif %}
317- </ tr >
318- < tr id ="agenda-{{meeting.num}}-{{slot.meeting_date|date: "D "|lower}}-{{slot.time_desc|slice:":4"}}-{{session.info.area|upper}}-{{session.info.acronym|lower}}" class="groupagenda ">
319- < td > </ td >
320- < td colspan ="3 ">
321- {% if session.info.agenda_file %}
322- < iframe width ="100% " height ="400px " src ="about:blank " xsrc ="/meeting/{{ meeting.num }}/agenda/{{ session.info.acronym }}-agenda/ " onload ="r(this) "> </ iframe >
323- {% else %}
324- < b > No Agenda Submitted</ b >
325- {% endif %}
326- </ td >
327- </ tr >
328- {% endfor %}
329- {% endif %}
330- {% else %}
331- {% for session in slot.sessions %}
332- < tr >
333- < td colspan ="4 ">
334- {{ slot.time_desc }} {{ session.acronym_name|escape }} - < a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{session.room_id.room_name|slugify}} "> {{ session.room_id.room_name}}</ a >
335- </ td >
336- </ tr >
337- {% endfor %}
298+ {% endifchanged %}
299+ {% if slot.type.name = 'Session' %} {% if slot.session.group %}
300+ < tr id ="{{meeting.num}}-{{slot.time|date: "D-Hi "|lower}}-{{slot.session.group.parent.acronym|upper}}-{{slot.session.group.acronym|lower}}" class="grouprow ">
301+ < td >
302+ < td > {% if slot.show_location %}< a href ="http://tools.ietf.org/agenda/{{meeting.num}}/venue/?room={{ slot.get_location|slugify }} "> {{slot.get_location|escape}}</ a > {% endif %}</ td >
303+ < td > {{slot.session.group.parent.acronym|upper}}</ td >
304+ < td >
305+ {% if slot.session.group.charter %}< a href ="{{slot.session.group.charter.get_absolute_url}} "> {{slot.session.group.acronym}}</ a >
306+ {% else %}{{slot.session.group.acronym}}{% endif %}</ td >
307+ < td >
308+ < img src ="/images/color-palette-4x4.gif " alt ="" onclick ="pickAgendaColor('{{meeting.num}}-{{slot.time|date: "D-Hi "|lower}}-{{slot.session.group.parent.acronym|upper}}-{{slot.session.group.acronym|lower}}',this);" title="color tag this line "/ class="noprint">
309+ {% if slot.session.agenda %}< a href ="/meeting/{{ meeting.num }}/agenda/{{ slot.session.group.acronym }}-agenda/ "> {{slot.session.group.name}}</ a >
310+ {% else %}{{slot.session.group.name}}{% endif %}
311+ {% if slot.session.group.state.name = "BOF" %} BOF {% endif %}
312+ {% if slot.session.agenda_note %}
313+ < br /> < span class ="note "> {{slot.session.agenda_note}}</ span > {% endif %}</ td >
314+ < td class ="materials "> {% if slot.session.agenda %}drafts: < a href ="/meeting/{{meeting.num}}/agenda/{{slot.session.group.acronym}}-drafts.tgz "> tar</ a > |< a href ="/meeting/{{ meeting.num }}/agenda/{{slot.session.group.acronym}}-drafts.pdf "> pdf</ a > {%endif%}</ td >
315+ </ tr >
316+ < tr id ="{{meeting.num}}-{{slot.time|date: "D-Hi "|lower}}-{{slot.session.group.parent.acronym|upper}}-{{slot.session.group.acronym|lower}}" class="groupagenda ">
317+ < td > </ td >
318+ < td colspan ="5 ">
319+ {% if slot.session.agenda %}
320+ {% if slot.session.agenda.file_extension in show_inline%}
321+ < iframe width ="100% " height ="1px " src ="about:blank " xsrc ="/meeting/{{ meeting.num }}/agenda/{{ slot.session.group.acronym }}-agenda/ " onload ="r(this) "> </ iframe >
322+ {% else %}
323+ < b > < i > Agenda submitted in {{slot.session.agenda.file_extension|upper}} format</ i > </ b >
324+ {% endif %}
325+ {% else %}
326+ < b > < i > No Agenda Submitted</ i > </ b >
327+ {% endif %}
328+ </ td >
329+ </ tr >
330+
331+ {% endif %} {% endif %}
332+ {% if slot.type.name = 'Plenary' %}
333+ < tr >
334+ < td > </ td >
335+ < td colspan ="5 ">
336+ < iframe width ="100% " height ="1px " src ="/meeting/{{ meeting.num }}/agenda/{{ slot.session.group.acronym }}-agenda/ " onload ="r(this) "> </ iframe >
337+ </ td >
338+ </ tr >
338339 {% endif %}
339340{% endfor %}
340341</ table >
0 commit comments