/**
  * Get questions
  *
  * @param
  * @return
  */
 function getQuestions()
 {
     global $ilAccess, $ilDB, $lng, $ilPluginAdmin;
     include_once "./Modules/TestQuestionPool/classes/class.ilObjQuestionPool.php";
     $all_types = ilObjQuestionPool::_getSelfAssessmentQuestionTypes();
     $all_ids = array();
     foreach ($all_types as $k => $v) {
         $all_ids[] = $v["question_type_id"];
     }
     $questions = array();
     if ($ilAccess->checkAccess("read", "", $this->pool_ref_id)) {
         require_once 'Modules/TestQuestionPool/classes/class.ilAssQuestionList.php';
         $questionList = new ilAssQuestionList($ilDB, $lng, $ilPluginAdmin, $this->pool_obj_id);
         $questionList->load();
         $data = $questionList->getQuestionDataArray();
         $questions = array();
         foreach ($data as $d) {
             // list only self assessment question types
             if (in_array($d["question_type_fi"], $all_ids)) {
                 $questions[] = $d;
             }
         }
     }
     $this->setData($questions);
 }
 /**
  * Get questions
  *
  * @param
  * @return
  */
 function getQuestions()
 {
     global $ilAccess;
     $filter = array();
     include_once "./Modules/TestQuestionPool/classes/class.ilObjQuestionPool.php";
     $all_types = ilObjQuestionPool::_getSelfAssessmentQuestionTypes();
     $all_ids = array();
     foreach ($all_types as $k => $v) {
         $all_ids[] = $v["question_type_id"];
     }
     $questions = array();
     if ($ilAccess->checkAccess("read", "", $this->pool_ref_id)) {
         $data = $this->pool->getQuestionBrowserData($filter);
         $questions = array();
         foreach ($data as $d) {
             // list only self assessment question types
             if (in_array($d["question_type_fi"], $all_ids)) {
                 $questions[] = $d;
             }
         }
     }
     $this->setData($questions);
 }
Ejemplo n.º 3
0
 /**
  * Insert new question form
  */
 function insert($a_mode = "create")
 {
     global $ilUser, $lng, $ilCtrl;
     $this->setInsertTabs("new_question");
     $this->displayValidationError();
     // get all question types (@todo: we have to check, whether they are
     // suitable for self assessment or not)
     include_once "./Modules/TestQuestionPool/classes/class.ilObjQuestionPool.php";
     $all_types = ilObjQuestionPool::_getSelfAssessmentQuestionTypes();
     $options = array();
     $all_types = ilUtil::sortArray($all_types, "order", "asc", true, true);
     foreach ($all_types as $k => $v) {
         $options[$v["type_tag"]] = $k;
     }
     // new table form (input of rows and columns)
     include_once "Services/Form/classes/class.ilPropertyFormGUI.php";
     $this->form_gui = new ilPropertyFormGUI();
     $this->form_gui->setFormAction($ilCtrl->getFormAction($this));
     $this->form_gui->setTitle($lng->txt("cont_ed_insert_pcqst"));
     // Select Question Type
     $qtype_input = new ilSelectInputGUI($lng->txt("cont_question_type"), "q_type");
     $qtype_input->setOptions($options);
     $qtype_input->setRequired(true);
     $this->form_gui->addItem($qtype_input);
     // additional content editor
     // assessment
     include_once "./Modules/Test/classes/class.ilObjAssessmentFolder.php";
     if (ilObjAssessmentFolder::isAdditionalQuestionContentEditingModePageObjectEnabled()) {
         $ri = new ilRadioGroupInputGUI($this->lng->txt("tst_add_quest_cont_edit_mode"), "add_quest_cont_edit_mode");
         $ri->addOption(new ilRadioOption($this->lng->txt('tst_add_quest_cont_edit_mode_default'), assQuestion::ADDITIONAL_CONTENT_EDITING_MODE_DEFAULT));
         $ri->addOption(new ilRadioOption($this->lng->txt('tst_add_quest_cont_edit_mode_page_object'), assQuestion::ADDITIONAL_CONTENT_EDITING_MODE_PAGE_OBJECT));
         $ri->setValue(assQuestion::ADDITIONAL_CONTENT_EDITING_MODE_DEFAULT);
         $this->form_gui->addItem($ri, true);
     } else {
         $hi = new ilHiddenInputGUI("question_content_editing_type");
         $hi->setValue(assQuestion::ADDITIONAL_CONTENT_EDITING_MODE_DEFAULT);
         $this->form_gui->addItem($hi, true);
     }
     // Select Question Pool
     /*
     		include_once("./Modules/TestQuestionPool/classes/class.ilObjQuestionPool.php");
     		$qpools = ilObjQuestionPool::_getAvailableQuestionpools(false, false, false, true, false, "write");
     
     		if (count($qpools) > 0)
     		{
     			$pool_options = array();
     			foreach ($qpools as $key => $value)
     			{
     				$pool_options[$key] = $value["title"];
     			}
     			$pool_input = new ilSelectInputGUI($lng->txt("cont_question_pool"), "qpool_ref_id");
     			$pool_input->setOptions($pool_options);
     			$pool_input->setRequired(true);
     			$this->form_gui->addItem($pool_input);
     		}
     		else
     		{
     			$pool_input = new ilTextInputGUI($lng->txt("cont_question_pool"), "qpool_title");
     			$pool_input->setRequired(true);
     			$this->form_gui->addItem($pool_input);
     		}
     */
     if ($a_mode == "edit_empty") {
         $this->form_gui->addCommandButton("edit", $lng->txt("save"));
     } else {
         $this->form_gui->addCommandButton("create_pcqst", $lng->txt("save"));
         $this->form_gui->addCommandButton("cancelCreate", $lng->txt("cancel"));
     }
     $this->tpl->setContent($this->form_gui->getHTML());
 }
 /**
  * Insert new question form
  */
 function insert($a_mode = "create")
 {
     global $ilUser, $lng, $ilCtrl;
     $this->setInsertTabs("new_question");
     $this->displayValidationError();
     // get all question types (@todo: we have to check, whether they are
     // suitable for self assessment or not)
     include_once "./Modules/TestQuestionPool/classes/class.ilObjQuestionPool.php";
     $all_types = ilObjQuestionPool::_getSelfAssessmentQuestionTypes();
     $options = array();
     $all_types = ilUtil::sortArray($all_types, "order", "asc", true, true);
     foreach ($all_types as $k => $v) {
         $options[$v["type_tag"]] = $k;
     }
     // new table form (input of rows and columns)
     include_once "Services/Form/classes/class.ilPropertyFormGUI.php";
     $this->form_gui = new ilPropertyFormGUI();
     $this->form_gui->setFormAction($ilCtrl->getFormAction($this));
     $this->form_gui->setTitle($lng->txt("cont_ed_insert_pcqst"));
     // Select Question Type
     $qtype_input = new ilSelectInputGUI($lng->txt("cont_question_type"), "q_type");
     $qtype_input->setOptions($options);
     $qtype_input->setRequired(true);
     $this->form_gui->addItem($qtype_input);
     // Select Question Pool
     /*
     		include_once("./Modules/TestQuestionPool/classes/class.ilObjQuestionPool.php");
     		$qpools = ilObjQuestionPool::_getAvailableQuestionpools(false, false, false, true, false, "write");
     
     		if (count($qpools) > 0)
     		{
     			$pool_options = array();
     			foreach ($qpools as $key => $value)
     			{
     				$pool_options[$key] = $value["title"];
     			}
     			$pool_input = new ilSelectInputGUI($lng->txt("cont_question_pool"), "qpool_ref_id");
     			$pool_input->setOptions($pool_options);
     			$pool_input->setRequired(true);
     			$this->form_gui->addItem($pool_input);
     		}
     		else
     		{
     			$pool_input = new ilTextInputGUI($lng->txt("cont_question_pool"), "qpool_title");
     			$pool_input->setRequired(true);
     			$this->form_gui->addItem($pool_input);
     		}
     */
     if ($a_mode == "edit_empty") {
         $this->form_gui->addCommandButton("edit", $lng->txt("save"));
     } else {
         $this->form_gui->addCommandButton("create_pcqst", $lng->txt("save"));
         $this->form_gui->addCommandButton("cancelCreate", $lng->txt("cancel"));
     }
     $this->tpl->setContent($this->form_gui->getHTML());
 }