@@ -902,25 +902,32 @@ def json_agenda(request, num=None ):
902902 sessions = []
903903 room_names = set ()
904904 parent_acronyms = set ()
905- for asgn in meeting .agenda .assignments .exclude (session__type__in = ['lead' ,'offagenda' ,'break' ,'reg' ]):
905+ assignments = meeting .agenda .assignments .exclude (session__type__in = ['lead' ,'offagenda' ,'break' ,'reg' ])
906+ # Update the assignments with historic information, i.e., valid at the
907+ # time of the meeting
908+ assignments = preprocess_assignments_for_agenda (assignments , meeting )
909+ for asgn in assignments :
906910 sessdict = dict ()
907911 sessdict ['objtype' ] = 'session'
908912 sessdict ['id' ] = asgn .pk
909- if asgn .session .group :
913+ if asgn .session .historic_group :
910914 sessdict ['group' ] = {
911- "acronym" : asgn .session .group .acronym ,
912- "name" : asgn .session .group .name ,
913- "type" : asgn .session .group .type_id ,
915+ "acronym" : asgn .session .historic_group .acronym ,
916+ "name" : asgn .session .historic_group .name ,
917+ "type" : asgn .session .historic_group .type_id ,
918+ "state" : asgn .session .historic_group .state_id ,
914919 }
915- if asgn .session .group .type_id in ['wg' ,'rg' , 'ag' ,] or asgn .session .group .acronym in ['iesg' ,]:
916- sessdict ['group' ]['parent' ] = asgn .session .group .parent .acronym
917- parent_acronyms .add (asgn .session .group .parent .acronym )
920+ if asgn .session .historic_group .is_bof ():
921+ sessdict ['is_bof' ] = True
922+ if asgn .session .historic_group .type_id in ['wg' ,'rg' , 'ag' ,] or asgn .session .historic_group .acronym in ['iesg' ,]:
923+ sessdict ['group' ]['parent' ] = asgn .session .historic_group .historic_parent .acronym
924+ parent_acronyms .add (asgn .session .historic_group .historic_parent .acronym )
918925 if asgn .session .name :
919926 sessdict ['name' ] = asgn .session .name
920927 elif asgn .session .short :
921928 sessdict ['name' ] = asgn .session .short
922929 else :
923- sessdict ['name' ] = asgn .session .group .name
930+ sessdict ['name' ] = asgn .session .historic_group .name
924931 sessdict ['start' ] = asgn .timeslot .utc_start_time ().strftime ("%Y-%m-%dT%H:%M:%SZ" )
925932 sessdict ['duration' ] = str (asgn .timeslot .duration )
926933 sessdict ['location' ] = asgn .room_name
0 commit comments