public function render(array &$a_html, $a_parent_gui)
 {
     include_once "./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php";
     foreach (self::$valid_tax_map[$this->parent_ref_id] as $tax_id) {
         $tax_exp = new ilTaxonomyExplorerGUI($a_parent_gui, null, $tax_id, null, null);
         $tax_exp->setSkipRootNode(true);
         $tax_exp->setOnClick("il.Classification.toggle({tax_node: '{NODE_CHILD}'});");
         if (is_array($this->selection)) {
             foreach ($this->selection as $node_id) {
                 $tax_exp->setPathOpen($node_id);
                 $tax_exp->setNodeSelected($node_id);
             }
         }
         if (!$tax_exp->handleCommand()) {
             $a_html[] = array("title" => ilObject::_lookupTitle($tax_id), "html" => $tax_exp->getHTML());
         }
     }
 }
 /**
  * list questions of question pool
  */
 function questionsObject()
 {
     global $rbacsystem, $ilUser, $ilCtrl, $ilDB, $lng, $ilPluginAdmin;
     if (get_class($this->object) == "ilObjTest") {
         if ($_GET["calling_test"] > 0) {
             $ref_id = $_GET["calling_test"];
             $q_id = $_GET["q_id"];
             if ($_REQUEST['test_express_mode']) {
                 if ($q_id) {
                     ilUtil::redirect("ilias.php?ref_id=" . $ref_id . "&q_id=" . $q_id . "&test_express_mode=1&cmd=showPage&cmdClass=iltestexpresspageobjectgui&baseClass=ilObjTestGUI");
                 } else {
                     ilUtil::redirect("ilias.php?ref_id=" . $ref_id . "&test_express_mode=1&cmd=showPage&cmdClass=iltestexpresspageobjectgui&baseClass=ilObjTestGUI");
                 }
             } else {
                 ilUtil::redirect("ilias.php?baseClass=ilObjTestGUI&ref_id=" . $ref_id . "&cmd=questions");
             }
         }
     } else {
         if (isset($_GET['calling_consumer']) && (int) $_GET['calling_consumer']) {
             $ref_id = (int) $_GET['calling_consumer'];
             $consumer = ilObjectFactory::getInstanceByRefId($ref_id);
             if ($consumer instanceof ilQuestionEditingFormConsumer) {
                 ilUtil::redirect($consumer->getQuestionEditingFormBackTarget($_GET['consumer_context']));
             }
             require_once 'Services/Link/classes/class.ilLink.php';
             ilUtil::redirect(ilLink::_getLink($ref_id));
         }
     }
     $this->object->purgeQuestions();
     // reset test_id SESSION variable
     $_SESSION["test_id"] = "";
     require_once 'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
     $taxIds = ilObjTaxonomy::getUsageOfObject($this->object->getId());
     $table_gui = $this->buildQuestionBrowserTableGUI($taxIds);
     $table_gui->setPreventDoubleSubmission(false);
     if ($rbacsystem->checkAccess('write', $_GET['ref_id'])) {
         $toolbar = new ilToolbarGUI();
         $toolbar->addButton($this->lng->txt("ass_create_question"), $this->ctrl->getLinkTarget($this, 'createQuestionForm'));
         $this->tpl->setContent($this->ctrl->getHTML($toolbar) . $this->ctrl->getHTML($table_gui));
     } else {
         $this->tpl->setContent($this->ctrl->getHTML($table_gui));
     }
     if ($this->object->getShowTaxonomies()) {
         $this->lng->loadLanguageModule('tax');
         require_once 'Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php';
         foreach ($taxIds as $taxId) {
             if ($taxId != $this->object->getNavTaxonomyId()) {
                 continue;
             }
             $taxExp = new ilTaxonomyExplorerGUI($this, 'showNavTaxonomy', $taxId, 'ilobjquestionpoolgui', 'questions');
             if (!$taxExp->handleCommand()) {
                 $this->tpl->setLeftContent($taxExp->getHTML() . " ");
             }
             break;
         }
     }
 }
 /**
  * Show taxonomy
  *
  * @param
  * @return
  */
 function showTaxonomy()
 {
     global $tpl, $lng;
     if (!$this->offlineMode() && $this->glossary->getShowTaxonomy()) {
         include_once "./Services/Taxonomy/classes/class.ilObjTaxonomy.php";
         $tax_ids = ilObjTaxonomy::getUsageOfObject($this->glossary->getId());
         if (count($tax_ids) > 0) {
             include_once "./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php";
             $tax_exp = new ilTaxonomyExplorerGUI($this, "showTaxonomy", $tax_ids[0], "ilglossarypresentationgui", "listTerms");
             if (!$tax_exp->handleCommand()) {
                 //$tpl->setLeftNavContent($tax_exp->getHTML());
                 $tpl->setLeftContent($tax_exp->getHTML() . " ");
             }
             return;
             include_once "./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php";
             $tpl->setLeftNavContent(ilObjTaxonomyGUI::getTreeHTML($tax_ids[0], "ilglossarypresentationgui", "listTerms", $lng->txt("cont_all_topics")));
         }
     }
 }
 /**
  * Move items
  */
 function moveItems()
 {
     global $tpl, $ilCtrl, $lng, $ilToolbar, $ilHelp;
     $this->setTabs("list_items");
     $ilHelp->setSubScreenId("move_items");
     $ilToolbar->addButton($lng->txt("cancel"), $ilCtrl->getLinkTarget($this, "listNodes"));
     ilUtil::sendInfo($lng->txt("tax_please_select_target"));
     if (is_array($_POST["id"])) {
         $ilCtrl->setParameter($this, "move_ids", implode($_POST["id"], ","));
         global $ilUser, $tpl, $ilCtrl, $lng;
         include_once "./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php";
         $tax_exp = new ilTaxonomyExplorerGUI($this, "moveItems", $this->getCurrentTaxonomy()->getId(), "ilobjtaxonomygui", "pasteItems");
         if (!$tax_exp->handleCommand()) {
             //$tpl->setLeftNavContent($tax_exp->getHTML());
             $tpl->setContent($tax_exp->getHTML() . " ");
         }
     }
 }
 /**
  * Show taxonomy
  *
  * @param
  * @return
  */
 function showTaxonomy()
 {
     global $tpl, $lng;
     include_once "./Services/Taxonomy/classes/class.ilObjTaxonomy.php";
     $tax_ids = ilObjTaxonomy::getUsageOfObject($this->object->getId());
     if (count($tax_ids) > 0) {
         include_once "./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php";
         $tax_exp = new ilTaxonomyExplorerGUI($this, "showTaxonomy", $tax_ids[0], "ilobjglossarygui", "listTerms");
         if (!$tax_exp->handleCommand()) {
             //$tpl->setLeftNavContent($tax_exp->getHTML());
             $tpl->setLeftNavContent($tax_exp->getHTML() . " ");
         }
     }
 }