@@ -267,6 +267,16 @@ def status_slug_for_new_session(session, session_number):
267267 return 'schedw'
268268
269269
270+ def get_outbound_conflicts (form : SessionForm ):
271+ """extract wg conflict constraint data from a SessionForm"""
272+ outbound_conflicts = []
273+ for conflictname , cfield_id in form .wg_constraint_field_ids ():
274+ conflict_groups = form .cleaned_data [cfield_id ]
275+ if len (conflict_groups ) > 0 :
276+ outbound_conflicts .append (dict (name = conflictname , groups = conflict_groups ))
277+ return outbound_conflicts
278+
279+
270280@role_required (* AUTHORIZED_ROLES )
271281def confirm (request , acronym ):
272282 '''
@@ -299,12 +309,8 @@ def confirm(request, acronym):
299309 session_data ['timeranges_display' ] = [t .desc for t in form .cleaned_data ['timeranges' ]]
300310 session_data ['resources' ] = [ ResourceAssociation .objects .get (pk = pk ) for pk in request .POST .getlist ('resources' ) ]
301311
302- # extract wg conflict constraint data for the view
303- outbound_conflicts = []
304- for conflictname , cfield_id in form .wg_constraint_field_ids ():
305- conflict_groups = form .cleaned_data [cfield_id ]
306- if len (conflict_groups ) > 0 :
307- outbound_conflicts .append (dict (name = conflictname , groups = conflict_groups ))
312+ # extract wg conflict constraint data for the view / notifications
313+ outbound_conflicts = get_outbound_conflicts (form )
308314
309315 button_text = request .POST .get ('submit' , '' )
310316 if button_text == 'Cancel' :
@@ -534,11 +540,14 @@ def edit(request, acronym, num=None):
534540 #add_session_activity(group,'Session Request was updated',meeting,user)
535541
536542 # send notification
543+ outbound_conflicts = get_outbound_conflicts (form )
544+ session_data = form .cleaned_data .copy () # do not add things to the original cleaned_data
545+ session_data ['outbound_conflicts' ] = [f"{ d ['name' ]} : { d ['groups' ]} " for d in outbound_conflicts ]
537546 send_notification (
538547 group ,
539548 meeting ,
540549 login ,
541- form . cleaned_data ,
550+ session_data ,
542551 [sf .cleaned_data for sf in form .session_forms .forms_to_keep ],
543552 'update' ,
544553 )
0 commit comments