|
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 |
@@ -416,13 +416,13 @@ def agenda(request, num=None, name=None, base=None, ext=None, owner=None, utc="" |
416 | 416 | ".csv": "text/csv; charset=%s"%settings.DEFAULT_CHARSET, |
417 | 417 | } |
418 | 418 |
|
419 | | - meetings = get_meetings(num) |
420 | | - |
421 | 419 | # We do not have the appropriate data in the datatracker for IETF 64 and earlier. |
422 | 420 | # So that we're not producing misleading pages... |
423 | 421 |
|
424 | | - meeting = meetings.first() |
425 | | - if not meetings.exists() or (meeting.number.isdigit() and int(meeting.number) <= 64 and not meeting.agenda.assignments.exists()): |
| 422 | + assert num is None or num.isdigit() |
| 423 | + |
| 424 | + meeting = get_ietf_meeting(num) |
| 425 | + if not meeting or (meeting.number.isdigit() and int(meeting.number) <= 64 and not meeting.agenda.assignments.exists()): |
426 | 426 | if ext == '.html': |
427 | 427 | return HttpResponseRedirect( 'https://www.ietf.org/proceedings/%s' % num ) |
428 | 428 | else: |
@@ -2202,4 +2202,19 @@ def api_import_recordings(request, number): |
2202 | 2202 | else: |
2203 | 2203 | return HttpResponse(status=405) |
2204 | 2204 |
|
| 2205 | +def important_dates(request, num=None): |
| 2206 | + assert num is None or num.isdigit() |
| 2207 | + |
| 2208 | + meeting = get_ietf_meeting(num) |
| 2209 | + if not meeting: |
| 2210 | + raise Http404 |
| 2211 | + base_num = int(meeting.number) |
| 2212 | + |
| 2213 | + meetings=[meeting] |
| 2214 | + for i in range(1,3): |
| 2215 | + future_meeting = get_ietf_meeting(base_num+i) |
| 2216 | + if future_meeting: |
| 2217 | + meetings.append(future_meeting) |
2205 | 2218 |
|
| 2219 | + context={'meetings':meetings} |
| 2220 | + return render(request, 'meeting/important-dates.html', context) |
0 commit comments