/** * Построение простой дискуссии - для одного листа. Выполняет основные действия. */ public final function buildDiscussionSimple(DiscussionMsg $leaf) { //Tree js data $treeData[self::JS_DATA_UPDOWN] = true; $treeData[self::JS_DATA_THREAD] = $leaf->getThreadId(); $treeData[self::JS_DATA_UNIQUE] = $this->SETTINGS->getUnique(); $treeData[self::JS_DATA_THEMED] = $this->SETTINGS->isThemed(); $params['tree'] = $this->buildLeaf($leaf, true); $params['data'] = PsHtml::data2string($treeData); return PSSmarty::template('discussion/common/discussion_simple.tpl', $params)->fetch(); }
/** * =========== * = ФЕТЧИНГ = * =========== * * Основной метод фетчинга формы. На вход можно передать hidden-поля. */ private function fetchImpl(array $HIDDENS = null) { //HIDDEN PARAMS //1. Переданные извне $HIDDENS = to_array($HIDDENS); //2. Установленные $HIDDENS = array_merge($HIDDENS, $this->hiddens); //3. Код формы $HIDDENS[FORM_PARAM_ID] = $this->ident; //SMARTY PARAMS $SMARTY['form_id'] = $this->ident; $SMARTY['hiddens'] = $HIDDENS; $SMARTY['ajax_url'] = 'ajax/FormProcess.php'; $SMARTY['html_hiddens'] = PsHtml::hiddens($HIDDENS); //HTML - hidden поля $SMARTY['html_buttons'] = ($this->isAddCapture() ? PsHtmlForm::capture() : '') . PsHtmlForm::submit($this->buttonsAllowed, $this->CAN_RESET); //HTML - submit buttons $SMARTY = array_merge($SMARTY, $this->smartyParams); //DO FETCH $content = $this->getFoldedEntity()->fetchTpl($SMARTY); //К шаблону формы добавим js-data $data = array(); if ($this->isCheckActivity()) { $data['timer'] = 1; } if ($this instanceof BaseSearchForm) { $data['search'] = 1; } $data = PsHtml::data2string($data); if ($data) { $content = str_replace_first('<form', "<form {$data}", $content); } $content = $this->getFoldedEntity()->getResourcesLinks($content); return $content; }