1. Currently, the Delete Event action does the delete operation with only a Jscript confirm. This should be modified to have the same behavior as deleting a Contribution Type:
"Warning: Deleting this event will also delete associated the Event Registration Page and Event Fee configurations. This operation can not be undone. Do you want to continue?"
- Then, check for civicrm_participant records with this event_id. If found, do NOT delete the event. Return this status message: "This event can not be deleted because there are participant records linked to it. If you want to delete this event, you must first find the participants linked to this event and delete them (use CiviEvent >> Find Participants )."
2. During the actual delete operation - we should make sure that related records in civicrm_custom_option are deleted (they are currently left orphaned). I believe this is because they are keyed to the civicrm_event_page.id. Make sure the delete event function grabs the associated event_page ID and uses that to delete the custom_option records. Also check db state to make sure other records (e.g. uf_join, etc.) relating to the event and event_page are cleaned up.