diff options
author | Evan Prodromou <evan@status.net> | 2010-02-06 12:59:41 +0100 |
---|---|---|
committer | Evan Prodromou <evan@status.net> | 2010-02-06 12:59:41 +0100 |
commit | a092aac32d061c8f6265c9975040e9f8c0b96f55 (patch) | |
tree | 31015deb4673b28dedd1b97f3f1ff35a8844e0c8 /actions | |
parent | 5fdcd88176010a72b6a157170784a8aad7bf4131 (diff) |
add events to fine-tune user deletion
Diffstat (limited to 'actions')
-rw-r--r-- | actions/deleteuser.php | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/actions/deleteuser.php b/actions/deleteuser.php index 32b703aa7..c4f84fad2 100644 --- a/actions/deleteuser.php +++ b/actions/deleteuser.php @@ -131,18 +131,21 @@ class DeleteuserAction extends ProfileFormAction $this->elementStart('fieldset'); $this->hidden('token', common_session_token()); $this->element('legend', _('Delete user')); - $this->element('p', null, - _('Are you sure you want to delete this user? '. - 'This will clear all data about the user from the '. - 'database, without a backup.')); - $this->element('input', array('id' => 'deleteuserto-' . $id, - 'name' => 'profileid', - 'type' => 'hidden', - 'value' => $id)); - foreach ($this->args as $k => $v) { - if (substr($k, 0, 9) == 'returnto-') { - $this->hidden($k, $v); + if (Event::handle('StartDeleteUserForm', array($this, $this->user))) { + $this->element('p', null, + _('Are you sure you want to delete this user? '. + 'This will clear all data about the user from the '. + 'database, without a backup.')); + $this->element('input', array('id' => 'deleteuserto-' . $id, + 'name' => 'profileid', + 'type' => 'hidden', + 'value' => $id)); + foreach ($this->args as $k => $v) { + if (substr($k, 0, 9) == 'returnto-') { + $this->hidden($k, $v); + } } + Event::handle('EndDeleteUserForm', array($this, $this->user)); } $this->submit('form_action-no', _('No'), 'submit form_action-primary', 'no', _("Do not block this user")); $this->submit('form_action-yes', _('Yes'), 'submit form_action-secondary', 'yes', _('Delete this user')); @@ -158,7 +161,9 @@ class DeleteuserAction extends ProfileFormAction function handlePost() { - $this->user->delete(); + if (Event::handle('StartDeleteUser', array($this, $this->user))) { + $this->user->delete(); + Event::handle('EndDeleteUser', array($this, $this->user)); + } } } - |