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; }
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 ''; }
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())); }
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; }
/** * 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; }
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; }