X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Feditgroup.php;h=9febab618d7bebc8ed213ecf9ccafaf63555ffcd;hb=de55d8f83bb2ecf9461510768fe7147aec592055;hp=0e041700511360d29b493541dee9b3d521978367;hpb=59a0b2a82da418f688faf182407146d9e7a7af7a;p=quix0rs-gnu-social.git diff --git a/actions/editgroup.php b/actions/editgroup.php index 0e04170051..9febab618d 100644 --- a/actions/editgroup.php +++ b/actions/editgroup.php @@ -23,8 +23,8 @@ * @package StatusNet * @author Evan Prodromou * @author Sarven Capadisli - * @author Zach Copley - * @copyright 2008-2009 StatusNet, Inc. + * @author Zach Copley + * @copyright 2008-2011 StatusNet, Inc. * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ @@ -45,7 +45,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ -class EditgroupAction extends GroupDesignAction +class EditgroupAction extends GroupAction { var $msg; @@ -89,11 +89,11 @@ class EditgroupAction extends GroupDesignAction $groupid = $this->trimmed('groupid'); if ($groupid) { - $this->group = User_group::staticGet('id', $groupid); + $this->group = User_group::getKV('id', $groupid); } else { - $local = Local_group::staticGet('nickname', $nickname); + $local = Local_group::getKV('nickname', $nickname); if ($local) { - $this->group = User_group::staticGet('id', $local->group_id); + $this->group = User_group::getKV('id', $local->group_id); } } @@ -139,12 +139,6 @@ class EditgroupAction extends GroupDesignAction $this->showPage(); } - function showLocalNav() - { - $nav = new GroupNav($this, $this->group); - $nav->show(); - } - function showContent() { $form = new GroupEditForm($this, $this->group); @@ -165,7 +159,7 @@ class EditgroupAction extends GroupDesignAction function showScripts() { parent::showScripts(); - $this->autofocus('nickname'); + $this->autofocus('newnickname'); } function trySave() @@ -179,12 +173,21 @@ class EditgroupAction extends GroupDesignAction if (Event::handle('StartGroupSaveForm', array($this))) { - $nickname = Nickname::normalize($this->trimmed('nickname')); + $nickname = Nickname::normalize($this->trimmed('newnickname')); $fullname = $this->trimmed('fullname'); $homepage = $this->trimmed('homepage'); $description = $this->trimmed('description'); $location = $this->trimmed('location'); $aliasstring = $this->trimmed('aliases'); + $private = $this->boolean('private'); + + if ($private) { + $force_scope = 1; + $join_policy = User_group::JOIN_POLICY_MODERATE; + } else { + $force_scope = 0; + $join_policy = User_group::JOIN_POLICY_OPEN; + } if ($this->nicknameExists($nickname)) { // TRANS: Group edit form validation error. @@ -265,6 +268,8 @@ class EditgroupAction extends GroupDesignAction $this->group->description = $description; $this->group->location = $location; $this->group->mainpage = common_local_url('showgroup', array('nickname' => $nickname)); + $this->group->join_policy = $join_policy; + $this->group->force_scope = $force_scope; $result = $this->group->update($orig); @@ -283,7 +288,7 @@ class EditgroupAction extends GroupDesignAction if ($nickname != $orig->nickname) { common_log(LOG_INFO, "Saving local group info."); - $local = Local_group::staticGet('group_id', $this->group->id); + $local = Local_group::getKV('group_id', $this->group->id); $local->setNickname($nickname); } @@ -304,14 +309,14 @@ class EditgroupAction extends GroupDesignAction function nicknameExists($nickname) { - $group = Local_group::staticGet('nickname', $nickname); + $group = Local_group::getKV('nickname', $nickname); if (!empty($group) && $group->group_id != $this->group->id) { return true; } - $alias = Group_alias::staticGet('alias', $nickname); + $alias = Group_alias::getKV('alias', $nickname); if (!empty($alias) && $alias->group_id != $this->group->id) {