function &execute(&$controller, &$request, &$user) { $objs =& $request->getAttribute('questions'); $questions = array(); foreach ($objs as $obj) { $arr =& $obj->getStructure(); $arr['size_str'] = @sprintf(_MD_PLZXOO_FORMAT_ANSWERS_COUNT, $arr['size']); $questions[] =& $arr; unset($arr); } $listController =& $request->getAttribute('listController'); $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_index.html'); $renderer->setAttribute('questions', $questions); $renderer->setAttribute('listController', $listController->getStructure()); exFrame::init(EXFRAME_PERM); $renderer->setAttribute('enable_post_question', exPerm::isPerm('post_question')); $cat_handler =& plzXoo::getHandler('category'); $cat_obj =& $cat_handler->get(intval(@$_GET['cid'])); if (is_object($cat_obj)) { $cat_arr = $cat_obj->getStructure(); $renderer->setAttribute('category', $cat_arr); $renderer->setAttribute('xoops_pagetitle', $cat_arr['name']); } else { $renderer->setAttribute('category', array('children' => plzXooCategoryObject::getChildren(0), 'cid' => 0)); $renderer->setAttribute('searchtxt4disp', htmlspecialchars($listController->filter_->txt_, ENT_QUOTES)); } /* echo "<pre>" ; var_dump( $cat_obj->getStructure() ) ; exit ;*/ return $renderer; }
function &execute(&$controller, &$request, &$user) { $editform =& $request->getAttribute('editform'); $category =& $request->getAttribute('category'); $question =& $request->getAttribute('question'); $answer =& $request->getAttribute('answer'); /* $form = new XoopsThemeForm('Answer','editanswer','','POST'); $form->addElement(new XoopsFormHidden('aid',$editform->aid_)); $form->addElement(new XoopsFormHidden('qid',$editform->qid_)); $form->addElement(new XoopsFormDhtmlTextArea(_MD_PLZXOO_LANG_ANSWER_BODY,'body',$editform->body_,6,50)); //Ticket $form->addElement(new XoopsFormHidden($editform->ticket_->name_,$editform->ticket_->value_)); //------------------------- // Tray & Button //------------------------- $tray = new XoopsFormElementTray(_MD_PLZXOO_LANG_CONTROL); // preview (check isset($_POST['preview'])) // $tray->addElement( new XoopsFormButton ( '' , 'preview', 'DISPLAY STRING', 'submit' ) ); $tray->addElement( new XoopsFormButton ( '', 'submit', _MD_PLZXOO_LANG_SUBMIT, 'submit' ) ); $tray->addElement( new XoopsFormButton ( '' , 'reset', _MD_PLZXOO_LANG_RESET, 'reset' ) ); $backButton = new XoopsFormButton ( '' , "back", _MD_PLZXOO_LANG_GO_BACK, "button" ); $backButton->setExtra('onclick="javascript:history.go(-1);"'); $tray->addElement($backButton); // add tray $form->addElement($tray); */ $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_answer_edit.html'); // $renderer = new mojaLE_Renderer($controller,$request,$user); // $renderer->setTemplate('edit_answer.tpl'); // $renderer->setAttribute('xoopsform',$form); $renderer->setAttribute('editform', $editform); if (is_object(@$editform->ticket_)) { $renderer->setAttribute('hidden_ticket', $editform->ticket_->makeHTMLhidden()); } $renderer->setAttribute('is_error', $editform->isError()); $renderer->setAttribute('error_html', $editform->getHtmlErrors()); $renderer->setAttribute('category', $category->getStructure()); $renderer->setAttribute('question', $question->getStructure()); $renderer->setAttribute('answer', $answer->getStructure('e')); return $renderer; }
function &execute(&$controller, &$request, &$user) { $editform =& $request->getAttribute('editform'); $category =& $request->getAttribute('category'); $question =& $request->getAttribute('question'); $answer =& $request->getAttribute('obj'); $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_answer_delete.html'); $renderer->setAttribute('editform', $editform); if (is_object(@$editform->ticket_)) { $renderer->setAttribute('hidden_ticket', $editform->ticket_->makeHTMLhidden()); } $renderer->setAttribute('category', $category->getStructure()); $renderer->setAttribute('question', $question->getStructure()); $renderer->setAttribute('answer', $answer->getStructure()); return $renderer; }
function &execute(&$controller, &$request, &$user) { $editform =& $request->getAttribute('editform'); $category =& $request->getAttribute('category'); $question =& $request->getAttribute('question'); $answer =& $request->getAttribute('answer'); /* $form = new XoopsThemeForm(_MD_PLZXOO_LANG_RESPONSE,'Response','','POST'); $form->addElement(new XoopsFormHidden('aid',$editform->aid_)); $form->addElement(new XoopsFormHidden($editform->ticket_->name_,$editform->ticket_->value_)); //------------------------- // Select //------------------------- if(isset($editform->point_)) { $select =new XoopsFormSelect(_MD_PLZXOO_LANG_POINT,'point', $editform->point_); $select->addOption(20, _MD_PLZXOO_LANG_POINT_20 ); $select->addOption(10, _MD_PLZXOO_LANG_POINT_10 ); $select->addOption(0, _MD_PLZXOO_LANG_POINT_0 ); $form->addElement($select); unset($select); } //------------------------- // TextArea(Plain) //------------------------- $form->addElement(new XoopsFormTextArea(_MD_PLZXOO_LANG_COMMENT,'comment',$editform->comment_,3, 50 )); //------------------------- // Tray & Button //------------------------- $tray = new XoopsFormElementTray(_MD_PLZXOO_LANG_CONTROL); // preview (check isset($_POST['preview'])) // $tray->addElement( new XoopsFormButton ( '' , 'preview', 'DISPLAY STRING', 'submit' ) ); $tray->addElement( new XoopsFormButton ( '', 'submit', _MD_PLZXOO_LANG_SUBMIT, 'submit' ) ); $tray->addElement( new XoopsFormButton ( '', 'reset', _MD_PLZXOO_LANG_RESET, 'reset' ) ); $backButton = new XoopsFormButton ( '' , "back", _MD_PLZXOO_LANG_GO_BACK, "button" ); $backButton->setExtra('onclick="javascript:history.go(-1);"'); $tray->addElement($backButton); // add tray $form->addElement($tray); */ $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_answer_response.html'); // $renderer = new mojaLE_Renderer($controller,$request,$user); // $renderer->setTemplate('response.tpl'); // $renderer->setAttribute('xoopsform',$form); $renderer->setAttribute('editform', $editform); if (is_object(@$editform->ticket_)) { $renderer->setAttribute('hidden_ticket', $editform->ticket_->makeHTMLhidden()); } $renderer->setAttribute('is_error', $editform->isError()); $renderer->setAttribute('error_html', $editform->getHtmlErrors()); $renderer->setAttribute('category', $category->getStructure()); $renderer->setAttribute('question', $question->getStructure()); $answer_structure = $answer->getStructure(); $answer_structure['comment4edit'] = $answer->getVar('comment', 'e'); $renderer->setAttribute('answer', $answer_structure); return $renderer; }
function &execute(&$controller, &$request, &$user) { $editform =& $request->getAttribute('editform'); $category =& $request->getAttribute('category'); $question =& $request->getAttribute('question'); $answers_obj =& $request->getAttribute('answers'); $answers = array(); foreach ($answers_obj as $answer) { $ret = $answer->getStructure(); $ret['enable_edit'] = $answer->isEnableEdit($user); $ret['enable_delete'] = $answer->isEnableDelete($user); $answers[] =& $ret; unset($ret); } $points = explode('|', @$GLOBALS['xoopsModuleConfig']['points']); $point_options = ''; foreach ($points as $key => $point_tmp) { @(list($point, $max) = explode(':', $point_tmp)); if (empty($max)) { $max = 0; } $point = intval($point_tmp); $point_options .= "<option value='{$point}'>" . sprintf($max ? _MD_PLZXOO_FORMAT_POINT_OF_ANSWER : _MD_PLZXOO_FORMAT_POINT_OF_ANSWER_NOLIMIT, $point, $max) . "</option>\n"; } $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_question_close.html'); // $renderer = new mojaLE_Renderer($controller,$request,$user); // $renderer->setTemplate('close_input.tpl'); $renderer->setAttribute('editform', $editform); if (is_object(@$editform->ticket_)) { $renderer->setAttribute('hidden_ticket', $editform->ticket_->makeHTMLhidden()); } $renderer->setAttribute('is_error', $editform->isError()); $renderer->setAttribute('error_html', $editform->getHtmlErrors()); $renderer->setAttribute('category', $category->getStructure()); $renderer->setAttribute('question', $question->getStructure()); $renderer->setAttribute('answers', $answers); $renderer->setAttribute('point_options', $point_options); return $renderer; }
function &execute(&$controller, &$request, &$user) { $editform =& $request->getAttribute('editform'); $question =& $request->getAttribute('question'); /* $form = new XoopsThemeForm(_MD_PLZXOO_LANG_QUESTION,'editquestion','','POST'); $form->addElement(new XoopsFormHidden('qid',$editform->qid_)); $form->addElement(new XoopsFormText(_MD_PLZXOO_LANG_SUBJECT,'subject',64,255,$editform->subject_)); $form->addElement(new XoopsFormTextArea(_MD_PLZXOO_LANG_BODY,'body',$editform->body_,6,50)); */ //Ticket // $form->addElement(new XoopsFormHidden($editform->ticket_->name_,$editform->ticket_->value_)); //Category $categories =& $request->getAttribute('categories'); if (count($categories)) { include_once XOOPS_ROOT_PATH . '/class/xoopstree.php'; $db =& Database::getInstance(); $tree =& new XoopsTree($db->prefix('plzxoo_category'), 'cid', 'pid'); ob_start(); $tree->makeMySelBox('name', 'weight', $editform->cid_ ? $editform->cid_ : intval(@$_GET['cid']), 0, 'cid'); $select_cid = ob_get_contents(); ob_end_clean(); } /* if(count($categories)) { $select = new XoopsFormSelect(_MD_PLZXOO_LANG_CATEGORY,'cid',$editform->cid_); foreach($categories as $category) { $select->addOption($category->getVar('cid'),$category->getVar('name')); } $form->addElement($select); unset($select); } else { $form->addElement(new XoopsFormHidden('cid',$editform->cid_)); } */ //Priority /* $select = new XoopsFormSelect(_MD_PLZXOO_LANG_PRIORITY,'priority',$editform->priority_); for($i=1;$i<=5;$i++) $select->addOption($i,$i); $form->addElement($select); */ $select_priority = "<select name='priority'>\n"; for ($i = 1; $i <= 5; $i++) { $selected = $i == $question->getVar('priority') ? "selected='selected'" : ""; $select_priority .= "<option value='{$i}' {$selected}>{$i}</option>\n"; } $select_priority .= "</select>\n"; //Status (only admin can edit status directly) if (is_object($GLOBALS['xoopsUser']) && $GLOBALS['xoopsUser']->isAdmin()) { $select_status = "<select name='status'>\n"; foreach ($GLOBALS['plzxoo_status_mapping'] as $st => $label) { $selected = $st == $question->getVar('status') ? "selected='selected'" : ""; $select_status .= "<option value='{$st}' {$selected}>" . htmlspecialchars($label) . "</option>\n"; } $select_status .= "</select>\n"; } //------------------------- // Tray & Buttons //------------------------- /* $tray = new XoopsFormElementTray(_MD_PLZXOO_LANG_CONTROL); // preview (check isset($_POST['preview'])) // $tray->addElement( new XoopsFormButton ( '' , 'preview', 'DISPLAY STRING', 'submit' ) ); $tray->addElement( new XoopsFormButton ( '', 'submit', _MD_PLZXOO_LANG_SUBMIT, 'submit' ) ); $tray->addElement( new XoopsFormButton ( '' , 'reset', _MD_PLZXOO_LANG_RESET, 'reset' ) ); $backButton = new XoopsFormButton ( '' , "back", _MD_PLZXOO_LANG_GO_BACK, "button" ); $backButton->setExtra('onclick="javascript:history.go(-1);"'); $tray->addElement($backButton); // add tray $form->addElement($tray); */ $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_question_edit.html'); // $renderer = new mojaLE_Renderer($controller,$request,$user); // $renderer->setTemplate('edit_question.tpl'); // $renderer->setAttribute('xoopsform',$form); $renderer->setAttribute('editform', $editform); if (is_object(@$editform->ticket_)) { $renderer->setAttribute('hidden_ticket', $editform->ticket_->makeHTMLhidden()); } $renderer->setAttribute('is_error', $editform->isError()); $renderer->setAttribute('error_html', $editform->getHtmlErrors()); $renderer->setAttribute('question', $question->getStructure('e')); $renderer->setAttribute('select_cid', @$select_cid); $renderer->setAttribute('select_priority', @$select_priority); $renderer->setAttribute('select_status', @$select_status); return $renderer; }
function &execute(&$controller, &$request, &$user) { $question =& $request->getAttribute('question'); $answers_obj =& $request->getAttribute('answers'); // prepare for points decoration $points = explode('|', @$GLOBALS['xoopsModuleConfig']['points']); rsort($points, SORT_NUMERIC); $point_decorations = array(); $rank = 0; foreach ($points as $point) { $point = intval($point); $rank++; if (defined('_MD_PLZXOO_FORMAT_POINT_RESULT_RANK' . $rank)) { $point_decorations[$point] = sprintf(constant('_MD_PLZXOO_FORMAT_POINT_RESULT_RANK' . $rank), $point); } else { $point_decorations[$point] = sprintf(_MD_PLZXOO_FORMAT_POINT_RESULT_GENERAL, $point); } } $answers = array(); foreach ($answers_obj as $answer) { $ret = $answer->getStructure(); $ret['enable_edit'] = $answer->isEnableEdit($user); $ret['enable_delete'] = $answer->isEnableDelete($user); $ret['point_decorated'] = empty($point_decorations[$ret['point']]) ? $ret['point'] : $point_decorations[$ret['point']]; $answers[] =& $ret; unset($ret); } // 権限チェック $question_arr = $question->getStructure(); $question_arr['enable_edit'] = $question->isEnableEdit($user); $question_arr['enable_delete'] = $question->isEnableDelete($user); // メッセージ権限のチェック $question_arr['enable_message'] = is_object($user) ? $user->isAdmin() || $user->uid() == $question->getVar('uid') : false; $renderer = new mojaLE_XoopsTplRenderer($controller, $request, $user); $renderer->setTemplate('plzxoo_detail.html'); $renderer->setAttribute('question', $question_arr); $renderer->setAttribute('answers', $answers); $renderer->setAttribute('enable_post_answer', exPerm::isPerm('post_answer') && is_object($user) && $question->getVar('uid') != $user->uid() | exPerm::isPerm('post_answer_myself')); // GIJ $renderer->setAttribute('is_detail', true); $renderer->setAttribute('mod_config', @$GLOBALS['xoopsModuleConfig']); $cat_handler =& plzXoo::getHandler('category'); $cat_obj =& $cat_handler->get($question->getVar('cid')); if (is_object($cat_obj)) { $renderer->setAttribute('category', $cat_obj->getStructure()); } else { $renderer->setAttribute('category', array()); } $renderer->setAttribute('xoops_pagetitle', $question_arr['subject']); return $renderer; }