fix: delete event if its reference doc is deleted (#6453)
* delete events associated with any reference doctype * fix query, remove whitelist
This commit is contained in:
parent
79bd1ed9d6
commit
aff557914e
1 changed files with 16 additions and 0 deletions
|
|
@ -251,3 +251,19 @@ def get_events(start, end, user=None, for_reminder=False, filters=None):
|
|||
del e[w]
|
||||
|
||||
return events
|
||||
|
||||
def delete_events(ref_type, ref_name, delete_event=False):
|
||||
participations = frappe.get_all("Event Participants", filters={"reference_doctype": ref_type, "reference_docname": ref_name,
|
||||
"parenttype": "Event"}, fields=["parent", "name"])
|
||||
|
||||
if participations:
|
||||
for participation in participations:
|
||||
if delete_event:
|
||||
frappe.delete_doc("Event", participation.parent, for_reload=True)
|
||||
else:
|
||||
total_participants = frappe.get_all("Event Participants", filters={"parenttype": "Event", "parent": participation.parent})
|
||||
|
||||
if len(total_participants) <= 1:
|
||||
frappe.db.sql("DELETE FROM `tabEvent` WHERE `name` = %(name)s", {'name': participation.parent})
|
||||
|
||||
frappe.db.sql("DELETE FROM `tabEvent Participants ` WHERE `name` = %(name)s", {'name': participation.name})
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue