* Prepare to run
*/
- function prepare($args)
+ protected function prepare(array $args=array())
{
parent::prepare($args);
if (!common_logged_in()) {
// TRANS: Client error displayed trying to edit a group while not logged in.
$this->clientError(_('You must be logged in to create a group.'));
- return false;
}
$nickname_arg = $this->trimmed('nickname');
if ($nickname_arg != $nickname) {
$args = array('nickname' => $nickname);
common_redirect(common_local_url('editgroup', $args), 301);
- return false;
}
if (!$nickname) {
// TRANS: Client error displayed trying to edit a group while not proving a nickname for the group to edit.
$this->clientError(_('No nickname.'), 404);
- return false;
}
$groupid = $this->trimmed('groupid');
if (!$this->group) {
// TRANS: Client error displayed trying to edit a non-existing group.
$this->clientError(_('No such group.'), 404);
- return false;
}
$cur = common_current_user();
if (!$cur->isAdmin($this->group)) {
// TRANS: Client error displayed trying to edit a group while not being a group admin.
$this->clientError(_('You must be an admin to edit the group.'), 403);
- return false;
}
return true;
*
* On GET, show the form. On POST, try to save the group.
*
- * @param array $args unused
- *
* @return void
*/
- function handle($args)
+ protected function handle()
{
- parent::handle($args);
+ parent::handle();
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$this->trySave();
} else {
$nickname = Nickname::normalize($nickname, true);
} catch (NicknameTakenException $e) {
// Abort only if the nickname is occupied by _another_ group
- if ($e->profile->id != $this->group->id) {
+ if ($e->profile->id != $this->group->profile_id) {
$this->showForm($e->getMessage());
return;
}
$this->serverError(_('Could not create aliases.'));
}
- if ($nickname != $orig->nickname) {
- common_log(LOG_INFO, "Saving local group info.");
- $local = Local_group::getKV('group_id', $this->group->id);
- $local->setNickname($nickname);
- }
-
$this->group->query('COMMIT');
Event::handle('EndGroupSaveForm', array($this));
}
if ($this->group->nickname != $orig->nickname) {
- common_redirect(common_local_url('editgroup',
- array('nickname' => $nickname)),
- 303);
+ common_redirect(common_local_url('editgroup', array('nickname' => $nickname)), 303);
} else {
// TRANS: Group edit form success message.
$this->showForm(_('Options saved.'));