File tree Expand file tree Collapse file tree 2 files changed +22
-1
lines changed
Expand file tree Collapse file tree 2 files changed +22
-1
lines changed Original file line number Diff line number Diff line change @@ -297,7 +297,9 @@ def delete(self, report_id):
297297 report = get_object_or_404 (Report .get_by_id , report_id )
298298
299299 require_object_delete_permission (report , self .current_user )
300- report .remove ()
300+ report .remove ()
301+ # also delete as a cascade the widgets
302+ models .Widget .delete_by_report_id (report_id )
301303
302304 self .record_event ({
303305 "action" : "delete" ,
Original file line number Diff line number Diff line change @@ -1250,6 +1250,25 @@ def get_id_from_text(self, text):
12501250 return None
12511251 return text .replace ("[turnilo-widget]" , "" ).split ("/" )[0 ]
12521252
1253+ @classmethod
1254+ def delete_by_report_id (self , _report_id :str ):
1255+ if isinstance (_report_id , int ):
1256+ _report_id = str (_report_id )
1257+ for i in self .query .all ():
1258+ report_id = i .get_id_from_text (i .text )
1259+ if report_id == _report_id :
1260+ db .session .delete (i )
1261+ db .session .commit ()
1262+
1263+ def copy (self , dashboard_id ):
1264+ return {
1265+ "options" : self .options ,
1266+ "width" : self .width ,
1267+ "text" : self .text ,
1268+ "visualization_id" : self .visualization_id ,
1269+ "dashboard_id" : dashboard_id ,
1270+ }
1271+
12531272 def get_report_id (self ):
12541273 return self .get_id_from_text (self .text )
12551274
You can’t perform that action at this time.
0 commit comments