Compare commits
1 Commits
62c33c47c6
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 1f4ca52a10 |
@@ -317,15 +317,21 @@ def delete_markdown(markdown_id):
|
||||
|
||||
session.delete(markdown_setting)
|
||||
|
||||
# Send webhook event before committing the transaction
|
||||
# This ensures webhook handlers can still access related data
|
||||
markdown_deleted.send(None, payload=md)
|
||||
|
||||
session.delete(markdown)
|
||||
session.commit()
|
||||
|
||||
markdown_deleted.send(None, payload=md)
|
||||
logger.info(f"Successfully deleted markdown {markdown_id} with cascade deletion")
|
||||
return jsonify(md), 200
|
||||
|
||||
except Exception as e:
|
||||
import traceback
|
||||
logger.error(f"Failed to delete markdown {markdown_id}: {e}")
|
||||
logger.error(f"Exception type: {type(e).__name__}")
|
||||
logger.error(f"Full traceback:\n{traceback.format_exc()}")
|
||||
errno = RequestContext.get_error_id()
|
||||
session.rollback()
|
||||
return jsonify({"error": f"delete failed - {errno}"}), 500
|
||||
|
||||
@@ -59,6 +59,10 @@ class WebhookEventHandler(abc.ABC):
|
||||
|
||||
if webhook_setting is None and p["parent_id"] != 1:
|
||||
return self.get_setting(session, p["parent_id"])
|
||||
|
||||
# Check if webhook_setting is still None (e.g., when parent_id == 1 or no parent found)
|
||||
if webhook_setting is None:
|
||||
return None
|
||||
|
||||
setting = webhook_setting.to_dict()
|
||||
if not setting["enabled"] or setting["on_events"] & self.event_type == 0:
|
||||
|
||||
Reference in New Issue
Block a user