예제 #1
0
 private static function createForums(Module_WeChall $module, $dropTable)
 {
     $back = '';
     //		if (false === ($module_forum = GWF_Module::getModule('Forum'))) {
     //			return GWF_HTML::err('ERR_MODULE_MISSING', 'Forum');
     //		}
     //		$module_forum->onInclude();
     $boards = GDO::table('GWF_ForumBoard');
     $t = $boards->escape(Module_WeChall::BOARD_CHALLS);
     if (false === ($board = $boards->getBy('board_title', $t))) {
         if (false === ($board = GWF_ForumBoard::createBoard(Module_WeChall::BOARD_CHALLS, Module_WeChall::BOARD_CHALLS_DESCR, 1, GWF_ForumBoard::GUEST_VIEW | GWF_ForumBoard::ALLOW_THREADS, 0))) {
             $back .= GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
         }
     }
     $boardid = $board === false ? 0 : $board->getID();
     $module->saveModuleVar('wc_chall_board', $boardid);
     $t = $boards->escape(Module_WeChall::BOARD_SOLUTIONS);
     if (false === ($board = $boards->getBy('board_title', $t))) {
         if (false === ($board = GWF_ForumBoard::createBoard(Module_WeChall::BOARD_SOLUTIONS, Module_WeChall::BOARD_SOLUTIONS_DESCR, 1, GWF_ForumBoard::GUEST_VIEW | GWF_ForumBoard::ALLOW_THREADS, 0))) {
             $back .= GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
         }
     }
     $boardid = $board === false ? 0 : $board->getID();
     $module->saveModuleVar('wc_sol_board', $boardid);
     $t = $boards->escape(Module_WeChall::BOARD_SITES);
     if (false === ($board = $boards->getBy('board_title', $t))) {
         if (false === ($board = GWF_ForumBoard::createBoard(Module_WeChall::BOARD_SITES, Module_WeChall::BOARD_SITES_DESCR, 1, GWF_ForumBoard::GUEST_VIEW | GWF_ForumBoard::ALLOW_THREADS, 0))) {
             $back .= GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
         }
     }
     $boardid = $board === false ? 0 : $board->getID();
     $module->saveModuleVar('wc_site_board', $boardid);
     return $back;
 }
예제 #2
0
 private static function createLangBoard(Module_Forum $module, GWF_Language $lang, $parent)
 {
     $iso = $lang->getISO();
     $title = $module->langISO($iso, 'lang_board_title', array($lang->getVar('name')));
     if (false !== ($board = GWF_ForumBoard::getByTitle($title))) {
         return '';
     }
     $descr = $module->langISO($iso, 'lang_board_descr', array($lang->getVar('lang_nativename')));
     $options = GWF_ForumBoard::GUEST_VIEW | GWF_ForumBoard::ALLOW_THREADS;
     if (false === ($board = GWF_ForumBoard::createBoard($title, $descr, $parent, $options, 0))) {
         return GWF_HTML::err('ERR_DATABASE', __FILE__, __LINE__);
     }
     return '';
 }
예제 #3
0
파일: AddBoard.php 프로젝트: sinfocol/gwf3
 private function onAddBoard()
 {
     $form = $this->getForm();
     if (false !== ($error = $form->validate($this->module))) {
         return $error . $this->templateAddBoard();
     }
     $title = $form->getVar('title');
     $descr = $form->getVar('descr');
     $parentid = $form->getVar('parentid');
     $groupid = $form->getVar('groupid');
     $options = 0;
     $options |= Common::getPost('allow_threads') === false ? 0 : GWF_ForumBoard::ALLOW_THREADS;
     $options |= Common::getPost('is_locked') === false ? 0 : GWF_ForumBoard::LOCKED;
     $options |= Common::getPost('guests') === false ? 0 : GWF_ForumBoard::GUEST_POSTS;
     $options |= Common::getPost('guest_view') === false ? 0 : GWF_ForumBoard::GUEST_VIEW;
     if (false === ($board = GWF_ForumBoard::createBoard($title, $descr, $parentid, $options, $groupid))) {
         return GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
     }
     return $this->module->message('msg_board_added', array($board->getParent()->getShowBoardHREF()));
 }
예제 #4
0
파일: Create.php 프로젝트: sinfocol/gwf3
 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;
 }
예제 #5
0
파일: Edit.php 프로젝트: sinfocol/gwf3
 /**
  * Get a newsboard for a language.
  * @param GWF_Language $lang
  * @param int $pid rootid
  * @return GWF_ForumBoard
  */
 private function getNewsForumLang(GWF_Language $lang, $pid)
 {
     $pid = (int) $pid;
     $title = $lang->escaped('lang_nativename');
     // found old board
     if (false !== ($board = GDO::table('GWF_ForumBoard')->selectFirst("board_pid={$pid} AND board_title='{$title}'"))) {
         return $board;
     }
     /// Create new board
     $options = GWF_ForumBoard::GUEST_VIEW;
     $descr = $this->module->langISO($lang->getISO(), 'board_lang_descr', array($lang->displayName()));
     $board = GWF_ForumBoard::createBoard($title, $descr, $pid, $options);
     return $board;
 }
예제 #6
0
 public function getForumBoard()
 {
     // Include Forum
     if (false === ($mod_forum = GWF_Module::loadModuleDB('Forum', true))) {
         return false;
     }
     // Get or Create Usergroup Forum
     if (false === ($board = GWF_ForumBoard::getByTitle('Usergroups'))) {
         $options = GWF_ForumBoard::GUEST_VIEW;
         if (false === ($board = GWF_ForumBoard::createBoard('Usergroups', 'Usergroup Forum Boards', 1, $options, 0))) {
             echo GWF_HTML::err('ERR_DATABASE', array(__FILE__, __LINE__));
             return false;
         }
     }
     return $board;
 }