add events for unblocking a profile

This commit is contained in:
Evan Prodromou 2009-12-28 10:50:12 -08:00
parent c5de326231
commit 2ae04bb6d5
3 changed files with 29 additions and 5 deletions

View File

@ -647,3 +647,11 @@ StartBlockProfile: when we're about to block
EndBlockProfile: when a block has succeeded
- $user: the person doing the block
- $profile: the person blocked, can be remote
StartUnblockProfile: when we're about to unblock
- $user: the person doing the unblock
- $profile: the person getting unblocked, can be remote
EndUnblockProfile: when an unblock has succeeded
- $user: the person doing the unblock
- $profile: the person unblocked, can be remote

View File

@ -97,9 +97,16 @@ class ApiBlockDestroyAction extends ApiAuthAction
return;
}
if (!$this->user->hasBlocked($this->other)
|| $this->user->unblock($this->other)
) {
if ($this->user->hasBlocked($this->other)) {
if (Event::handle('StartUnblockProfile', array($this->user, $this->other))) {
$result = $this->user->unblock($this->other);
if ($result) {
Event::handle('EndUnblockProfile', array($this->user, $this->other));
}
}
}
if (!$this->user->hasBlocked($this->other)) {
$this->initDocument($this->format);
$this->showProfile($this->other, $this->format);
$this->endDocument($this->format);

View File

@ -71,8 +71,17 @@ class UnblockAction extends ProfileFormAction
function handlePost()
{
$cur = common_current_user();
$result = $cur->unblock($this->profile);
$cur = common_current_user();
$result = false;
if (Event::handle('StartUnblockProfile', array($cur, $this->profile))) {
$result = $cur->unblock($this->profile);
if ($result) {
Event::handle('EndUnblockProfile', array($cur, $this->profile));
}
}
if (!$result) {
$this->serverError(_('Error removing the block.'));
return;