API group actions join/leave now handle same events of web UI action
This commit is contained in:
parent
c246c17d3e
commit
dc41e3dc2d
|
@ -125,26 +125,17 @@ class ApiGroupJoinAction extends ApiAuthAction
|
|||
return;
|
||||
}
|
||||
|
||||
$member = new Group_member();
|
||||
|
||||
$member->group_id = $this->group->id;
|
||||
$member->profile_id = $this->user->id;
|
||||
$member->created = common_sql_now();
|
||||
|
||||
$result = $member->insert();
|
||||
|
||||
if (!$result) {
|
||||
common_log_db_error($member, 'INSERT', __FILE__);
|
||||
$this->serverError(
|
||||
sprintf(
|
||||
// TRANS: Server error displayed when joining a group fails.
|
||||
// TRANS: %1$s is a user nickname, $2$s is a group nickname.
|
||||
_('Could not join user %1$s to group %2$s.'),
|
||||
$this->user->nickname,
|
||||
$this->group->nickname
|
||||
)
|
||||
);
|
||||
return;
|
||||
try {
|
||||
if (Event::handle('StartJoinGroup', array($this->group, $this->user))) {
|
||||
Group_member::join($this->group->id, $this->user->id);
|
||||
Event::handle('EndJoinGroup', array($this->group, $this->user));
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
// TRANS: Server error displayed when joining a group failed in the database.
|
||||
// TRANS: %1$s is the joining user's nickname, $2$s is the group nickname for which the join failed.
|
||||
$this->serverError(sprintf(_('Could not join user %1$s to group %2$s.'),
|
||||
$cur->nickname, $this->group->nickname));
|
||||
return;
|
||||
}
|
||||
|
||||
switch($this->format) {
|
||||
|
|
|
@ -116,22 +116,18 @@ class ApiGroupLeaveAction extends ApiAuthAction
|
|||
return;
|
||||
}
|
||||
|
||||
$result = $member->delete();
|
||||
|
||||
if (!$result) {
|
||||
common_log_db_error($member, 'DELETE', __FILE__);
|
||||
$this->serverError(
|
||||
sprintf(
|
||||
// TRANS: Server error displayed when leaving a group fails.
|
||||
// TRANS: %1$s is a user nickname, $2$s is a group nickname.
|
||||
_('Could not remove user %1$s from group %2$s.'),
|
||||
$this->user->nickname,
|
||||
$this->group->nickname
|
||||
)
|
||||
);
|
||||
try {
|
||||
if (Event::handle('StartLeaveGroup', array($this->group,$this->user))) {
|
||||
Group_member::leave($this->group->id, $this->user->id);
|
||||
Event::handle('EndLeaveGroup', array($this->group, $this->user));
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
// TRANS: Server error displayed when leaving a group failed in the database.
|
||||
// TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed.
|
||||
$this->serverError(sprintf(_('Could not remove user %1$s from group %2$s.'),
|
||||
$cur->nickname, $this->group->nickname));
|
||||
return;
|
||||
}
|
||||
|
||||
switch($this->format) {
|
||||
case 'xml':
|
||||
$this->showSingleXmlGroup($this->group);
|
||||
|
|
Loading…
Reference in New Issue
Block a user