|
46 | 46 | from ietf.meeting.helpers import get_all_assignments_from_schedule |
47 | 47 | from ietf.meeting.helpers import get_modified_from_assignments |
48 | 48 | from ietf.meeting.helpers import get_wg_list, find_ads_for_meeting |
49 | | -from ietf.meeting.helpers import get_meeting, get_schedule, agenda_permissions, get_meetings |
| 49 | +from ietf.meeting.helpers import get_meeting, get_schedule, agenda_permissions, get_meetings, get_ietf_meeting |
50 | 50 | from ietf.meeting.helpers import preprocess_assignments_for_agenda, read_agenda_file, read_session_file |
51 | 51 | from ietf.meeting.helpers import convert_draft_to_pdf, get_earliest_session_date |
52 | 52 | from ietf.meeting.helpers import can_view_interim_request, can_approve_interim_request |
@@ -409,13 +409,13 @@ def agenda(request, num=None, name=None, base=None, ext=None, owner=None, utc="" |
409 | 409 | ".csv": "text/csv; charset=%s"%settings.DEFAULT_CHARSET, |
410 | 410 | } |
411 | 411 |
|
412 | | - meetings = get_meetings(num) |
413 | | - |
414 | 412 | # We do not have the appropriate data in the datatracker for IETF 64 and earlier. |
415 | 413 | # So that we're not producing misleading pages... |
416 | 414 |
|
417 | | - meeting = meetings.first() |
418 | | - if not meetings.exists() or (meeting.number.isdigit() and meeting.number <= 64 and not meeting.agenda.assignments.exists()): |
| 415 | + assert num is None or num.isdigit() |
| 416 | + |
| 417 | + meeting = get_ietf_meeting(num) |
| 418 | + if not meeting or (meeting.number.isdigit() and int(meeting.number) <= 64 and not meeting.agenda.assignments.exists()): |
419 | 419 | if ext == '.html': |
420 | 420 | return HttpResponseRedirect( 'https://www.ietf.org/proceedings/%s' % num ) |
421 | 421 | else: |
@@ -2194,4 +2194,19 @@ def api_import_recordings(request, number): |
2194 | 2194 | else: |
2195 | 2195 | return HttpResponse(status=405) |
2196 | 2196 |
|
| 2197 | +def important_dates(request, num=None): |
| 2198 | + assert num is None or num.isdigit() |
| 2199 | + |
| 2200 | + meeting = get_ietf_meeting(num) |
| 2201 | + if not meeting: |
| 2202 | + raise Http404 |
| 2203 | + base_num = int(meeting.number) |
| 2204 | + |
| 2205 | + meetings=[meeting] |
| 2206 | + for i in range(1,3): |
| 2207 | + future_meeting = get_ietf_meeting(base_num+i) |
| 2208 | + if future_meeting: |
| 2209 | + meetings.append(future_meeting) |
2197 | 2210 |
|
| 2211 | + context={'meetings':meetings} |
| 2212 | + return render(request, 'meeting/important-dates.html', context) |
0 commit comments