当前位置: 首页>>代码示例>>PHP>>正文


PHP BOL_QuestionService::findAllAccountTypes方法代码示例

本文整理汇总了PHP中BOL_QuestionService::findAllAccountTypes方法的典型用法代码示例。如果您正苦于以下问题:PHP BOL_QuestionService::findAllAccountTypes方法的具体用法?PHP BOL_QuestionService::findAllAccountTypes怎么用?PHP BOL_QuestionService::findAllAccountTypes使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在BOL_QuestionService的用法示例。


在下文中一共展示了BOL_QuestionService::findAllAccountTypes方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: ajaxResponder

 public function ajaxResponder()
 {
     if (!OW::getAuthorization()->isUserAuthorized(OW::getUser()->getId(), 'admin') || empty($_POST["command"]) || !OW::getRequest()->isAjax()) {
         throw new Redirect404Exception();
     }
     $command = (string) $_POST["command"];
     switch ($command) {
         case 'deleteQuestion':
             $questionId = (int) $_POST['questionId'];
             $question = $this->questionService->findQuestionById($questionId);
             if (empty($question)) {
                 echo json_encode(array('result' => false));
                 exit;
             }
             $parent = null;
             if (!empty($question->parent)) {
                 $parent = $this->questionService->findQuestionByName($question->parent);
             }
             if ($question->base == 1 || !$question->removable || !empty($parent)) {
                 echo json_encode(array('result' => false));
                 exit;
             }
             $childList = $this->questionService->findQuestionChildren($question->name);
             $deleteList = array();
             $deleteQuestionNameList = array();
             foreach ($childList as $child) {
                 $deleteList[] = $child->id;
                 $deleteQuestionNameList[$child->name] = $child->name;
             }
             if (!empty($deleteList)) {
                 $this->questionService->deleteQuestion($deleteList);
             }
             if ($this->questionService->deleteQuestion(array((int) $_POST['questionId']))) {
                 echo json_encode(array('result' => "success", 'message' => OW::getLanguage()->text('admin', 'questions_question_was_deleted'), 'deleteList' => $deleteQuestionNameList));
                 exit;
             }
             echo json_encode(array('result' => false));
             exit;
             break;
         case 'findNearestSection':
             $sectionName = $_POST['sectionName'];
             if (!empty($sectionName)) {
                 $section = $this->questionService->findSectionBySectionName($sectionName);
                 if (empty($section)) {
                     echo json_encode(array('result' => false));
                     exit;
                 }
                 $nearSection = $this->questionService->findNearestSection($section);
                 if (empty($nearSection)) {
                     echo json_encode(array('result' => false));
                     exit;
                 }
                 echo json_encode(array('result' => "success", 'message' => OW::getLanguage()->text('admin', 'questions_delete_section_confirmation_with_move_questions', array('sectionName' => BOL_QuestionService::getInstance()->getSectionLang($nearSection->name)))));
                 exit;
             }
             echo json_encode(array('result' => false));
             exit;
             break;
         case 'deleteSection':
             if (!empty($_POST['sectionName']) && mb_strlen($_POST['sectionName']) > 0) {
                 /*@var $nearSection BOL_QuestionSection*/
                 $nearSection = $this->questionService->findSectionBySectionName($_POST['sectionName']);
                 $moveQuestionsToSection = null;
                 if (!empty($nearSection) && $nearSection->isDeletable && $this->questionService->deleteSection(htmlspecialchars($_POST['sectionName']), $moveQuestionsToSection)) {
                     $result = array('result' => "success", 'message' => OW::getLanguage()->text('admin', 'questions_section_was_deleted'));
                     if (!empty($moveQuestionsToSection)) {
                         $result['moveTo'] = $moveQuestionsToSection->name;
                     }
                     echo json_encode($result);
                     exit;
                 }
             }
             echo json_encode(array('result' => "false"));
             exit;
             break;
         case 'DeleteQuestionValue':
             $result = false;
             $questionId = htmlspecialchars($_POST["questionId"]);
             $question = $this->questionService->findQuestionById($questionId);
             $value = (int) $_POST["value"];
             if (empty($question) || empty($value) && $value !== 0) {
                 echo json_encode(array('result' => $result));
                 return;
             }
             if ($this->questionService->deleteQuestionValue($question->name, $value)) {
                 $result = true;
             }
             echo json_encode(array('result' => $result));
             break;
         case 'deleteAccountType':
             if (!empty($_POST['accountType']) && mb_strlen($_POST['accountType']) > 0) {
                 $accountTypes = $this->questionService->findAllAccountTypes();
                 $accountTypeList = array();
                 foreach ($accountTypes as $key => $account) {
                     if ($account->name != $_POST['accountType']) {
                         $accountTypeList[$account->name] = $account->name;
                     }
                 }
                 if (empty($accountTypeList)) {
                     echo json_encode(array('result' => "false", 'message' => OW::getLanguage()->text('admin', 'questions_cant_delete_last_account_type')));
//.........这里部分代码省略.........
开发者ID:ZyXelP,项目名称:oxwall,代码行数:101,代码来源:questions.php

示例2: edit

 public function edit($params)
 {
     if (!isset($params['questionId'])) {
         throw new Redirect404Exception();
     }
     $questionId = (int) @$params['questionId'];
     if (empty($questionId)) {
         throw new Redirect404Exception();
     }
     $this->addContentMenu();
     $this->contentMenu->getElement('qst_index')->setActive(true);
     $editQuestion = $this->questionService->findQuestionById($questionId);
     $parent = $editQuestion->parent;
     $parentIsset = false;
     if (!empty($parent)) {
         $parentDto = $this->questionService->findQuestionByName($parent);
         $parentIsset = !empty($parentDto) ? true : false;
         if ($parentIsset) {
             $this->assign('parentUrl', OW::getRouter()->urlFor('ADMIN_CTRL_Questions', 'edit', array("questionId" => $parentDto->id)));
             $this->assign('parentLabel', $this->questionService->getQuestionLang($parentDto->name));
         }
     }
     $this->assign('parentIsset', $parentIsset);
     if ($editQuestion === null) {
         throw new Redirect404Exception();
     }
     $this->assign('question', $editQuestion);
     //$editQuestionToAccountType = $this->questionService->findAccountTypeByQuestionName( $editQuestion->name );
     // get available account types from DB
     /* @var BOL_QuestionService $this->questionService */
     $accountTypes = $this->questionService->findAllAccountTypes();
     $serviceLang = BOL_LanguageService::getInstance();
     $language = OW::getLanguage();
     $currentLanguageId = OW::getLanguage()->getCurrentId();
     $accounts = array(BOL_QuestionService::ALL_ACCOUNT_TYPES => $language->text('base', 'questions_account_type_all'));
     /* @var $value BOL_QuestionAccount */
     foreach ($accountTypes as $value) {
         $accounts[$value->name] = $language->text('base', 'questions_account_type_' . $value->name);
     }
     $sections = $this->questionService->findAllSections();
     // need to hide sections select box
     if (empty($section)) {
         $this->assign('no_sections', true);
     }
     $sectionsArray = array();
     /* @var $section BOL_QuestionSection */
     foreach ($sections as $section) {
         $sectionsArray[$section->name] = $language->text('base', 'questions_section_' . $section->name . '_label');
     }
     $presentations = array();
     $presentationsLabel = array();
     $presentationList = $this->questionService->getPresentations();
     if ($editQuestion->name != 'password') {
         unset($presentationList[BOL_QuestionService::QUESTION_PRESENTATION_PASSWORD]);
     }
     foreach ($presentationList as $presentationKey => $presentation) {
         if ($presentationList[$editQuestion->presentation] == $presentation) {
             $presentations[$presentationKey] = $presentationKey;
             //TODO add langs with presentation labels
             $presentationsLabel[$presentationKey] = $language->text('base', 'questions_question_presentation_' . $presentationKey . '_label');
         }
     }
     $presentation = $editQuestion->presentation;
     if (OW::getSession()->isKeySet(self::EDIT_QUESTION_SESSION_VAR)) {
         $session = OW::getSession()->get(self::EDIT_QUESTION_SESSION_VAR);
         if (isset($session['qst_answer_type']) && isset($presentations[$session['qst_answer_type']])) {
             $presentation = $presentations[$session['qst_answer_type']];
         }
     }
     if (isset($_POST['qst_answer_type']) && isset($presentations[$_POST['qst_answer_type']])) {
         $presentation = $presentations[$_POST['qst_answer_type']];
     }
     //$this->addForm(new LanguageValueEditForm( 'base', 'questions_question_' . ($editQuestion->id) . '_label', $this ) );
     //--  -------------------------------------
     //--  add question values form creating
     //--  -------------------------------------
     $questionValues = $this->questionService->findQuestionValues($editQuestion->name);
     $this->assign('questionValues', $questionValues);
     //add field values form
     $addQuestionValuesForm = new AddValuesForm($questionId);
     $addQuestionValuesForm->setAction($this->ajaxResponderUrl);
     $this->addForm($addQuestionValuesForm);
     //--  -------------------------------------
     //--  edit field form creating
     //--  -------------------------------------
     $editForm = new Form('qst_edit_form');
     $editForm->setId('qst_edit_form');
     $disableActionList = array('disable_account_type' => false, 'disable_answer_type' => false, 'disable_presentation' => false, 'disable_column_count' => false, 'disable_display_config' => false, 'disable_required' => false, 'disable_on_join' => false, 'disable_on_view' => false, 'disable_on_search' => false, 'disable_on_edit' => false);
     $event = new OW_Event('admin.disable_fields_on_edit_profile_question', array('questionDto' => $editQuestion), $disableActionList);
     OW::getEventManager()->trigger($event);
     $disableActionList = $event->getData();
     if (count($accountTypes) > 1) {
         $qstAccountType = new Selectbox('qst_account_type');
         $qstAccountType->setLabel($language->text('admin', 'questions_for_account_type_label'));
         $qstAccountType->setDescription($language->text('admin', 'questions_for_account_type_description'));
         $qstAccountType->setOptions($accounts);
         $qstAccountType->setValue(BOL_QuestionService::ALL_ACCOUNT_TYPES);
         $qstAccountType->setHasInvitation(false);
         if ($editQuestion->accountTypeName !== null) {
             $qstAccountType->setValue($editQuestion->accountTypeName);
//.........这里部分代码省略.........
开发者ID:vazahat,项目名称:dudex,代码行数:101,代码来源:questions.php


注:本文中的BOL_QuestionService::findAllAccountTypes方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。