public static function display() { if (isset($_POST['submit_edit_forum'])) { if (\PFBC\Form::isValid($_POST['submit_edit_forum'])) { new EditForumFormProcess(); } Framework\Url\Header::redirect(); } $oForumModel = new ForumModel(); $oForumData = $oForumModel->getForum((new Http())->get('forum_id'), 0, 1); $oCategoriesData = $oForumModel->getCategory(); $aCategoriesName = array(); foreach ($oCategoriesData as $oId) { $aCategoriesName[$oId->categoryId] = $oId->title; } unset($oForumModel, $oCategoriesData); $sTitlePattern = Config::getInstance()->values['module.setting']['url_title.pattern']; $oForm = new \PFBC\Form('form_edit_forum', '100%'); $oForm->configure(array('action' => '')); $oForm->addElement(new \PFBC\Element\Hidden('submit_edit_forum', 'form_edit_forum')); $oForm->addElement(new \PFBC\Element\Token('edit_forum')); $oForm->addElement(new \PFBC\Element\Select(t('Category Name:'), 'category_id', $aCategoriesName, array('value' => $oForumData->categoryId, 'required' => 1))); $oForm->addElement(new \PFBC\Element\Textbox(t('Forum Name:'), 'name', array('value' => $oForumData->name, 'id' => 'str_name', 'onblur' => 'CValid(this.value,this.id,2,60)', 'pattern' => $sTitlePattern, 'required' => 1, 'validation' => new \PFBC\Validation\RegExp($sTitlePattern)))); $oForm->addElement(new \PFBC\Element\HTMLExternal('<span class="input_error str_name"></span>')); $oForm->addElement(new \PFBC\Element\Textarea(t('Description:'), 'description', array('value' => $oForumData->description, 'id' => 'str_description', 'required' => 1, 'onblur' => 'CValid(this.value,this.id,4,255)', 'validation' => new \PFBC\Validation\Str(4, 255)))); $oForm->addElement(new \PFBC\Element\HTMLExternal('<span class="input_error str_description"></span>')); $oForm->addElement(new \PFBC\Element\Button()); $oForm->addElement(new \PFBC\Element\HTMLExternal('<script src="' . PH7_URL_STATIC . PH7_JS . 'validate.js"></script>')); $oForm->render(); }
public function __construct() { parent::__construct(); $oForumModel = new ForumModel(); $sMessage = $this->httpRequest->post('message', Http::ONLY_XSS_CLEAN); $sCurrentTime = $this->dateTime->get()->dateTime('Y-m-d H:i:s'); $iTimeDelay = (int) DbConfig::getSetting('timeDelaySendForumTopic'); $iProfileId = (int) $this->session->get('member_id'); $iForumId = $this->httpRequest->get('forum_id', 'int'); if (!$oForumModel->checkWaitTopic($iProfileId, $iTimeDelay, $sCurrentTime)) { \PFBC\Form::setError('form_msg', Form::waitWriteMsg($iTimeDelay)); } elseif ($oForumModel->isDuplicateTopic($iProfileId, $sMessage)) { \PFBC\Form::setError('form_msg', Form::duplicateContentMsg()); } else { $oForumModel->addTopic($iProfileId, $iForumId, $this->httpRequest->post('title'), $sMessage, $sCurrentTime); Header::redirect(Uri::get('forum', 'forum', 'post', $this->httpRequest->get('forum_name') . ',' . $iForumId . ',' . $this->httpRequest->post('title') . ',' . Db::getInstance()->lastInsertId()), t('Your message has been added successfully!')); } unset($oForumModel); }