/**
  * edit question
  */
 function edit()
 {
     global $ilCtrl, $ilTabs;
     $ilTabs->setTabActive('question');
     if ($this->getSelfAssessmentMode()) {
         $q_ref = $this->content_obj->getQuestionReference();
         if ($q_ref != "") {
             $inst_id = ilInternalLink::_extractInstOfTarget($q_ref);
             if (!($inst_id > 0)) {
                 $q_id = ilInternalLink::_extractObjIdOfTarget($q_ref);
             }
         }
         $q_type = $_POST["q_type"] != "" ? $_POST["q_type"] : $_GET["q_type"];
         $ilCtrl->setParameter($this, "q_type", $q_type);
         if ($q_id == "" && $q_type == "") {
             return $this->insert("edit_empty");
         }
         include_once "./Modules/TestQuestionPool/classes/class.ilQuestionEditGUI.php";
         include_once "./Modules/TestQuestionPool/classes/class.assQuestion.php";
         include_once "./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php";
         $ilCtrl->setCmdClass("ilquestioneditgui");
         $ilCtrl->setCmd("editQuestion");
         $edit_gui = new ilQuestionEditGUI();
         // create question first-hand (needed for uploads)
         if ($q_id < 1 && $q_type) {
             include_once "./Modules/TestQuestionPool/classes/class.assQuestionGUI.php";
             $q_gui =& assQuestionGUI::_getQuestionGUI($q_type);
             $q_id = $q_gui->object->createNewQuestion(true);
             unset($q_gui);
             if ($_GET["qpool_ref_id"] > 0) {
                 $edit_gui->setPoolRefId($_GET["qpool_ref_id"]);
                 $edit_gui->setPoolRefId(0);
             }
             //set default tries
             $edit_gui->setDefaultNrOfTries(ilObjSAHSLearningModule::_getTries($this->scormlmid));
         }
         $edit_gui->setPoolObjId(0);
         $edit_gui->setQuestionId($q_id);
         $edit_gui->setQuestionType($q_type);
         $edit_gui->setSelfAssessmentEditingMode(true);
         $edit_gui->setPageConfig($this->getPageConfig());
         $ret = $ilCtrl->forwardCommand($edit_gui);
         $this->tpl->setContent($ret);
         return $ret;
     } else {
         require_once "./Modules/TestQuestionPool/classes/class.assQuestionGUI.php";
         $q_gui =& assQuestionGUI::_getQuestionGUI("", $_GET["q_id"]);
         $this->ctrl->redirectByClass(array("ilobjquestionpoolgui", get_class($q_gui)), "editQuestion");
     }
 }