@@ -172,12 +172,21 @@ def show_tracker():
172172 new_filter = request .form .get (f'{ obj_type } _obj' )
173173 if new_filter :
174174 filter_obj_types .append (obj_type )
175- if sorted (filter_obj_types ) == list (Tracker .get_objects_tracked ()):
175+ filter_obj_types = ail_core .sanitize_tracked_objects (filter_obj_types )
176+ if len (filter_obj_types ) == ail_core .get_nb_objects_tracked ():
176177 filter_obj_types = []
177- else :
178- tracker_uuid = request .args .get ('uuid' , None )
179- date_from = request .args .get ('date_from' )
180- date_to = request .args .get ('date_to' )
178+ filter_obj_types = ',' .join (filter_obj_types )
179+ if filter_obj_types :
180+ return redirect (url_for ('hunters.show_tracker' , uuid = tracker_uuid , date_from = date_from , date_to = date_to , filter = filter_obj_types ))
181+ else :
182+ return redirect (url_for ('hunters.show_tracker' , uuid = tracker_uuid , date_from = date_from , date_to = date_to ))
183+
184+ tracker_uuid = request .args .get ('uuid' , None )
185+ date_from = request .args .get ('date_from' )
186+ date_to = request .args .get ('date_to' )
187+ filter_obj_types = ail_core .sanitize_tracked_objects (request .args .get ('filter' , '' ).split (',' ))
188+ if len (filter_obj_types ) == ail_core .get_nb_objects_tracked ():
189+ filter_obj_types = []
181190
182191 res = Tracker .api_check_tracker_acl (tracker_uuid , user_org , user_id , user_role , 'view' )
183192 if res : # invalid access
0 commit comments