summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Prodromou <evan@status.net>2010-09-08 16:37:12 -0400
committerEvan Prodromou <evan@status.net>2010-09-08 16:37:12 -0400
commit255e96d3b5cd86a1e7b4f759e4ab3088b195f005 (patch)
tree62e1c93eb3655b6652a53bd2c4435307b117c5a3
parente40ed1fd56bc02dbae20e0839c507911bc27cf4c (diff)
add a hook for when someone deletes their own notice
-rw-r--r--EVENTS.txt10
-rw-r--r--actions/apistatusesdestroy.php8
-rw-r--r--actions/deletenotice.php5
3 files changed, 17 insertions, 6 deletions
diff --git a/EVENTS.txt b/EVENTS.txt
index 65e2c3ce0..fd2bdb9d5 100644
--- a/EVENTS.txt
+++ b/EVENTS.txt
@@ -1077,4 +1077,12 @@ StartShowPageTitle: when beginning to show the page title <h1>
- $action: action being shown
EndShowPageTitle: when done showing the page title <h1>
-- $action: action being shown \ No newline at end of file
+- $action: action being shown
+
+StartDeleteOwnNotice: when a user starts to delete their own notice
+- $user: the user doing the delete
+- $notice: the notice being deleted
+
+EndDeleteOwnNotice: when a user has deleted their own notice
+- $user: the user doing the delete
+- $notice: the notice being deleted
diff --git a/actions/apistatusesdestroy.php b/actions/apistatusesdestroy.php
index 0dfeb4812..485eae66e 100644
--- a/actions/apistatusesdestroy.php
+++ b/actions/apistatusesdestroy.php
@@ -125,10 +125,10 @@ class ApiStatusesDestroyAction extends ApiAuthAction
}
if ($this->user->id == $this->notice->profile_id) {
- $replies = new Reply;
- $replies->get('notice_id', $this->notice_id);
- $replies->delete();
- $this->notice->delete();
+ if (Event::handle('StartDeleteOwnNotice', array($this->user, $this->notice))) {
+ $this->notice->delete();
+ Event::handle('EndDeleteOwnNotice', array($this->user, $this->notice));
+ }
$this->showNotice();
} else {
$this->clientError(
diff --git a/actions/deletenotice.php b/actions/deletenotice.php
index f8010a814..68c43040b 100644
--- a/actions/deletenotice.php
+++ b/actions/deletenotice.php
@@ -172,7 +172,10 @@ class DeletenoticeAction extends Action
}
if ($this->arg('yes')) {
- $this->notice->delete();
+ if (Event::handle('StartDeleteOwnNotice', array($this->user, $this->notice))) {
+ $this->notice->delete();
+ Event::handle('EndDeleteOwnNotice', array($this->user, $this->notice));
+ }
}
$url = common_get_returnto();