Skip to content

Commit 6f11866

Browse files
committed
Merged in code from mark@painless-security.com in [17694] which provides historic_group information in the session_details() view, and a test case for same. Added 'now' information in the template dictionary, for use when rendering old (vs. upcoming) session details. Commit ready for merge.
- Legacy-Id: 17738 Note: SVN reference [17694] has been migrated to Git commit 4df7e55
1 parent 280c356 commit 6f11866

2 files changed

Lines changed: 23 additions & 1 deletion

File tree

ietf/meeting/tests_views.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1091,6 +1091,12 @@ def test_session_details(self):
10911091
self.assertTrue(all([x in unicontent(r) for x in ('slides','agenda','minutes','draft')]))
10921092
self.assertNotContains(r, 'deleted')
10931093

1094+
q = PyQuery(r.content)
1095+
self.assertTrue(q('div.session_buttons#session_%s' % session.id),
1096+
'Session detail page does not contain session tool buttons')
1097+
self.assertFalse(q('div.session_buttons#session_%s span.fa-arrows-alt' % session.id),
1098+
'The session detail page is incorrectly showing the "Show meeting materials" button')
1099+
10941100
def test_session_details_past_interim(self):
10951101
group = GroupFactory.create(type_id='wg',state_id='active')
10961102
chair = RoleFactory(name_id='chair',group=group)

ietf/meeting/views.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878
from ietf.secr.proceedings.proc_utils import (get_progress_stats, post_process, import_audio_files,
7979
create_recording)
8080
from ietf.utils.decorators import require_api_key
81+
from ietf.utils.history import find_history_replacements_active_at
8182
from ietf.utils.log import assertion
8283
from ietf.utils.mail import send_mail_message, send_mail_text
8384
from ietf.utils.pipe import pipe
@@ -1128,9 +1129,22 @@ def session_details(request, num, acronym):
11281129
if not sessions:
11291130
raise Http404
11301131

1132+
# Find the time of the meeting, so that we can look back historically
1133+
# for what the group was called at the time.
1134+
meeting_time = datetime.datetime.combine(meeting.date, datetime.time())
1135+
1136+
groups = list(set([ s.group for s in sessions ]))
1137+
group_replacements = find_history_replacements_active_at(groups, meeting_time)
1138+
11311139
status_names = {n.slug: n.name for n in SessionStatusName.objects.all()}
11321140
for session in sessions:
11331141

1142+
session.historic_group = None
1143+
if session.group:
1144+
session.historic_group = group_replacements.get(session.group_id)
1145+
if session.historic_group:
1146+
session.historic_group.historic_parent = None
1147+
11341148
session.type_counter = Counter()
11351149
ss = session.timeslotassignments.filter(schedule=meeting.schedule).order_by('timeslot__time')
11361150
if ss:
@@ -1183,6 +1197,7 @@ def session_details(request, num, acronym):
11831197
'can_manage_materials' : can_manage,
11841198
'can_view_request': can_view_request,
11851199
'thisweek': datetime.date.today()-datetime.timedelta(days=7),
1200+
'now': datetime.datetime.now(),
11861201
})
11871202

11881203
class SessionDraftsForm(forms.Form):
@@ -2237,7 +2252,7 @@ def past(request):
22372252

22382253
def upcoming(request):
22392254
'''List of upcoming meetings'''
2240-
today = datetime.date.today()
2255+
today = datetime.date.today()-datetime.timedelta(days=7)
22412256

22422257
# Get ietf meetings starting 7 days ago, and interim meetings starting today
22432258
ietf_meetings = Meeting.objects.filter(type_id='ietf', date__gte=today-datetime.timedelta(days=7))
@@ -2274,6 +2289,7 @@ def upcoming(request):
22742289
'menu_actions': actions,
22752290
'menu_entries': menu_entries,
22762291
'selected_menu_entry': selected_menu_entry,
2292+
'now': datetime.datetime.now()
22772293
})
22782294

22792295

0 commit comments

Comments
 (0)