Ejemplo n.º 1
0
 /**
  * We install one root board per default. Return empty string on success or error msg.
  * @param $forum
  * @return string
  */
 public static function installRoot(Module_Forum $forum)
 {
     $table = GDO::table('GWF_ForumBoard');
     # Do we have a root?
     if (false !== ($board = GWF_ForumBoard::getByID(1))) {
         return '';
     }
     $root = new GWF_ForumBoard(array('board_bid' => 1, 'board_pid' => 0, 'board_gid' => 0, 'board_pos' => 0, 'board_options' => GWF_ForumBoard::GUEST_VIEW, 'board_title' => GWF_SITENAME, 'board_descr' => 'Forums', 'board_postcount' => 0, 'board_threadcount' => 0));
     if (false === $root->insert()) {
         return GWF_HTML::err('ERR_DATABASE', __FILE__, __LINE__);
     }
     return '';
 }
Ejemplo n.º 2
0
 private function createBoard(GWF_Group $group)
 {
     $name = $group->getName();
     $pid = $this->module->getForumBoard()->getID();
     //		$pid = Common::clamp($this->module->cfgBID(), 1);
     if (false === GWF_ForumBoard::getByID($pid)) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     $groupid = $group->getID();
     $options = GWF_ForumBoard::ALLOW_THREADS;
     if (false === ($board = GWF_ForumBoard::createBoard('Usergroup: ' . $name, 'Board for the ' . $name . ' group', $pid, $options, $groupid))) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     if (false === $group->saveVar('group_bid', $board->getID())) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     if (false !== ($error = $this->module->adjustFlags($group))) {
         return $error;
     }
     return false;
 }
Ejemplo n.º 3
0
 $founder = $group->getFounder();
 $in_grp = $user->isInGroupName($groupname);
 if ($in_grp) {
     $ugopt = $user->getUserGroupOptions($group->getID());
     #getGroupByName($groupname)->getInt('group_options');
     //		$ugopt = $user->getUserGroupOptions($groupname);
 } else {
     $ugopt = 0;
 }
 if (($ugopt & (GWF_UserGroup::LEADER | GWF_UserGroup::CO_LEADER)) > 0) {
     $edit = GWF_Button::edit(GWF_WEB_ROOT . 'edit_usergroup/' . $group->getID() . '/' . $group->urlencodeSEO('group_name'));
 } else {
     $edit = '';
 }
 $parent_board = $tVars['module']->getForumBoard();
 if (false !== ($board = GWF_ForumBoard::getByID($group->getVar('group_bid')))) {
     $href = $board->getShowBoardHREF();
     $forum = GWF_HTML::anchor($href, $group->getVar('group_name'));
 } else {
     $forum = $group->display('group_name');
 }
 $members = GWF_HTML::anchor(GWF_WEB_ROOT . 'users_in_group/' . $group->getID() . '/' . $group->urlencodeSEO('group_name'), $group->getVar('group_memberc'));
 echo GWF_Table::rowStart();
 echo GWF_Table::column($edit . $forum, 'nowrap');
 echo GWF_Table::column($members, 'gwf_num');
 echo GWF_Table::column($founder->displayProfileLink());
 if ($user->isGuest()) {
     echo '<td></td>' . PHP_EOL;
 } elseif ($in_grp) {
     echo GWF_Table::column(sprintf('<input type="submit" name="part[%s]" value="%s" />', $group->getVar('group_id'), $btn_part));
 } elseif ($group->isOptionEnabled(GWF_Group::FREE)) {
Ejemplo n.º 4
0
 public function adjustFlags(GWF_Group $group)
 {
     if (false === ($mod_forum = GWF_Module::getModule('Forum'))) {
         return false;
     }
     $mod_forum->onInclude();
     if (false === ($board = GWF_ForumBoard::getByID($group->getBoardID()))) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     # Adjust Board and Thread Flags
     $gid = 0;
     $guestview = true;
     switch ($group->getVisibleMode()) {
         case GWF_Group::VISIBLE:
             //				$board->saveVar('board_gid', 0);
             //				$board->saveGuestView(true);
             //				$board->saveOption(GWF_ForumBoard::GUEST_VIEW, true);
             //				$this->adjustThreads($board, 0, true);
             //				return false;
             break;
         case GWF_Group::COMUNITY:
             //				$board->saveVar('board_gid', 0);
             //				$board->saveGuestView(false);
             //				$board->saveOption(GWF_ForumBoard::GUEST_VIEW, false);
             $guestview = false;
             break;
         case GWF_Group::HIDDEN:
         case GWF_Group::SCRIPT:
             //				$board->saveVar('board_gid', $group->getID());
             //				$board->saveGuestView(false);
             //				$board->saveOption(GWF_ForumBoard::GUEST_VIEW, false);
             $gid = $group->getID();
             $guestview = false;
             break;
         default:
             return GWF_HTML::err('ERR_GENERAL', array(__FILE__, __LINE__));
     }
     $board->saveGroupID($gid);
     $board->saveGuestView($guestview);
 }
Ejemplo n.º 5
0
 private function changeGroupName(GWF_Group $group, $new_name)
 {
     if ($new_name === $group->getVar('group_name')) {
         return true;
     }
     if (false === ($mod_forum = GWF_Module::getModule('Forum'))) {
         return true;
     }
     $mod_forum->onInclude();
     if (false === ($board = GWF_ForumBoard::getByID($group->getBoardID()))) {
         return false;
     }
     if (false === $group->saveVar('group_name', $new_name)) {
         return false;
     }
     if (false === $board->saveVars(array('board_title' => 'Usergroup: ' . $new_name, 'board_descr' => 'Board for the ' . $new_name . ' group'))) {
         return false;
     }
     return true;
 }