4include_once 
"./Services/Object/classes/class.ilObjectGUI.php";
 
    5include_once 
"./Modules/LearningModule/classes/class.ilObjContentObject.php";
 
    6include_once(
"./Modules/LearningModule/classes/class.ilLMPageObjectGUI.php");
 
    7include_once(
"./Modules/LearningModule/classes/class.ilStructureObjectGUI.php");
 
    8require_once 
'Services/LinkChecker/interfaces/interface.ilLinkCheckerGUIRowHandling.php';
 
   65    public function __construct($a_data, $a_id = 0, $a_call_by_reference = 
true, $a_prepare_output = 
false)
 
   69        $this->lng = 
$DIC->language();
 
   70        $this->access = 
$DIC->access();
 
   71        $this->tabs = 
$DIC->tabs();
 
   72        $this->
error = $DIC[
"ilErr"];
 
   74        $this->
user = $DIC->user();
 
   75        $this->tpl = 
$DIC[
"tpl"];
 
   76        $this->toolbar = 
$DIC->toolbar();
 
   77        $this->rbacsystem = 
$DIC->rbac()->system();
 
   78        $this->tree = 
$DIC->repositoryTree();
 
   79        $this->plugin_admin = 
$DIC[
"ilPluginAdmin"];
 
   80        $this->help = 
$DIC[
"ilHelp"];
 
   81        $this->locator = 
$DIC[
"ilLocator"];
 
   82        $this->db = 
$DIC->database();
 
   83        $this->log = 
$DIC[
"ilLog"];
 
   88        $lng->loadLanguageModule(
"content");
 
   89        $lng->loadLanguageModule(
"obj");
 
   90        parent::__construct($a_data, $a_id, $a_call_by_reference, 
false);
 
  104        if ($this->ctrl->getRedirectSource() == 
"ilinternallinkgui") {
 
  109        if ($this->ctrl->getCmdClass() == 
"ilinternallinkgui") {
 
  110            $this->ctrl->setReturn($this, 
"explorer");
 
  114        $next_class = $this->ctrl->getNextClass($this);
 
  118        if (
$_GET[
"to_props"] == 1) {
 
  119            $cmd = $this->ctrl->getCmd(
"properties");
 
  121            $cmd = $this->ctrl->getCmd(
"chapters");
 
  126        switch ($next_class) {
 
  127            case 'illtiproviderobjectsettinggui':
 
  130                $ilTabs->setTabActive(
"settings");
 
  134                $lti_gui->setCustomRolesForSelection(
$GLOBALS[
'DIC']->rbac()->review()->getLocalRoles($this->object->getRefId()));
 
  135                $lti_gui->offerLTIRolesForSelection(
true);
 
  136                $this->ctrl->forwardCommand($lti_gui);
 
  141            case "illearningprogressgui":
 
  144                include_once 
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
 
  145                $this->
setTabs(
"learning_progress");
 
  148                $this->ctrl->forwardCommand($new_gui);
 
  152            case 'ilobjectmetadatagui':
 
  153                if (!$ilAccess->checkAccess(
'write', 
'', $this->object->getRefId())) {
 
  154                    $ilErr->raiseError($this->lng->txt(
'permission_denied'), 
$ilErr->WARNING);
 
  161                include_once 
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
 
  163                $md_gui->addMDObserver($this->
object, 
'MDUpdateListener', 
'Educational'); 
 
  164                $md_gui->addMDObserver($this->
object, 
'MDUpdateListener', 
'General');
 
  165                $this->ctrl->forwardCommand($md_gui);
 
  168            case "ilobjstylesheetgui":
 
  170                include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheetGUI.php");
 
  171                $this->ctrl->setReturn($this, 
"editStyleProperties");
 
  172                $style_gui = 
new ilObjStyleSheetGUI(
"", $this->object->getStyleSheetId(), 
false, 
false);
 
  173                $style_gui->omitLocator();
 
  174                if ($cmd == 
"create" || 
$_GET[
"new_type"]==
"sty") {
 
  175                    $style_gui->setCreationMode(
true);
 
  177                $ret = $this->ctrl->forwardCommand($style_gui);
 
  180                if ($cmd == 
"save" || $cmd == 
"copyStyle" || $cmd == 
"importStyle") {
 
  182                    $this->
object->setStyleSheetId($style_id);
 
  183                    $this->
object->update();
 
  184                    $this->ctrl->redirectByClass(
"ilobjstylesheetgui", 
"edit");
 
  188            case "illmpageobjectgui":
 
  190                $ilTabs->setBackTarget(
 
  191                    $lng->txt(
"learning module"),
 
  192                    $ilCtrl->getLinkTarget($this, 
"chapters")
 
  194                $this->ctrl->saveParameter($this, array(
"obj_id"));
 
  196                $this->ctrl->setReturn($this, 
"chapters");
 
  199                if (
$_GET[
"obj_id"] != 
"") {
 
  201                    $pg_gui->setLMPageObject($obj);
 
  204                $ret = $this->ctrl->forwardCommand($pg_gui);
 
  205                if ($cmd == 
"save" || $cmd == 
"cancel") {
 
  210            case "ilstructureobjectgui":
 
  211                $ilTabs->setBackTarget(
 
  212                    $lng->txt(
"learning module"),
 
  213                    $ilCtrl->getLinkTarget($this, 
"chapters")
 
  216                $this->ctrl->saveParameter($this, array(
"obj_id"));
 
  218                $this->ctrl->setReturn($this, 
"chapters");
 
  220                if (
$_GET[
"obj_id"] != 
"") {
 
  222                    $st_gui->setStructureObject($obj);
 
  225                $ret = $this->ctrl->forwardCommand($st_gui);
 
  226                if ($cmd == 
"save" || $cmd == 
"cancel") {
 
  227                    if (
$_GET[
"obj_id"] == 
"") {
 
  228                        $this->ctrl->redirect($this, 
"chapters");
 
  230                        $this->ctrl->setCmd(
"subchap");
 
  236            case 'ilpermissiongui':
 
  237                if (strtolower(
$_GET[
"baseClass"]) == 
"iladministrationgui") {
 
  244                include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
 
  246                $ret = $this->ctrl->forwardCommand($perm_gui);
 
  250            case 'ilinfoscreengui':
 
  254                include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
 
  256                $info->enablePrivateNotes();
 
  257                $info->enableLearningProgress();
 
  260                if ($ilAccess->checkAccess(
"write", 
"", 
$_GET[
"ref_id"])) {
 
  261                    $info->enableNewsEditing();
 
  262                    $info->setBlockProperty(
"news", 
"settings", 
true);
 
  266                $info->addMetaDataSections(
 
  267                    $this->object->getId(),
 
  269                    $this->object->getType()
 
  272                $ret = $this->ctrl->forwardCommand(
$info);
 
  280                include_once(
"./Services/Export/classes/class.ilExportGUI.php");
 
  284                $exp_gui->addFormat(
"xml");
 
  285                include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
 
  287                if ($ot->getContentActivated()) {
 
  288                    $exp_gui->addFormat(
"xml_master", 
"XML (" . 
$lng->txt(
"cont_master_language_only") . 
")", $this, 
"export");
 
  289                    $exp_gui->addFormat(
"xml_masternomedia", 
"XML (" . 
$lng->txt(
"cont_master_language_only_no_media") . 
")", $this, 
"export");
 
  291                    $lng->loadLanguageModule(
"meta");
 
  292                    $langs = $ot->getLanguages();
 
  293                    foreach ($langs as 
$l => $ldata) {
 
  294                        $exp_gui->addFormat(
"html_" . 
$l, 
"HTML (" . 
$lng->txt(
"meta_l_" . 
$l) . 
")", $this, 
"exportHTML");
 
  296                    $exp_gui->addFormat(
"html_all", 
"HTML (" . 
$lng->txt(
"cont_all_languages") . 
")", $this, 
"exportHTML");
 
  298                    $exp_gui->addFormat(
"html", 
"", $this, 
"exportHTML");
 
  301                $exp_gui->addFormat(
"scorm", 
"", $this, 
"exportSCORM");
 
  302                $exp_gui->addCustomColumn(
 
  303                    $lng->txt(
"cont_public_access"),
 
  305                    "getPublicAccessColValue" 
  307                $exp_gui->addCustomMultiCommand(
 
  308                    $lng->txt(
"cont_public_access"),
 
  312                $ret = $this->ctrl->forwardCommand($exp_gui);
 
  315            case 'ilobjecttranslationgui':
 
  323                include_once(
"./Services/Object/classes/class.ilObjectTranslationGUI.php");
 
  325                $transgui->setTitleDescrOnlyMode(
false);
 
  326                $this->ctrl->forwardCommand($transgui);
 
  330            case "ilcommonactiondispatchergui":
 
  331                include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
 
  333                $this->ctrl->forwardCommand($gui);
 
  336            case 'ilobjectcopygui':
 
  338                include_once 
'./Services/Object/classes/class.ilObjectCopyGUI.php';
 
  341                $this->ctrl->forwardCommand($cp);
 
  355            case "ilmobmultisrtuploadgui":
 
  360                include_once(
"./Services/MediaObjects/classes/class.ilMobMultiSrtUploadGUI.php");
 
  361                include_once(
"./Modules/LearningModule/classes/class.ilLMMultiSrt.php");
 
  363                $this->ctrl->forwardCommand($gui);
 
  366            case "illmimportgui":
 
  371                include_once(
"./Modules/LearningModule/classes/class.ilLMImportGUI.php");
 
  373                $this->ctrl->forwardCommand($gui);
 
  376            case "illmeditshorttitlesgui":
 
  381                include_once(
"./Modules/LearningModule/classes/class.ilLMEditShortTitlesGUI.php");
 
  383                $this->ctrl->forwardCommand($gui);
 
  387                $new_type = 
$_POST[
"new_type"]
 
  392                if ($cmd == 
"create" &&
 
  393                    !in_array($new_type, array(
"lm"))) {
 
  398                            $this->ctrl->setCmdClass(
"ilLMPageObjectGUI");
 
  404                            $this->ctrl->setCmdClass(
"ilStructureObjectGUI");
 
  411                        in_array($new_type, array(
"lm"))) {
 
  417                        $ret = $this->$cmd();
 
  421                        $ret = $this->$cmd();
 
  431        return array(
"ilLMPageObjectGUI", 
"ilStructureObjectGUI",
"ilObjStyleSheetGUI");
 
  441        $lng->loadLanguageModule(
"style");
 
  449        if ($this->object->getType() == 
"lm") {
 
  451            include_once 
'Modules/LearningModule/classes/class.ilECSLearningModuleSettings.php';
 
  453            $ecs->addSettingsToForm($this->form, 
'lm');
 
  456        $this->tpl->setContent($this->form->getHTML());
 
  468        include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
 
  476        $ti->setRequired(
true);
 
  477        $this->form->addItem($ti);
 
  484        $this->form->addItem($ta);
 
  486        $lng->loadLanguageModule(
"rep");
 
  488        $section->setTitle($this->lng->txt(
'rep_activation_availability'));
 
  493        $this->form->addItem($online);
 
  497        $section->setTitle($this->lng->txt(
'cont_presentation'));
 
  506        $lpp->setInfo($this->lng->txt(
"cont_layout_per_page_info"));
 
  507        $this->form->addItem($lpp);
 
  511        $option = array(
"st_title" => $this->lng->txt(
"cont_st_title"),
 
  512            "pg_title" => $this->lng->txt(
"cont_pg_title"),
 
  513            "none" => $this->lng->txt(
"cont_none"));
 
  514        $page_header->setOptions($option);
 
  515        $this->form->addItem($page_header);
 
  519        $this->form->addItem($chap_num);
 
  523        $option = array(
"chapters" => $this->lng->txt(
"cont_chapters_only"),
 
  524            "pages" => $this->lng->txt(
"cont_chapters_and_pages"));
 
  525        $toc_mode->setOptions($option);
 
  526        $this->form->addItem($toc_mode);
 
  536        $progr_icons->setInfo($this->lng->txt(
"cont_progress_icons_info"));
 
  537        $this->form->addItem($progr_icons);
 
  541        $section->setTitle($this->lng->txt(
'cont_self_assessment'));
 
  547        $op1 = 
new ilRadioOption(
$lng->txt(
"cont_tries_reset_on_visit"), 0, 
$lng->txt(
"cont_tries_reset_on_visit_info"));
 
  548        $radg->addOption($op1);
 
  550        $radg->addOption($op2);
 
  551        $this->form->addItem($radg);
 
  555        $qfeed->setInfo($this->lng->txt(
"cont_restrict_forw_nav_info"));
 
  556        $this->form->addItem($qfeed);
 
  560        $not->setInfo($this->lng->txt(
"cont_notify_on_blocked_users_info"));
 
  561        $qfeed->addSubItem($not);
 
  565        $qfeed->setInfo($this->lng->txt(
"cont_disable_def_feedback_info"));
 
  566        $this->form->addItem($qfeed);
 
  570        $section->setTitle($this->lng->txt(
'obj_features'));
 
  575            $this->lng->loadLanguageModule(
"notes");
 
  577            $pub_nodes->setInfo($this->lng->txt(
"cont_lm_comments_desc"));
 
  578            $this->form->addItem($pub_nodes);
 
  583        $com->setInfo($this->lng->txt(
"enable_hist_user_comments_desc"));
 
  584        $this->form->addItem($com);
 
  587        $this->lng->loadLanguageModule(
'rating');
 
  589        $rate->setInfo($this->lng->txt(
'rating_activate_rating_info'));
 
  590        $this->form->addItem($rate);
 
  591        $ratep = 
new ilCheckboxInputGUI($this->lng->txt(
'lm_activate_rating'), 
'rating_pages');
 
  592        $this->form->addItem($ratep);
 
  594        $this->form->setTitle(
$lng->txt(
"cont_lm_properties"));
 
  595        $this->form->addCommandButton(
"saveProperties", 
$lng->txt(
"save"));
 
  596        $this->form->setFormAction(
$ilCtrl->getFormAction($this));
 
  608        $title = $this->
object->getTitle();
 
  610        include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
 
  612        if ($ot->getContentActivated()) {
 
  613            $title = $ot->getDefaultTitle();
 
  617        $values[
"title"] = 
$title;
 
  619        if ($this->object->getOnline()) {
 
  620            $values[
"cobj_online"] = 
true;
 
  622        $values[
"lm_layout"] = $this->
object->getLayout();
 
  623        $values[
"lm_pg_header"] = $this->
object->getPageHeader();
 
  624        if ($this->object->isActiveNumbering()) {
 
  625            $values[
"cobj_act_number"] = 
true;
 
  627        $values[
"toc_mode"] = $this->
object->getTOCMode();
 
  628        if ($this->object->publicNotes()) {
 
  629            $values[
"cobj_pub_notes"] = 
true;
 
  631        if ($this->object->cleanFrames()) {
 
  632            $values[
"cobj_clean_frames"] = 
true;
 
  634        if ($this->object->isActiveHistoryUserComments()) {
 
  635            $values[
"cobj_user_comments"] = 
true;
 
  637        $values[
"layout_per_page"] = $this->
object->getLayoutPerPage();
 
  638        $values[
"rating"] = $this->
object->hasRating();
 
  639        $values[
"rating_pages"] = $this->
object->hasRatingPages();
 
  640        $values[
"disable_def_feedback"] = $this->
object->getDisableDefaultFeedback();
 
  641        $values[
"progr_icons"] = $this->
object->getProgressIcons();
 
  642        $values[
"store_tries"] = $this->
object->getStoreTries();
 
  643        $values[
"restrict_forw_nav"] = $this->
object->getRestrictForwardNavigation();
 
  645        include_once 
"./Services/Notification/classes/class.ilNotification.php";
 
  649            $this->object->getId()
 
  652        $this->form->setValuesByArray($values);
 
  666        if ($this->form->checkInput()) {
 
  667            include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
 
  669            if ($ot->getContentActivated()) {
 
  670                $ot->setDefaultTitle(
$_POST[
'title']);
 
  671                $ot->setDefaultDescription(
$_POST[
'description']);
 
  675            $this->
object->setTitle(
$_POST[
'title']);
 
  676            $this->
object->setDescription(
$_POST[
'description']);
 
  677            $this->
object->setLayout(
$_POST[
"lm_layout"]);
 
  678            $this->
object->setPageHeader(
$_POST[
"lm_pg_header"]);
 
  679            $this->
object->setTOCMode(
$_POST[
"toc_mode"]);
 
  680            $this->
object->setOnline(
$_POST[
"cobj_online"]);
 
  681            $this->
object->setActiveNumbering(
$_POST[
"cobj_act_number"]);
 
  682            $this->
object->setCleanFrames(
$_POST[
"cobj_clean_frames"]);
 
  684                $this->
object->setPublicNotes(
$_POST[
"cobj_pub_notes"]);
 
  686            $this->
object->setHistoryUserComments(
$_POST[
"cobj_user_comments"]);
 
  687            $this->
object->setLayoutPerPage(
$_POST[
"layout_per_page"]);
 
  688            $this->
object->setRating(
$_POST[
"rating"]);
 
  689            $this->
object->setRatingPages(
$_POST[
"rating_pages"]);
 
  690            $this->
object->setDisableDefaultFeedback((
int) 
$_POST[
"disable_def_feedback"]);
 
  691            $this->
object->setProgressIcons((
int) $_POST[
"progr_icons"]);
 
  694            if (
$_POST[
"restrict_forw_nav"] && !
$_POST[
"store_tries"]) {
 
  695                $_POST[
"store_tries"] = 1;
 
  696                $add_info = 
"</br>" . 
$lng->txt(
"cont_automatically_set_store_tries");
 
  697                $add_info = str_replace(
"$1", 
$lng->txt(
"cont_tries_store"), $add_info);
 
  698                $add_info = str_replace(
"$2", 
$lng->txt(
"cont_restrict_forw_nav"), $add_info);
 
  701            $this->
object->setStoreTries((
int) $_POST[
"store_tries"]);
 
  702            $this->
object->setRestrictForwardNavigation((
int) $_POST[
"restrict_forw_nav"]);
 
  703            $this->
object->updateProperties();
 
  704            $this->
object->update();
 
  706            include_once 
"./Services/Notification/classes/class.ilNotification.php";
 
  710                $this->object->getId(),
 
  711                (
bool) $this->form->getInput(
"notification_blocked_users")
 
  715            if ($this->object->getType() == 
'lm') {
 
  717                include_once 
'Modules/LearningModule/classes/class.ilECSLearningModuleSettings.php';
 
  719                if ($ecs->handleSettingsUpdate()) {
 
  729            $this->ctrl->redirect($this, 
"properties");
 
  731            $lng->loadLanguageModule(
"style");
 
  735            $this->form->setValuesByPost();
 
  736            $this->tpl->setContent($this->form->getHTML());
 
  748        $tpl->setContent($this->form->getHTML());
 
  761        $lng->loadLanguageModule(
"style");
 
  763        $ilTabs->setTabActive(
"settings");
 
  766        include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
 
  769        $fixed_style = 
$ilSetting->get(
"fixed_content_style_id");
 
  770        $def_style = 
$ilSetting->get(
"default_content_style_id");
 
  771        $style_id = $this->
object->getStyleSheetId();
 
  773        if ($fixed_style > 0) {
 
  776                $this->lng->txt(
"global_fixed") . 
")");
 
  777            $this->form->addItem($st);
 
  785            if ($def_style > 0) {
 
  788                $st_styles[0] = $this->lng->txt(
"default");
 
  797                    $this->form->addItem($st);
 
  802                    $this->form->addCommandButton(
 
  804                        $lng->txt(
"cont_edit_style")
 
  806                    $this->form->addCommandButton(
 
  808                        $lng->txt(
"cont_delete_style")
 
  823                $style_sel->setOptions($st_styles);
 
  824                $style_sel->setValue($style_id);
 
  825                $this->form->addItem($style_sel);
 
  827                $this->form->addCommandButton(
 
  831                $this->form->addCommandButton(
 
  833                    $lng->txt(
"sty_create_ind_style")
 
  837        $this->form->setTitle(
$lng->txt(
"cont_style"));
 
  838        $this->form->setFormAction(
$ilCtrl->getFormAction($this));
 
  848        $ilCtrl->redirectByClass(
"ilobjstylesheetgui", 
"create");
 
  858        $ilCtrl->redirectByClass(
"ilobjstylesheetgui", 
"edit");
 
  868        $ilCtrl->redirectByClass(
"ilobjstylesheetgui", 
"delete");
 
  878        if (
$ilSetting->get(
"fixed_content_style_id") <= 0 &&
 
  880            || $this->object->getStyleSheetId() == 0)) {
 
  882            $this->
object->update();
 
  885        $this->ctrl->redirect($this, 
"editStyleProperties");
 
  896        include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
  901        $menu->setChecked($this->object->isActiveLMMenu());
 
  902        $form->addItem($menu);
 
  906        $toc->setChecked($this->object->isActiveTOC());
 
  907        $form->addItem($toc);
 
  910        $print = 
new ilCheckboxInputGUI($this->lng->txt(
"cont_print_view"), 
"cobj_act_print");
 
  911        $print->setChecked($this->object->isActivePrintView());
 
  912        $form->addItem($print);
 
  915        $glo = 
new ilCheckboxInputGUI($this->lng->txt(
"cont_print_view_pre_glo"), 
"cobj_act_print_prev_glo");
 
  916        $glo->setChecked($this->object->isActivePreventGlossaryAppendix());
 
  917        $print->addSubItem($glo);
 
  920        $hhfp = 
new ilCheckboxInputGUI($this->lng->txt(
"cont_hide_head_foot_print"), 
"hide_head_foot_print");
 
  921        $hhfp->setChecked($this->object->getHideHeaderFooterPrint());
 
  922        $print->addSubItem($hhfp);
 
  925        $no_download_file_available =
 
  926            " " . 
$lng->txt(
"cont_no_download_file_available") .
 
  927            " <a href='" . 
$ilCtrl->getLinkTargetByClass(
"ilexportgui", 
"") . 
"'>" . 
$lng->txt(
"change") . 
"</a>";
 
  928        $types = array(
"xml", 
"html", 
"scorm");
 
  929        foreach ($types as 
$type) {
 
  930            if ($this->object->getPublicExportFile(
$type) != 
"") {
 
  931                if (is_file($this->object->getExportDirectory(
$type) . 
"/" .
 
  932                    $this->object->getPublicExportFile(
$type))) {
 
  933                    $no_download_file_available = 
"";
 
  937        $dl = 
new ilCheckboxInputGUI($this->lng->txt(
"cont_downloads"), 
"cobj_act_downloads");
 
  938        $dl->setInfo($this->lng->txt(
"cont_downloads_desc") . $no_download_file_available);
 
  939        $dl->setChecked($this->object->isActiveDownloads());
 
  943        $pdl = 
new ilCheckboxInputGUI($this->lng->txt(
"cont_downloads_public_desc"), 
"cobj_act_downloads_public");
 
  944        $pdl->setChecked($this->object->isActiveDownloadsPublic());
 
  945        $dl->addSubItem($pdl);
 
  947        $form->addCommandButton(
"saveMenuProperties", 
$lng->txt(
"save"));
 
  949        $form->setTitle(
$lng->txt(
"cont_lm_menu"));
 
  966        $lng->loadLanguageModule(
"style");
 
  968        $ilTabs->setTabActive(
"settings");
 
  971        $ilToolbar->setFormAction(
$ilCtrl->getFormAction($this));
 
  972        $ilToolbar->addFormButton($this->lng->txt(
"add_menu_entry"), 
"addMenuEntry");
 
  973        $ilToolbar->setCloseFormTag(
false);
 
  976        $form->setOpenTag(
false);
 
  977        $form->setCloseTag(
false);
 
  980        $entries = $this->lmme_obj->getMenuEntries();
 
  981        include_once(
"./Modules/LearningModule/classes/class.ilLMMenuItemsTableGUI.php");
 
  983        $table->setOpenFormTag(
false);
 
  993        $this->
object->setActiveLMMenu((
int) 
$_POST[
"cobj_act_lm_menu"]);
 
  994        $this->
object->setActiveTOC((
int) $_POST[
"cobj_act_toc"]);
 
  995        $this->
object->setActivePrintView((
int) $_POST[
"cobj_act_print"]);
 
  996        $this->
object->setActivePreventGlossaryAppendix((
int) $_POST[
"cobj_act_print_prev_glo"]);
 
  997        $this->
object->setHideHeaderFooterPrint((
int) $_POST[
"hide_head_foot_print"]);
 
  998        $this->
object->setActiveDownloads((
int) $_POST[
"cobj_act_downloads"]);
 
  999        $this->
object->setActiveDownloadsPublic((
int) $_POST[
"cobj_act_downloads_public"]);
 
 1000        $this->
object->updateProperties();
 
 1004        $this->lmme_obj->updateActiveStatus(
$_POST[
"menu_entries"]);
 
 1007        $this->ctrl->redirect($this, 
"editMenuProperties");
 
 1017        $gui_class = 
"ilobjlearningmodulegui";
 
 1019        $ilCtrl->setParameterByClass($gui_class, 
"active_node", 
$_GET[
"active_node"]);
 
 1021        $this->tpl = 
new ilTemplate(
"tpl.main.html", 
true, 
true);
 
 1028        $this->tpl->addBlockFile(
"CONTENT", 
"content", 
"tpl.explorer.html");
 
 1031        require_once(
"./Modules/LearningModule/classes/class.ilLMEditorExplorer.php");
 
 1032        $exp = 
new ilLMEditorExplorer(
 
 1033            $this->ctrl->getLinkTarget($this, 
"view"),
 
 1038        $exp->setTargetGet(
"obj_id");
 
 1039        $exp->setExpandTarget($this->ctrl->getLinkTarget($this, 
"explorer"));
 
 1041        if (
$_GET[
"lmmovecopy"] == 
"1") {
 
 1046        if (
$_GET[
"lmexpand"] == 
"") {
 
 1047            $mtree = 
new ilTree($this->object->getId());
 
 1048            $mtree->setTableNames(
'lm_tree', 
'lm_data');
 
 1049            $mtree->setTreeTablePK(
"lm_id");
 
 1050            $expanded = $mtree->readRootId();
 
 1052            $expanded = 
$_GET[
"lmexpand"];
 
 1054        if (
$_GET[
"active_node"] != 
"") {
 
 1055            $path = $this->lm_tree->getPathId(
$_GET[
"active_node"]);
 
 1056            $exp->setForceOpenPath(
$path);
 
 1058            $exp->highlightNode(
$_GET[
"active_node"]);
 
 1060        $exp->setExpand($expanded);
 
 1072        include_once(
"./Services/COPage/classes/class.ilPageEditorGUI.php");
 
 1091        $this->tpl->setCurrentBlock(
"content");
 
 1092        $this->tpl->setVariable(
"TXT_EXPLORER_HEADER", $this->lng->txt(
"cont_chap_and_pages"));
 
 1093        $this->tpl->setVariable(
"EXP_REFRESH", $this->lng->txt(
"refresh"));
 
 1094        $this->tpl->setVariable(
"EXPLORER", 
$output);
 
 1095        $this->ctrl->setParameter($this, 
"lmexpand", 
$_GET[
"lmexpand"]);
 
 1096        $this->tpl->setVariable(
"ACTION", $this->ctrl->getLinkTarget($this, 
"explorer"));
 
 1097        $this->tpl->parseCurrentBlock();
 
 1098        $this->tpl->show(
false);
 
 1107        include_once 
"./Services/COPage/classes/class.ilWysiwygUtil.php";
 
 1108        $popup = 
new ilWysiwygUtil();
 
 1109        $popup->show(
$_GET[
"ptype"]);
 
 1120        $this->
object->executeDragDrop(
 
 1121            $_POST[
"il_hform_source_id"],
 
 1122            $_POST[
"il_hform_target_id"],
 
 1124            $_POST[
"il_hform_as_subitem"]
 
 1126        $ilCtrl->redirect($this, 
"chapters");
 
 1139        $a_new_object->setCleanFrames(
true);
 
 1143        $a_new_object->createLMTree();
 
 1146        $a_new_object->addFirstChapterAndPage();
 
 1151            "&baseClass=ilLMEditorGUI");
 
 1162        include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
 1166        $this->ctrl->setParameter($this, 
"new_type", $new_type);
 
 1169        $form->setTableWidth(
"600px");
 
 1174        $fi->setSuffixes(array(
"zip"));
 
 1175        $fi->setRequired(
true);
 
 1177        $form->addItem($fi);
 
 1181        $cb->setInfo($this->lng->txt(
""));
 
 1182        $form->addItem($cb);
 
 1184        $form->addCommandButton(
"importFile", 
$lng->txt(
"import"));
 
 1185        $form->addCommandButton(
"cancel", 
$lng->txt(
"cancel"));
 
 1187        $form->setTitle($this->lng->txt(
"import_" . $new_type));
 
 1231            parent::importFileObject(
null, 
false);
 
 1235            $no_manifest = 
true;
 
 1238            ilUtil::sendFailure($this->lng->txt(
"obj_import_file_error") . 
" <br />" . $e->getMessage());
 
 1239            $form->setValuesByPost();
 
 1244        if (!$no_manifest) {
 
 1250        include_once 
"./Modules/LearningModule/classes/class.ilObjLearningModule.php";
 
 1253            $ilErr->raiseError($this->lng->txt(
"no_create_permission"), 
$ilErr->MESSAGE);
 
 1257        if (
$form->checkInput()) {
 
 1259            include_once(
"./Modules/LearningModule/classes/class.ilObjContentObject.php");
 
 1261            $newObj->setType(
$_GET[
"new_type"]);
 
 1262            $newObj->setTitle($_FILES[
"importfile"][
"name"]);
 
 1263            $newObj->setDescription(
"");
 
 1264            $newObj->create(
true);
 
 1265            $newObj->createReference();
 
 1266            $newObj->putInTree(
$_GET[
"ref_id"]);
 
 1267            $newObj->setPermissions(
$_GET[
"ref_id"]);
 
 1270            $newObj->createLMTree();
 
 1273            $mess =  $newObj->importFromDirectory($this->tmp_import_dir, 
$_POST[
"validate"]);
 
 1283                    "&baseClass=ilLMEditorGUI");
 
 1285                $link = 
'<a href="' . 
"ilias.php?ref_id=" . $newObj->getRefId() .
 
 1286                    "&baseClass=ilLMEditorGUI" . 
'" target="_top">' . $this->lng->txt(
"btn_next") . 
'</a>';
 
 1287                $tpl->setContent(
"<br />" . $link . 
"<br /><br />" . $mess . $link);
 
 1290            $form->setValuesByPost();
 
 1308        $ilCtrl->setParameter($this, 
"backcmd", 
"chapters");
 
 1310        include_once(
"./Modules/LearningModule/classes/class.ilChapterHierarchyFormGUI.php");
 
 1312        $form_gui->setFormAction(
$ilCtrl->getFormAction($this));
 
 1313        $form_gui->setTitle($this->object->getTitle());
 
 1315        $form_gui->setTree($this->lm_tree);
 
 1316        $form_gui->setMaxDepth(0);
 
 1317        $form_gui->setCurrentTopNodeId($this->tree->getRootId());
 
 1318        $form_gui->addMultiCommand(
$lng->txt(
"delete"), 
"delete");
 
 1319        $form_gui->addMultiCommand(
$lng->txt(
"cut"), 
"cutItems");
 
 1320        $form_gui->addMultiCommand(
$lng->txt(
"copy"), 
"copyItems");
 
 1321        if ($this->object->getLayoutPerPage()) {
 
 1322            $form_gui->addMultiCommand(
$lng->txt(
"cont_set_layout"), 
"setPageLayoutInHierarchy");
 
 1325        $form_gui->addCommand(
$lng->txt(
"cont_save_all_titles"), 
"saveAllTitles");
 
 1326        $up_gui = 
"ilobjlearningmodulegui";
 
 1328        $ctpl = 
new ilTemplate(
"tpl.chap_and_pages.html", 
true, 
true, 
"Modules/LearningModule");
 
 1329        $ctpl->setVariable(
"HIERARCHY_FORM", $form_gui->getHTML());
 
 1330        $ilCtrl->setParameter($this, 
"obj_id", 
"");
 
 1334        $this->tpl->setContent($ml_head . $ctpl->get());
 
 1351        include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
 
 1355        if ($ot->getContentActivated()) {
 
 1356            $ilCtrl->setParameter($a_gui_class, 
"lang_switch_mode", $a_mode);
 
 1357            $lng->loadLanguageModule(
"meta");
 
 1360            include_once(
"./Services/COPage/classes/class.ilPageMultiLangGUI.php");
 
 1362            $ml_head = $ml_gui->getMultiLangInfo(
$_GET[
"transl"]);
 
 1365            include_once(
"./Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php");
 
 1367            $list->setListTitle(
$lng->txt(
"actions"));
 
 1368            $list->setId(
"copage_act");
 
 1370            if (!in_array(
$_GET[
"transl"], array(
"", 
"-"))) {
 
 1371                $l = $ot->getMasterLanguage();
 
 1373                    $lng->txt(
"cont_edit_language_version") . 
": " .
 
 1374                    $lng->txt(
"meta_l_" . 
$l),
 
 1376                    $ilCtrl->getLinkTarget($a_gui_class, 
"editMasterLanguage")
 
 1381            foreach ($ot->getLanguages() as $al => 
$lang) {
 
 1382                if (
$_GET[
"transl"] != $al &&
 
 1383                    $al != $ot->getMasterLanguage()) {
 
 1384                    $ilCtrl->setParameter($a_gui_class, 
"totransl", $al);
 
 1386                        $lng->txt(
"cont_edit_language_version") . 
": " .
 
 1387                        $lng->txt(
"meta_l_" . $al),
 
 1389                        $ilCtrl->getLinkTarget($a_gui_class, 
"switchToLanguage")
 
 1391                    $ilCtrl->setParameter($a_gui_class, 
"totransl", 
$_GET[
"totransl"]);
 
 1397                $ml_head = 
'<div class="ilFloatLeft">' . $ml_head . 
'</div><div style="margin: 5px 0;" class="small ilRight">' . 
$list->getHTML() . 
"</div>";
 
 1399            $ilCtrl->setParameter($a_gui_class, 
"lang_switch_mode", 
"");
 
 1420        $ilCtrl->setParameter($this, 
"backcmd", 
"pages");
 
 1421        $ilCtrl->setParameterByClass(
"illmpageobjectgui", 
"new_type", 
"pg");
 
 1422        $ilToolbar->addButton(
 
 1423            $lng->txt(
"pg_add"),
 
 1424            $ilCtrl->getLinkTargetByClass(
"illmpageobjectgui", 
"create")
 
 1426        $ilCtrl->setParameterByClass(
"illmpageobjectgui", 
"new_type", 
"");
 
 1428        include_once(
"./Modules/LearningModule/classes/class.ilLMPagesTableGUI.php");
 
 1430        $tpl->setContent(
$t->getHTML());
 
 1443        include_once(
"./Modules/LearningModule/classes/class.ilLinksTableGUI.php");
 
 1447            $this->object->getId(),
 
 1448            $this->object->getType()
 
 1451        $tpl->setContent($table_gui->getHTML());
 
 1465        $ilToolbar->addButton(
 
 1466            $this->lng->txt(
"cont_fix_tree"),
 
 1467            $this->ctrl->getLinkTarget($this, 
"fixTreeConfirm")
 
 1476        if (is_array(
$_POST[
"id"])) {
 
 1478                include_once(
"./Modules/LearningModule/classes/class.ilLMPage.php");
 
 1484        $this->ctrl->redirect($this, 
"pages");
 
 1495            $ilErr->raiseError($this->lng->txt(
"no_page_in_clipboard"), 
$ilErr->MESSAGE);
 
 1505                == $this->object->getID()) {
 
 1507                $new_page = $lm_page->copy();
 
 1508                $id = $new_page->getId();
 
 1514                $copied_nodes = array();
 
 1515                $new_page = $lm_page->copyToOtherContObject($this->
object, $copied_nodes);
 
 1516                $id = $new_page->getId();
 
 1525                != $this->object->getID()) {
 
 1529                $lm_page->setLMId($this->object->getID());
 
 1531                $page = $lm_page->getPageObject();
 
 1533                $page->setParentId($this->object->getID());
 
 1540        $this->ctrl->redirect($this, 
"pages");
 
 1550        if (!isset(
$_POST[
"id"])) {
 
 1551            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 1558        ilUtil::sendInfo($this->lng->txt(
"cont_selected_items_have_been_copied"), 
true);
 
 1560        $this->ctrl->redirect($this, 
"pages");
 
 1570    public function delete($a_parent_subobj_id = 0)
 
 1574        if (!isset(
$_POST[
"id"])) {
 
 1575            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 1579            $ilErr->raiseError($this->lng->txt(
"cont_select_item"), 
$ilErr->MESSAGE);
 
 1582        if ($a_parent_subobj_id == 0) {
 
 1586        if ($a_parent_subobj_id != 0) {
 
 1587            $this->ctrl->setParameterByClass(
"ilStructureObjectGUI", 
"backcmd", 
$_GET[
"backcmd"]);
 
 1588            $this->ctrl->setParameterByClass(
"ilStructureObjectGUI", 
"obj_id", $a_parent_subobj_id);
 
 1589            $form_action = $this->ctrl->getFormActionByClass(
"ilStructureObjectGUI");
 
 1591            $this->ctrl->setParameter($this, 
"backcmd", 
$_GET[
"backcmd"]);
 
 1592            $form_action = $this->ctrl->getFormAction($this);
 
 1596        include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
 
 1598        $cgui->setFormAction($form_action);
 
 1599        $cgui->setHeaderText($this->lng->txt(
"info_delete_sure"));
 
 1600        $cgui->setCancel($this->lng->txt(
"cancel"), 
"cancelDelete");
 
 1601        $cgui->setConfirm($this->lng->txt(
"confirm"), 
"confirmedDelete");
 
 1607                    " " . $obj->getTitle();
 
 1609                $cgui->addItem(
"id[]", 
$id, $caption);
 
 1613        $this->tpl->setContent($cgui->getHTML());
 
 1621        $this->ctrl->redirect($this, 
$_GET[
"backcmd"]);
 
 1636        $tree->setTableNames(
'lm_tree', 
'lm_data');
 
 1637        $tree->setTreeTablePK(
"lm_id");
 
 1641            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 1648                $node_data = 
$tree->getNodeData(
$id);
 
 1649                if (is_object($obj)) {
 
 1650                    $obj->setLMId($this->object->getId());
 
 1652                    include_once(
"./Services/History/classes/class.ilHistory.php");
 
 1654                        $this->object->getId(),
 
 1655                        "delete_" . $obj->getType(),
 
 1657                        $this->object->getType()
 
 1663                    $tree->deleteTree($node_data);
 
 1669        $this->
object->checkTree();
 
 1674        if ($a_parent_subobj_id == 0) {
 
 1675            $this->ctrl->redirect($this, 
$_GET[
"backcmd"]);
 
 1691        $tmpPath = $this->lm_tree->getPathFull($a_endnode_id, $a_startnode_id);
 
 1694        for (
$i = 1; 
$i < (count($tmpPath) - 1); 
$i++) {
 
 1699            $path .= $tmpPath[
$i][
"title"];
 
 1718        $notoperations = array();
 
 1720        $operations = array();
 
 1724                if (!in_array(
$row[
"name"], $notoperations)) {
 
 1725                    $operations[] = 
$row;
 
 1730        if (count($operations)>0) {
 
 1731            foreach ($operations as $val) {
 
 1732                $this->tpl->setCurrentBlock(
"operation_btn");
 
 1733                $this->tpl->setVariable(
"BTN_NAME", $val[
"name"]);
 
 1734                $this->tpl->setVariable(
"BTN_VALUE", $this->lng->txt($val[
"lng"]));
 
 1735                $this->tpl->parseCurrentBlock();
 
 1738            $this->tpl->setCurrentBlock(
"operation");
 
 1740            $this->tpl->parseCurrentBlock();
 
 1751        $this->
setFormAction(
"addRole", $this->ctrl->getLinkTarget($this, 
"addRole"));
 
 1752        $this->
setFormAction(
"permSave", $this->ctrl->getLinkTarget($this, 
"permSave"));
 
 1753        $this->permObject();
 
 1762        $this->
setReturnLocation(
"permSave", $this->ctrl->getLinkTarget($this, 
"perm"));
 
 1763        $this->permSaveObject();
 
 1772        $this->infoObject();
 
 1782        $this->addRoleObject();
 
 1792        $this->ownerObject();
 
 1801        if (strtolower(
$_GET[
"baseClass"]) == 
"iladministrationgui") {
 
 1803            parent::viewObject();
 
 1817        if (!isset(
$_POST[
"id"])) {
 
 1818            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 1821        if (count(
$_POST[
"id"]) > 1) {
 
 1822            $ilErr->raiseError($this->lng->txt(
"cont_select_max_one_item"), 
$ilErr->MESSAGE);
 
 1826            $ilErr->raiseError($this->lng->txt(
"cont_select_item"), 
$ilErr->MESSAGE);
 
 1834        if ($a_parent_subobj_id == 0) {
 
 1835            $this->ctrl->redirect($this, 
"chapters");
 
 1863        if (!isset(
$_POST[
"id"])) {
 
 1864            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 1867        ilUtil::sendInfo($this->lng->txt(
"cont_selected_items_have_been_cut"), 
true);
 
 1873        $this->ctrl->redirect($this, 
"pages");
 
 1881        if (
$_GET[
"new_type"] == 
"pg") {
 
 1882            $this->ctrl->redirect($this, 
"pages");
 
 1884            $this->ctrl->redirect($this, 
"chapters");
 
 1896        if ($ot->getContentActivated()) {
 
 1902        require_once(
"./Modules/LearningModule/classes/class.ilContObjectExport.php");
 
 1904        $cont_exp->buildExportFile($opt);
 
 1916        $changelink = 
"<a href='" . 
$ilCtrl->getLinkTarget($this, 
"editMenuProperties") . 
"'>" . 
$lng->txt(
"change") . 
"</a>";
 
 1917        if (!$this->object->isActiveLMMenu()) {
 
 1918            $add = 
"<br />" . 
$lng->txt(
"cont_download_no_menu") . 
" " . $changelink;
 
 1919        } elseif (!$this->object->isActiveDownloads()) {
 
 1920            $add = 
"<br />" . 
$lng->txt(
"cont_download_no_download") . 
" " . $changelink;
 
 1923        $basetype = explode(
"_", 
$a_type);
 
 1924        $basetype = $basetype[0];
 
 1926        if ($this->object->getPublicExportFile($basetype) == $a_file) {
 
 1927            return $lng->txt(
"yes") . $add;
 
 1942        if (!isset($a_files)) {
 
 1945            foreach ($a_files as $f) {
 
 1946                $file = explode(
":", $f);
 
 1947                if (is_int(strpos(
$file[0], 
"_"))) {
 
 1950                $export_dir = $this->
object->getExportDirectory(
$file[0]);
 
 1952                if ($this->object->getPublicExportFile(
$file[0]) ==
 
 1954                    $this->
object->setPublicExportFile(
$file[0], 
"");
 
 1956                    $this->
object->setPublicExportFile(
$file[0], 
$file[1]);
 
 1959            $this->
object->update();
 
 1961        $ilCtrl->redirectByClass(
"ilexportgui");
 
 1971        if (!isset(
$_POST[
"file"])) {
 
 1972            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 1975        if (count(
$_POST[
"file"]) > 1) {
 
 1976            $ilErr->raiseError($this->lng->txt(
"cont_select_max_one_item"), 
$ilErr->MESSAGE);
 
 1980        $export_dir = $this->
object->getOfflineDirectory();
 
 1998        include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
 
 2000        $cgui->setFormAction($this->ctrl->getFormAction($this));
 
 2001        $cgui->setHeaderText($this->lng->txt(
"cont_fix_tree_confirm"));
 
 2002        $cgui->setCancel($this->lng->txt(
"cancel"), 
"showMaintenance");
 
 2003        $cgui->setConfirm($this->lng->txt(
"cont_fix_tree"), 
"fixTree");
 
 2004        $issues = $this->
object->checkStructure();
 
 2006        if (count($issues) > 0) {
 
 2007            $mess = 
"Found Issues: <br>" . implode(
"<br>", $issues);
 
 2009        $this->tpl->setContent($cgui->getHTML() . $mess);
 
 2017        $this->
object->fixTree();
 
 2019        $this->ctrl->redirect($this, 
"showMaintenance");
 
 2027        $a_export_format = 
"",
 
 2028        $a_active = 
"content",
 
 2029        $a_use_global_tabs = 
false,
 
 2030        $a_as_subtabs = 
false,
 
 2033        $a_export_all = 
false 
 2043        $ilHelp->setScreenIdComponent(
"lm");
 
 2045        if ($a_as_subtabs) {
 
 2046            $addcmd = 
"addSubTabTarget";
 
 2047            $getcmd = 
"getSubTabHTML";
 
 2049            $addcmd = 
"addTarget";
 
 2050            $getcmd = 
"getHTML";
 
 2053        $active[$a_active] = 
true;
 
 2055        if (!$this->object->isActiveLMMenu()) {
 
 2059        if ($a_use_global_tabs) {
 
 2072        $showViewInFrameset = 
true;
 
 2074        if ($showViewInFrameset && !$a_offline) {
 
 2077            $buttonTarget = 
"_top";
 
 2080        if ($a_export_format == 
"scorm") {
 
 2085        if (!$a_offline && $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
 2086            $ilCtrl->setParameterByClass(
"illmpresentationgui", 
"obj_id", 
$_GET[
"obj_id"]);
 
 2089                $ilCtrl->getLinkTargetByClass(
"illmpresentationgui", 
"layout"),
 
 2095            if ($active[
"content"]) {
 
 2096                $ilHelp->setScreenId(
"content");
 
 2097                $ilHelp->setSubScreenId(
"content");
 
 2099        } elseif ($a_offline) {
 
 2100            $tabs_gui->setForcePresentationOfSingleTab(
true);
 
 2104        if ($this->object->isActiveTOC() && $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
 2106                $ilCtrl->setParameterByClass(
"illmpresentationgui", 
"obj_id", 
$_GET[
"obj_id"]);
 
 2107                $link = 
$ilCtrl->getLinkTargetByClass(
"illmpresentationgui", 
"showTableOfContents");
 
 2109                if ($a_export_all) {
 
 2110                    $link = 
"./table_of_contents_" . $a_lang . 
".html";
 
 2112                    $link = 
"./table_of_contents.html";
 
 2126        if ($this->object->isActivePrintView() && $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
 2128                $ilCtrl->setParameterByClass(
"illmpresentationgui", 
"obj_id", 
$_GET[
"obj_id"]);
 
 2129                $link = 
$ilCtrl->getLinkTargetByClass(
"illmpresentationgui", 
"showPrintViewSelection");
 
 2142        if (
$ilUser->getId() == ANONYMOUS_USER_ID) {
 
 2143            $is_public = $this->
object->isActiveDownloadsPublic();
 
 2148        if ($this->object->isActiveDownloads() && !$a_offline && $is_public &&
 
 2149            $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
 2150            $ilCtrl->setParameterByClass(
"illmpresentationgui", 
"obj_id", 
$_GET[
"obj_id"]);
 
 2151            $link = 
$ilCtrl->getLinkTargetByClass(
"illmpresentationgui", 
"showDownloadList");
 
 2163        if ($a_export_format != 
"scorm" && !$a_offline) {
 
 2165                $ilCtrl->setParameterByClass(
"illmpresentationgui", 
"obj_id", 
$_GET[
"obj_id"]);
 
 2166                $link = $this->ctrl->getLinkTargetByClass(
 
 2167                    array(
"illmpresentationgui", 
"ilinfoscreengui"),
 
 2171                $link = 
"./info.html";
 
 2184        include_once 
'./Services/Tracking/classes/class.ilLearningProgressAccess.php';
 
 2186            $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"]) && 
 
 2188            include_once 
'./Services/Object/classes/class.ilObjectLP.php';
 
 2192                    "learning_progress",
 
 2193                    $this->ctrl->getLinkTargetByClass(array(
"illmpresentationgui", 
"illearningprogressgui"), 
"editManual"),
 
 2197                    $active[
"learning_progress"]
 
 2201                    "learning_progress",
 
 2202                    $this->ctrl->getLinkTargetByClass(array(
"illmpresentationgui", 
"illearningprogressgui"), 
"showtlt"),
 
 2206                    $active[
"learning_progress"]
 
 2213        $entries = $this->lmme_obj->getMenuEntries(
true);
 
 2214        if (count($entries) > 0 && $ilAccess->checkAccess(
"read", 
"", 
$_GET[
"ref_id"])) {
 
 2215            foreach ($entries as $entry) {
 
 2217                if ($entry[
"type"] == 
"intern") {
 
 2218                    $entry[
"link"] = ILIAS_HTTP_PATH . 
"/goto.php?target=" . $entry[
"link"];
 
 2222                if (!strstr($entry[
"link"], 
'://') && !strstr($entry[
"link"], 
'mailto:')) {
 
 2223                    $entry[
"link"] = 
"http://" . $entry[
"link"];
 
 2226                if (!strstr($entry[
"link"], 
'mailto:')) {
 
 2242        if (!$a_offline && $a_cur_page > 0) {
 
 2245                $page_id = $a_cur_page;
 
 2248                    ILIAS_HTTP_PATH . 
"/ilias.php?baseClass=ilLMEditorGUI&ref_id=" . 
$_GET[
"ref_id"] .
 
 2249                    "&obj_id=" . $page_id . 
"&to_page=1",
 
 2253                    $active[
"edit_page"]
 
 2259        $pl_names = $ilPluginAdmin->getActivePluginsForSlot(
IL_COMP_SERVICE, 
"UIComponent", 
"uihk");
 
 2260        $plugin_html = 
false;
 
 2261        foreach ($pl_names as $pl) {
 
 2263            $gui_class = $ui_plugin->getUIClassInstance();
 
 2264            $resp = $gui_class->modifyGUI(
 
 2265                "Modules/LearningModule",
 
 2279        require_once(
"./Modules/LearningModule/classes/class.ilContObjectExport.php");
 
 2281        $cont_exp->buildExportFile();
 
 2282        $this->offlineList();
 
 2290        include_once(
"./Services/Object/classes/class.ilObjectTranslation.php");
 
 2293        if ($ot->getContentActivated()) {
 
 2297        require_once(
"./Modules/LearningModule/classes/class.ilContObjectExport.php");
 
 2299        $cont_exp->buildExportFile();
 
 2309        require_once(
"./Modules/LearningModule/classes/class.ilContObjectExport.php");
 
 2311        $cont_exp->buildExportFile();
 
 2328        $par_id = 
$tree->getParentId(
$_GET[
"ref_id"]);
 
 2332        if ($par_id != ROOT_FOLDER_ID) {
 
 2333            $this->ctrl->addLocation(
 
 2340            if ($parent_title == 
"ILIAS") {
 
 2341                $parent_title = 
$lng->txt(
"repository");
 
 2345        $ilCtrl->setParameterByClass(
"ilrepositorygui", 
"ref_id", $par_id);
 
 2346        $this->ctrl->addLocation(
 
 2348            $ilCtrl->getLinkTargetByClass(
"ilrepositorygui", 
"frameset"),
 
 2352        $ilCtrl->setParameterByClass(
"ilrepositorygui", 
"ref_id", 
$_GET[
"ref_id"]);
 
 2354        if (!$a_omit_obj_id) {
 
 2357        $lmtree = $this->
object->getTree();
 
 2362            $path = $lmtree->getPathFull($lmtree->getRootId());
 
 2364                $path[] = array(
"type" => 
"pg", 
"child" => $this->obj_id,
 
 2372            if (
$row[
"child"] == 1) {
 
 2373                $this->ctrl->setParameter($this, 
"obj_id", 
"");
 
 2374                $this->ctrl->addLocation(
 
 2375                    $this->object->getTitle(),
 
 2376                    $this->ctrl->getLinkTarget($this, 
"chapters"),
 
 2382                switch (
$row[
"type"]) {
 
 2384                        $this->ctrl->setParameterByClass(
"ilstructureobjectgui", 
"obj_id", 
$row[
"child"]);
 
 2385                        $this->ctrl->addLocation(
 
 2387                            $this->ctrl->getLinkTargetByClass(
"ilstructureobjectgui", 
"view")
 
 2392                        $this->ctrl->setParameterByClass(
"illmpageobjectgui", 
"obj_id", 
$row[
"child"]);
 
 2393                        $this->ctrl->addLocation(
 
 2395                            $this->ctrl->getLinkTargetByClass(
"illmpageobjectgui", 
"edit")
 
 2401        if (!$a_omit_obj_id) {
 
 2402            $this->ctrl->setParameter($this, 
"obj_id", 
$_GET[
"obj_id"]);
 
 2421        include_once(
"./Modules/LearningModule/classes/class.ilLMQuestionListTableGUI.php");
 
 2436        include_once(
"./Modules/LearningModule/classes/class.ilLMBlockedUsersTableGUI.php");
 
 2449        include_once(
"./Services/COPage/classes/class.ilPageQuestionProcessor.php");
 
 2450        if (is_array(
$_POST[
"userquest_id"])) {
 
 2451            foreach (
$_POST[
"userquest_id"] as $uqid) {
 
 2452                $uqid = explode(
":", $uqid);
 
 2457        $ilCtrl->redirect($this, 
"listBlockedUsers");
 
 2468        include_once(
"./Services/COPage/classes/class.ilPageQuestionProcessor.php");
 
 2469        if (is_array(
$_POST[
"userquest_id"])) {
 
 2470            foreach (
$_POST[
"userquest_id"] as $uqid) {
 
 2471                $uqid = explode(
":", $uqid);
 
 2476        $ilCtrl->redirect($this, 
"listBlockedUsers");
 
 2486        if (!is_array(
$_POST[
"userquest_id"])) {
 
 2488            $ilCtrl->redirect($this, 
"listBlockedUsers");
 
 2492        foreach (
$_POST[
"userquest_id"] as $uqid) {
 
 2493            $uqid = explode(
":", $uqid);
 
 2495            if (!in_array($login, $rcps)) {
 
 2499        require_once 
'Services/Mail/classes/class.ilMailFormCall.php';
 
 2506                'rcp_to' => implode(
',', $rcps),
 
 2517        $link = chr(13) . chr(10) . chr(13) . chr(10);
 
 2518        $link .= $this->lng->txt(
'cont_blocked_users_mail_link');
 
 2519        $link .= chr(13) . chr(10) . chr(13) . chr(10);
 
 2520        include_once 
'./Services/Link/classes/class.ilLink.php';
 
 2522        return rawurlencode(base64_encode($link));
 
 2539        $ilHelp->setScreenIdComponent(
"lm");
 
 2542        parent::setTitleAndDescription();
 
 2543        $this->tpl->setTitle($this->object->getTitle());
 
 2544        $this->tpl->setTitleIcon(
 
 2566            $lng->txt(
"cont_chapters"),
 
 2567            $ilCtrl->getLinkTarget($this, 
"chapters")
 
 2573            $lng->txt(
"cont_all_pages"),
 
 2574            $ilCtrl->getLinkTarget($this, 
"pages")
 
 2580            $lng->txt(
"cont_short_titles"),
 
 2581            $ilCtrl->getLinkTargetByClass(
"illmeditshorttitlesgui", 
"")
 
 2585        if (
$lm_set->get(
"html_export_ids")) {
 
 2589                    $lng->txt(
"cont_html_export_ids"),
 
 2590                    $ilCtrl->getLinkTarget($this, 
"showExportIDsOverview")
 
 2595            $lng->loadLanguageModule(
"help");
 
 2598                $lng->txt(
"cont_online_help_ids"),
 
 2599                $ilCtrl->getLinkTarget($this, 
"showExportIDsOverview")
 
 2604                $lng->txt(
"help_tooltips"),
 
 2605                $ilCtrl->getLinkTarget($this, 
"showTooltipList")
 
 2612            $lng->txt(
"cont_internal_links"),
 
 2613            $ilCtrl->getLinkTarget($this, 
"listLinks")
 
 2619            $lng->txt(
"link_check"),
 
 2620            $ilCtrl->getLinkTarget($this, 
"linkChecker")
 
 2625            $lng->txt(
"history"),
 
 2626            $this->ctrl->getLinkTarget($this, 
"history")
 
 2632            $lng->txt(
"cont_maintenance"),
 
 2633            $ilCtrl->getLinkTarget($this, 
"showMaintenance")
 
 2639            $lng->txt(
"cont_subtitle_files"),
 
 2640            $ilCtrl->getLinkTargetByClass(
"ilmobmultisrtuploadgui", 
"")
 
 2646            $lng->txt(
"cont_import"),
 
 2647            $ilCtrl->getLinkTargetByClass(
"illmimportgui", 
"")
 
 2650        $ilTabs->activateSubTab($a_active);
 
 2651        $ilTabs->activateTab(
"content");
 
 2668            $lng->txt(
"cont_question_stats"),
 
 2669            $ilCtrl->getLinkTarget($this, 
"listQuestions")
 
 2675            $lng->txt(
"cont_blocked_users"),
 
 2676            $ilCtrl->getLinkTarget($this, 
"listBlockedUsers")
 
 2679        $ilTabs->activateSubTab($a_active);
 
 2697            $lng->txt(
"content"),
 
 2698            $this->ctrl->getLinkTarget($this, 
"chapters")
 
 2704            $lng->txt(
"info_short"),
 
 2705            $this->ctrl->getLinkTargetByClass(
"ilinfoscreengui", 
'showSummary')
 
 2711            $lng->txt(
"settings"),
 
 2712            $this->ctrl->getLinkTarget($this, 
'properties')
 
 2718            $lng->txt(
"objs_qst"),
 
 2719            $this->ctrl->getLinkTarget($this, 
"listQuestions")
 
 2723        include_once 
'./Services/Tracking/classes/class.ilLearningProgressAccess.php';
 
 2726                'learning_progress',
 
 2727                $lng->txt(
"learning_progress"),
 
 2728                $this->ctrl->getLinkTargetByClass(array(
'illearningprogressgui'), 
'')
 
 2732        if ($this->object->getType() != 
"lm") {
 
 2736                $lng->txt(
"bib_data"),
 
 2737                $this->ctrl->getLinkTarget($this, 
"editBibItem")
 
 2742        include_once 
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
 
 2744        $mdtab = $mdgui->getTab();
 
 2748                $lng->txt(
"meta_data"),
 
 2753        if ($this->object->getType() == 
"lm") {
 
 2757                $lng->txt(
"export"),
 
 2758                $this->ctrl->getLinkTargetByClass(
"ilexportgui", 
"")
 
 2763        if (
$rbacsystem->checkAccess(
'edit_permission', $this->object->getRefId())) {
 
 2766                $lng->txt(
"perm_settings"),
 
 2767                $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'), 
"perm")
 
 2772            $ilTabs->activateTab($a_act);
 
 2776        $ilTabs->addNonTabbedLink(
 
 2778            $lng->txt(
"cont_presentation_view"),
 
 2779            "ilias.php?baseClass=ilLMPresentationGUI&ref_id=" . $this->object->getRefID(),
 
 2794            array(
"settings", 
"cont_style", 
"cont_lm_menu", 
"public_section",
 
 2795                "cont_glossaries", 
"cont_multilinguality", 
"obj_multilinguality",
 
 2799            $ilTabs->addSubTabTarget(
 
 2801                $this->ctrl->getLinkTarget($this, 
'properties'),
 
 2807            $ilTabs->addSubTabTarget(
 
 2809                $this->ctrl->getLinkTarget($this, 
'editStyleProperties'),
 
 2815            $ilTabs->addSubTabTarget(
 
 2817                $this->ctrl->getLinkTarget($this, 
'editMenuProperties'),
 
 2823            $ilTabs->addSubTabTarget(
 
 2825                $this->ctrl->getLinkTarget($this, 
'editGlossaries'),
 
 2832                $ilTabs->addSubTabTarget(
 
 2834                    $this->ctrl->getLinkTarget($this, 
'editPublicSection'),
 
 2845            $ilTabs->addSubTabTarget(
 
 2846                "obj_multilinguality",
 
 2847                $this->ctrl->getLinkTargetByClass(
"ilobjecttranslationgui", 
"")
 
 2851            if ($lti_settings->hasSettingsAccess()) {
 
 2852                $ilTabs->addSubTabTarget(
 
 2854                    $this->ctrl->getLinkTargetByClass(ilLTIProviderObjectSettingGUI::class)
 
 2858            $ilTabs->setSubTabActive($a_active);
 
 2869        if (!$ilAccess->checkAccessOfUser(ANONYMOUS_USER_ID, 
"read", 
"", $this->object->getRefId())) {
 
 2875        $ilTabs->setTabActive(
"settings");
 
 2877        $this->tpl->addBlockFile(
 
 2880            "tpl.lm_public_selector.html",
 
 2881            "Modules/LearningModule" 
 2889        $modes = array(
"complete" => $this->lng->txt(
"all_pages"), 
"selected" => $this->lng->txt(
"selected_pages_only"));
 
 2890        include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
 
 2892        $si->setOptions($modes);
 
 2893        $si->setValue($this->object->getPublicAccessMode());
 
 2894        $ilToolbar->addInputItem(
$si, 
true);
 
 2895        $ilToolbar->addFormButton($this->lng->txt(
"save"), 
"savePublicSectionAccess");
 
 2896        $ilToolbar->setFormAction($this->ctrl->getFormAction($this, 
"savePublicSectionAccess"));
 
 2898        if ($this->object->getPublicAccessMode() == 
"selected") {
 
 2899            $this->tpl->setCurrentBlock(
"select_pages");
 
 2900            $this->tpl->setVariable(
"FORMACTION", $this->ctrl->getLinkTarget($this, 
"savePublicSectionPages"));
 
 2902            include_once(
"./Modules/LearningModule/classes/class.ilPublicSectionExplorerGUI.php");
 
 2904            $tree->setSelectMode(
"pages", 
true);
 
 2905            $tree->setSkipRootNode(
true);
 
 2907            $this->tpl->setVariable(
"EXPLORER", 
$tree->getHTML());
 
 2908            $this->tpl->setVariable(
"TXT_SAVE", $this->lng->txt(
"save"));
 
 2910            $this->tpl->parseCurrentBlock();
 
 2917        $this->
object->setPublicAccessMode(
$_POST[
"lm_public_mode"]);
 
 2918        $this->
object->updateProperties();
 
 2921        $this->ctrl->redirect($this, 
"editPublicSection");
 
 2929        $this->
object->setPublicAccessMode(
$_POST[
"lm_public_mode"]);
 
 2930        $this->
object->updateProperties();
 
 2932        $this->ctrl->redirect($this, 
"editPublicSection");
 
 2942        $this->ctrl->redirect($this, 
"editPublicSection");
 
 2955        require_once(
"./Services/History/classes/class.ilHistoryTableGUI.php");
 
 2959            $this->object->getId(),
 
 2960            $this->object->getType()
 
 2962        $hist_gui->initTable();
 
 2963        $hist_gui->setCommentVisibility($this->object->isActiveHistoryUserComments());
 
 2965        $this->tpl->setContent($hist_gui->getHTML());
 
 2980        require_once 
'Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php';
 
 2982        $actions->setSelectionHeaderClass(
'small');
 
 2983        $actions->setItemLinkClass(
'xsmall');
 
 2984        $actions->setListTitle($this->lng->txt(
'actions'));
 
 2986        $this->ctrl->setParameterByClass(
'ilLMPageObjectGUI', 
'obj_id', 
$row[
'page_id']);
 
 2988            $this->lng->txt(
'edit'),
 
 2990            $this->ctrl->getLinkTargetByClass(
'ilLMPageObjectGUI', 
'edit')
 
 2992        $this->ctrl->clearParametersByClass(
'ilLMPageObjectGUI');
 
 3008        require_once 
'./Services/LinkChecker/classes/class.ilLinkCheckerTableGUI.php';
 
 3013        include_once 
"Services/Cron/classes/class.ilCronManager.php";
 
 3015            include_once 
'./Services/LinkChecker/classes/class.ilLinkCheckNotify.php';
 
 3016            include_once 
'Services/Form/classes/class.ilPropertyFormGUI.php';
 
 3018            $chb = 
new ilCheckboxInputGUI($this->lng->txt(
'link_check_message_a'), 
'link_check_message');
 
 3021            $chb->setOptionTitle($this->lng->txt(
'link_check_message_b'));
 
 3024            $toolbar->addFormButton($this->lng->txt(
'save'), 
'saveLinkCheck');
 
 3025            $toolbar->setFormAction($this->ctrl->getLinkTarget($this, 
'saveLinkCheck'));
 
 3029        $tgui->setLinkChecker($this->link_checker_obj)
 
 3030             ->setRowHandler($this)
 
 3031             ->setRefreshButton($this->lng->txt(
'refresh'), 
'refreshLinkCheck');
 
 3033        return $tpl->setContent($tgui->prepareHTML()->getHTML() . 
$toolbar->getHTML());
 
 3041        include_once 
'./Services/LinkChecker/classes/class.ilLinkCheckNotify.php';
 
 3044        $link_check_notify->setUserId(
$ilUser->getId());
 
 3045        $link_check_notify->setObjId($this->object->getId());
 
 3047        if (
$_POST[
'link_check_message']) {
 
 3049            $link_check_notify->addNotifier();
 
 3052            $link_check_notify->deleteNotifier();
 
 3064        $this->link_checker_obj->checkLinks();
 
 3076        include_once 
'./Services/LinkChecker/classes/class.ilLinkChecker.php';
 
 3079        $this->link_checker_obj->setObjId($this->object->getId());
 
 3086        include_once 
'./Modules/LearningModule/classes/class.ilLMMenuEditor.php';
 
 3089        $this->lmme_obj->setObjId($this->object->getId());
 
 3106        $ilTabs->setTabActive(
"settings");
 
 3109        $ilToolbar->addButton(
 
 3110            $this->lng->txt(
"lm_menu_select_internal_object"),
 
 3111            $ilCtrl->getLinkTarget($this, 
"showEntrySelector")
 
 3115        $this->tpl->setContent(
$form->getHTML());
 
 3128        include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
 3132        $ti = 
new ilTextInputGUI($this->lng->txt(
"lm_menu_entry_title"), 
"title");
 
 3133        $ti->setMaxLength(255);
 
 3135        $form->addItem($ti);
 
 3138        $ta = 
new ilTextInputGUI($this->lng->txt(
"lm_menu_entry_target"), 
"target");
 
 3139        $ta->setMaxLength(255);
 
 3141        $form->addItem($ta);
 
 3143        if ($a_mode == 
"edit") {
 
 3145            $this->lmme_obj->readEntry($_REQUEST[
"menu_entry"]);
 
 3146            $ti->setValue($this->lmme_obj->getTitle());
 
 3147            $ta->setValue($this->lmme_obj->getTarget());
 
 3150        if (isset(
$_GET[
"link_ref_id"])) {
 
 3151            $link_ref_id = (int) 
$_GET[
"link_ref_id"];
 
 3156            $target_link = $obj_type . 
"_" . $link_ref_id;
 
 3158            $ta->setValue($target_link);
 
 3162            $hi->setValue($link_ref_id);
 
 3163            $form->addItem($hi);
 
 3168        if ($a_mode == 
"create") {
 
 3169            $form->addCommandButton(
"saveMenuEntry", 
$lng->txt(
"save"));
 
 3170            $form->addCommandButton(
"editMenuProperties", 
$lng->txt(
"cancel"));
 
 3171            $form->setTitle(
$lng->txt(
"lm_menu_new_entry"));
 
 3173            $form->addCommandButton(
"updateMenuEntry", 
$lng->txt(
"save"));
 
 3174            $form->addCommandButton(
"editMenuProperties", 
$lng->txt(
"cancel"));
 
 3175            $form->setTitle(
$lng->txt(
"lm_menu_edit_entry"));
 
 3191        if (empty(
$_POST[
"title"])) {
 
 3193            $ilCtrl->redirect($this, 
"addMenuEntry");
 
 3195        if (empty(
$_POST[
"target"])) {
 
 3197            $ilCtrl->redirect($this, 
"addMenuEntry");
 
 3201        $this->lmme_obj->setTitle(
$_POST[
"title"]);
 
 3202        $this->lmme_obj->setTarget(
$_POST[
"target"]);
 
 3203        $this->lmme_obj->setLinkRefId(
$_POST[
"link_ref_id"]);
 
 3205        if (
$_POST[
"link_ref_id"]) {
 
 3206            $this->lmme_obj->setLinkType(
"intern");
 
 3209        $this->lmme_obj->create();
 
 3212        $this->ctrl->redirect($this, 
"editMenuProperties");
 
 3222        if (empty(
$_GET[
"menu_entry"])) {
 
 3223            $ilErr->raiseError($this->lng->txt(
"no_menu_entry_id"), 
$ilErr->MESSAGE);
 
 3227        $this->lmme_obj->delete(
$_GET[
"menu_entry"]);
 
 3230        $this->ctrl->redirect($this, 
"editMenuProperties");
 
 3245        $ilTabs->setTabActive(
"settings");
 
 3249        if (empty(
$_GET[
"menu_entry"])) {
 
 3250            $ilErr->raiseError($this->lng->txt(
"no_menu_entry_id"), 
$ilErr->MESSAGE);
 
 3253        $ilCtrl->saveParameter($this, array(
"menu_entry"));
 
 3254        $ilToolbar->addButton(
 
 3255            $this->lng->txt(
"lm_menu_select_internal_object"),
 
 3256            $ilCtrl->getLinkTarget($this, 
"showEntrySelector")
 
 3260        $this->tpl->setContent(
$form->getHTML());
 
 3270        if (empty($_REQUEST[
"menu_entry"])) {
 
 3271            $ilErr->raiseError($this->lng->txt(
"no_menu_entry_id"), 
$ilErr->MESSAGE);
 
 3275        if (empty(
$_POST[
"title"])) {
 
 3276            $ilErr->raiseError($this->lng->txt(
"please_enter_title"), 
$ilErr->MESSAGE);
 
 3278        if (empty(
$_POST[
"target"])) {
 
 3279            $ilErr->raiseError($this->lng->txt(
"please_enter_target"), 
$ilErr->MESSAGE);
 
 3283        $this->lmme_obj->readEntry($_REQUEST[
"menu_entry"]);
 
 3284        $this->lmme_obj->setTitle(
$_POST[
"title"]);
 
 3285        $this->lmme_obj->setTarget(
$_POST[
"target"]);
 
 3286        if (
$_POST[
"link_ref_id"]) {
 
 3287            $this->lmme_obj->setLinkType(
"intern");
 
 3289        if (is_int(strpos(
$_POST[
"target"], 
"."))) {
 
 3290            $this->lmme_obj->setLinkType(
"extern");
 
 3292        $this->lmme_obj->update();
 
 3295        $this->ctrl->redirect($this, 
"editMenuProperties");
 
 3305        $ilTabs->setTabActive(
"settings");
 
 3308        $ilCtrl->saveParameter($this, array(
"menu_entry"));
 
 3310        $this->tpl->addBlockFile(
"ADM_CONTENT", 
"adm_content", 
"tpl.lm_menu_object_selector.html", 
"Modules/LearningModule");
 
 3314        require_once(
"./Modules/LearningModule/classes/class.ilLMMenuObjectSelector.php");
 
 3317        $exp->setExpand(
$_GET[
"lm_menu_expand"] ? 
$_GET[
"lm_menu_expand"] : $this->tree->readRootId());
 
 3318        $exp->setExpandTarget($this->ctrl->getLinkTarget($this, 
'showEntrySelector'));
 
 3319        $exp->setTargetGet(
"ref_id");
 
 3320        $exp->setRefId($this->cur_ref_id);
 
 3322        $sel_types = array(
'mcst', 
'mep', 
'cat', 
'lm',
'glo',
'frm',
'exc',
'tst',
'svy', 
'chat', 
'wiki', 
'sahs',
 
 3323            "crs", 
"grp", 
"book", 
"tst", 
"file");
 
 3324        $exp->setSelectableTypes($sel_types);
 
 3333        foreach ($exp->format_options as $node) {
 
 3334            if (!$node[
"container"]) {
 
 3335                $pages[] = $node[
"child"];
 
 3342        $this->tpl->setVariable(
"TXT_SET_PUBLIC_MODE", $this->lng->txt(
"set_public_mode"));
 
 3343        $this->tpl->setVariable(
"TXT_CHOOSE_PUBLIC_MODE", $this->lng->txt(
"choose_public_mode"));
 
 3344        $modes = array(
"complete" => $this->lng->txt(
"all_pages"), 
"selected" => $this->lng->txt(
"selected_pages_only"));
 
 3345        $select_public_mode = 
ilUtil::formSelect($this->object->getPublicAccessMode(), 
"lm_public_mode", $modes, 
false, 
true);
 
 3346        $this->tpl->setVariable(
"SELECT_PUBLIC_MODE", $select_public_mode);
 
 3348        $this->tpl->setVariable(
"TXT_EXPLORER_HEADER", $this->lng->txt(
"choose_public_pages"));
 
 3349        $this->tpl->setVariable(
"EXP_REFRESH", $this->lng->txt(
"refresh"));
 
 3350        $this->tpl->setVariable(
"EXPLORER", 
$output);
 
 3351        $this->tpl->setVariable(
"ONCLICK", $js_pages);
 
 3352        $this->tpl->setVariable(
"TXT_CHECKALL", $this->lng->txt(
"check_all"));
 
 3353        $this->tpl->setVariable(
"TXT_UNCHECKALL", $this->lng->txt(
"uncheck_all"));
 
 3354        $this->tpl->setVariable(
"TXT_SAVE", $this->lng->txt(
"save"));
 
 3355        $this->tpl->setVariable(
"FORMACTION", $this->ctrl->getLinkTarget($this, 
"savePublicSection"));
 
 3366        if (!isset(
$_POST[
"id"])) {
 
 3367            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 3369        if (count(
$_POST[
"id"]) > 1) {
 
 3370            $ilErr->raiseError($this->lng->txt(
"cont_select_max_one_item"), 
$ilErr->MESSAGE);
 
 3372        if (
$_POST[
"id"][0] != $this->object->getHeaderPage()) {
 
 3373            $this->
object->setHeaderPage(
$_POST[
"id"][0]);
 
 3375            $this->
object->setHeaderPage(0);
 
 3377        $this->
object->updateProperties();
 
 3378        $this->ctrl->redirect($this, 
"pages");
 
 3388        if (!isset(
$_POST[
"id"])) {
 
 3389            $ilErr->raiseError($this->lng->txt(
"no_checkbox"), 
$ilErr->MESSAGE);
 
 3391        if (count(
$_POST[
"id"]) > 1) {
 
 3392            $ilErr->raiseError($this->lng->txt(
"cont_select_max_one_item"), 
$ilErr->MESSAGE);
 
 3394        if (
$_POST[
"id"][0] != $this->object->getFooterPage()) {
 
 3395            $this->
object->setFooterPage(
$_POST[
"id"][0]);
 
 3397            $this->
object->setFooterPage(0);
 
 3399        $this->
object->updateProperties();
 
 3400        $this->ctrl->redirect($this, 
"pages");
 
 3413        $ilCtrl->redirect($this, 
"chapters");
 
 3424        include_once(
"./Modules/LearningModule/classes/class.ilChapterHierarchyFormGUI.php");
 
 3430            $parent_id = $this->lm_tree->getParentId($node_id);
 
 3433            $parent_id = $node_id;
 
 3437        for (
$i = 1; 
$i <= $num; 
$i++) {
 
 3439            $chap->setType(
"st");
 
 3440            $chap->setTitle(
$lng->txt(
"cont_new_chap"));
 
 3441            $chap->setLMId($this->object->getId());
 
 3446        $ilCtrl->redirect($this, 
"chapters");
 
 3458        include_once(
"./Modules/LearningModule/classes/class.ilChapterHierarchyFormGUI.php");
 
 3463        $ilLog->write(
"InsertChapterClip, num: $num, node_id: $node_id, " .
 
 3466        if (!$first_child) {    
 
 3467            $parent_id = $this->lm_tree->getParentId($node_id);
 
 3470            $parent_id = $node_id;
 
 3475        $chapters = 
$ilUser->getClipboardObjects(
"st", 
true);
 
 3476        $copied_nodes = array();
 
 3477        foreach ($chapters as $chap) {
 
 3478            $ilLog->write(
"Call pasteTree, Target LM: " . $this->object->getId() . 
", Chapter ID: " . $chap[
"id"]
 
 3479                . 
", Parent ID: " . $parent_id . 
", Target: " . 
$target);
 
 3485                $chap[
"insert_time"],
 
 3494            $ilUser->clipboardDeleteObjectsOfType(
"pg");
 
 3495            $ilUser->clipboardDeleteObjectsOfType(
"st");
 
 3499        $this->
object->checkTree();
 
 3500        $ilCtrl->redirect($this, 
"chapters");
 
 3512        $ilAccess = 
$DIC->access();
 
 3516        if ($ilAccess->checkAccess(
"read", 
"", $a_target)) {
 
 3517            $_GET[
"baseClass"] = 
"ilLMPresentationGUI";
 
 3518            $_GET[
"ref_id"] = $a_target;
 
 3519            $_GET[
"cmd"] = 
"resume";
 
 3520            include(
"ilias.php");
 
 3522        } elseif ($ilAccess->checkAccess(
"visible", 
"", $a_target)) {
 
 3523            $_GET[
"baseClass"] = 
"ilLMPresentationGUI";
 
 3524            $_GET[
"ref_id"] = $a_target;
 
 3525            $_GET[
"cmd"] = 
"infoScreen";
 
 3526            include(
"ilias.php");
 
 3528        } elseif ($ilAccess->checkAccess(
"read", 
"", ROOT_FOLDER_ID)) {
 
 3530                $lng->txt(
"msg_no_perm_read_item"),
 
 3549        if (!is_array($items)) {
 
 3551            $ilCtrl->redirect($this, $a_return);
 
 3555        foreach ($items as $k => $item) {
 
 3560        foreach ($todel as $k) {
 
 3567        $ilCtrl->redirect($this, $a_return);
 
 3579        if (!is_array($items)) {
 
 3581            $ilCtrl->redirect($this, 
"chapters");
 
 3585        foreach ($items as $k => $item) {
 
 3590        foreach ($todel as $k) {
 
 3596        $ilCtrl->redirect($this, 
"chapters");
 
 3629            $ilToolbar->setFormAction(
$ilCtrl->getFormAction($this));
 
 3630            include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
 
 3631            $lm_tree = $this->
object->getTree();
 
 3632            $childs = $lm_tree->getChilds($lm_tree->readRootId());
 
 3634            foreach ($childs as $c) {
 
 3635                $options[$c[
"child"]] = $c[
"title"];
 
 3640            $ilToolbar->addInputItem(
$si, 
true);
 
 3641            $ilToolbar->addFormButton(
$lng->txt(
"help_filter"), 
"filterHelpChapters");
 
 3643            include_once(
"./Modules/LearningModule/classes/class.ilHelpMappingTableGUI.php");
 
 3646            include_once(
"./Modules/LearningModule/classes/class.ilExportIDTableGUI.php");
 
 3664        $ilCtrl->redirect($this, 
"showExportIDsOverview");
 
 3678        if (is_array(
$_POST[
"exportid"])) {
 
 3679            foreach (
$_POST[
"exportid"] as $pg_id => $exp_id) {
 
 3680                if ($exp_id != 
"" && !preg_match(
 
 3681                    "/^([a-zA-Z]+)[0-9a-zA-Z_]*$/",
 
 3690                $lng->txt(
"cont_exp_ids_not_resp_format3") . 
" " .
 
 3691                $lng->txt(
"cont_exp_ids_not_resp_format2"));
 
 3697        if (is_array(
$_POST[
"exportid"])) {
 
 3698            foreach (
$_POST[
"exportid"] as $pg_id => $exp_id) {
 
 3700                    $this->object->getId(),
 
 3709        $ilCtrl->redirect($this, 
"showExportIdsOverview");
 
 3723        include_once(
"./Services/Help/classes/class.ilHelpMapping.php");
 
 3724        if (is_array(
$_POST[
"screen_ids"])) {
 
 3725            foreach (
$_POST[
"screen_ids"] as $chap => $ids) {
 
 3726                $ids = explode(
"\n", $ids);
 
 3731        $ilCtrl->redirect($this, 
"showExportIdsOverview");
 
 3754        $ilToolbar->setFormAction(
$ilCtrl->getFormAction($this));
 
 3755        include_once(
"./Services/Form/classes/class.ilTextInputGUI.php");
 
 3756        $ti = 
new ilTextInputGUI($this->lng->txt(
"help_tooltip_id"), 
"tooltip_id");
 
 3757        $ti->setMaxLength(200);
 
 3759        $ilToolbar->addInputItem($ti, 
true);
 
 3760        $ilToolbar->addFormButton(
$lng->txt(
"add"), 
"addTooltip");
 
 3761        $ilToolbar->addSeparator();
 
 3763        include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
 
 3771        $ilToolbar->addInputItem(
$si, 
true);
 
 3772        $ilToolbar->addFormButton(
$lng->txt(
"help_filter"), 
"filterTooltips");
 
 3774        include_once(
"./Modules/LearningModule/classes/class.ilHelpTooltipTableGUI.php");
 
 3792        if (trim($tt_id) != 
"") {
 
 3793            if (is_int(strpos($tt_id, 
"_"))) {
 
 3794                include_once(
"./Services/Help/classes/class.ilHelp.php");
 
 3798                $fu = strpos($tt_id, 
"_");
 
 3799                $comp = substr($tt_id, 0, $fu);
 
 3805        $ilCtrl->redirect($this, 
"showTooltipList");
 
 3820        $ilCtrl->redirect($this, 
"showTooltipList");
 
 3835        include_once(
"./Services/Help/classes/class.ilHelp.php");
 
 3837        if (is_array(
$_POST[
"text"])) {
 
 3847        $ilCtrl->redirect($this, 
"showTooltipList");
 
 3858        if (is_array(
$_POST[
"id"])) {
 
 3859            include_once(
"./Services/Help/classes/class.ilHelp.php");
 
 3865        $ilCtrl->redirect($this, 
"showTooltipList");
 
 3909        if ($a_def_option != 
"") {
 
 3914                $lng->txt(
"cont_lm_default_layout") .
 
 3915                "</b>: " . 
$lng->txt(
"cont_layout_" . $a_def_option) .
 
 3916                "</td></tr></table>", 
""));
 
 3924                $im_tag . 
"</td><td style='padding:5px;'><b>" . 
$lng->txt(
"cont_layout_" . 
$l) . 
"</b>: " .
 
 3925                $lng->txt(
"cont_layout_" . 
$l . 
"_desc") . 
"</td></tr></table>", 
$l));
 
 3937        $ilCtrl->setParameter($this, 
"hierarchy", 
"1");
 
 3951        if (!is_array(
$_POST[
"id"])) {
 
 3954            if ($a_in_hierarchy) {
 
 3955                $ilCtrl->redirect($this, 
"chapters");
 
 3957                $ilCtrl->redirect($this, 
"pages");
 
 3963        $tpl->setContent($this->form->getHTML());
 
 3974        include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
 3977        if (is_array(
$_POST[
"id"])) {
 
 3981                $this->form->addItem($hi);
 
 3985            $lng->txt(
"cont_layout"),
 
 3987            $this->object->getLayout()
 
 3989        $this->form->addItem(
$layout);
 
 3991        $this->form->addCommandButton(
"savePageLayout", 
$lng->txt(
"save"));
 
 3992        $this->form->addCommandButton(
"pages", 
$lng->txt(
"cancel"));
 
 3994        $this->form->setTitle(
$lng->txt(
"cont_set_layout"));
 
 3995        $this->form->setFormAction(
$ilCtrl->getFormAction($this));
 
 4006        $ilCtrl->setParameter($this, 
"hierarchy", 
$_GET[
"hierarchy"]);
 
 4017        if (
$_GET[
"hierarchy"] == 1) {
 
 4018            $ilCtrl->redirect($this, 
"chapters");
 
 4020            $ilCtrl->redirect($this, 
"pages");
 
 4043        $ilTabs->setTabActive(
"settings");
 
 4046        $ilToolbar->addButton(
 
 4048            $ilCtrl->getLinkTarget($this, 
"showLMGlossarySelector")
 
 4051        include_once(
"./Modules/LearningModule/classes/class.ilLMGlossaryTableGUI.php");
 
 4073        $ilTabs->setTabActive(
"settings");
 
 4076        include_once 
'Services/Search/classes/class.ilSearchRootSelector.php';
 
 4079        $exp->setExpand(
$_GET[
"search_root_expand"] ? 
$_GET[
"search_root_expand"] : 
$tree->readRootId());
 
 4080        $exp->setExpandTarget(
$ilCtrl->getLinkTarget($this, 
'showLMGlossarySelector'));
 
 4081        $exp->setTargetClass(get_class($this));
 
 4082        $exp->setCmd(
'confirmGlossarySelection');
 
 4083        $exp->setClickableTypes(array(
"glo"));
 
 4084        $exp->addFilter(
"glo");
 
 4088        $tpl->setContent($exp->getOutput());
 
 4100        include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
 
 4102        $ilCtrl->setParameter($this, 
"glo_ref_id", 
$_GET[
"root_id"]);
 
 4103        $cgui->setFormAction(
$ilCtrl->getFormAction($this));
 
 4104        $cgui->setHeaderText(
$lng->txt(
"cont_link_glo_in_lm"));
 
 4105        $cgui->setCancel(
$lng->txt(
"no"), 
"selectLMGlossary");
 
 4106        $cgui->setConfirm(
$lng->txt(
"yes"), 
"selectLMGlossaryLink");
 
 4107        $tpl->setContent($cgui->getHTML());
 
 4118        $glo_ref_id = (int) 
$_GET[
"glo_ref_id"];
 
 4120        $this->
object->autoLinkGlossaryTerms($glo_ref_id);
 
 4136        $glos = $this->
object->getAutoGlossaries();
 
 4137        $glo_ref_id = (int) 
$_GET[
"glo_ref_id"];
 
 4139        if (!in_array($glo_id, $glos)) {
 
 4142        $this->
object->setAutoGlossaries($glos);
 
 4143        $this->
object->update();
 
 4146        $ilCtrl->redirect($this, 
"editGlossaries");
 
 4160        $this->
object->removeAutoGlossary((
int) 
$_GET[
"glo_id"]);
 
 4161        $this->
object->update();
 
 4164        $ilCtrl->redirect($this, 
"editGlossaries");
 
 4177        $ilCtrl->setParameter($this, 
"transl", 
"");
 
 4178        if (
$_GET[
"lang_switch_mode"] == 
"short_titles") {
 
 4179            $ilCtrl->redirectByClass(
"illmeditshorttitlesgui", 
"");
 
 4181        $ilCtrl->redirect($this, 
"chapters");
 
 4194        $ilCtrl->setParameter($this, 
"transl", 
$_GET[
"totransl"]);
 
 4195        if (
$_GET[
"lang_switch_mode"] == 
"short_titles") {
 
 4196            $ilCtrl->redirectByClass(
"illmeditshorttitlesgui", 
"");
 
 4198        $ilCtrl->redirect($this, 
"chapters");
 
 4204        return parent::redrawHeaderActionObject();
 
sprintf('%.4f', $callTime)
if(!isset( $_REQUEST[ 'ReturnTo'])) if(!isset($_REQUEST['AuthId'])) $options
An exception for terminatinating execution or to throw for unit testing.
error($a_errmsg)
set error message @access public
User interface class for advanced drop-down selection lists.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Confirmation screen class.
Export class for content objects.
static isJobActive($a_job_id)
Check if given job is currently active.
Class ilECSLearningModuleSettings.
static getContentObjectId()
static getContentObjectType()
static setAction($a_action)
static storeContentObject($a_type, $a_id, $a_action="cut")
Base class for ILIAS Exception handling.
Export User Interface Class.
static saveScreenIdsForChapter($a_chap, $a_ids)
Save screen ids for chapter.
static addTooltip($a_tt_id, $a_text, $a_module_id=0)
Add tooltip.
static updateTooltip($a_id, $a_text, $a_tt_id)
Update tooltip.
static getTooltipComponents($a_module_id=0)
Get all tooltip components.
static deleteTooltip($a_id)
Delete tooltip.
Copyright (c) 1998-2014 ILIAS open source, Extended GPL, see docs/LICENSE Date: 24....
static _createEntry( $a_obj_id, $a_action, $a_info_params="", $a_obj_type="", $a_user_comment="", $a_update_last=false)
Creates a new history entry for an object.
TableGUI class for glossary tables.
Import related features for learning modules.
Handler class for multi srt upload in learning modules.
static getInstance(&$a_content_obj, $a_id=0, $a_halt=true)
static _lookupType($a_obj_id, $a_lm_id=0)
Lookup type.
static clipboardCopy($a_cont_obj_id, $a_ids)
Copy a set of chapters/pages into the clipboard.
static _lookupContObjID($a_id)
get learning module / digibook id for lm object
static clipboardCut($a_cont_obj_id, $a_ids)
Copy a set of chapters/pages into the clipboard.
static saveTitles($a_lm, $a_titles, $a_lang="-")
Save titles for lm objects.
static saveExportId($a_lm_id, $a_lmobj_id, $a_exp_id, $a_type="pg")
Save export id.
static updateInternalLinks($a_copied_nodes, $a_parent_type="lm")
Update internal links, after multiple pages have been copied.
static _lookupTitle($a_obj_id)
Lookup title.
static _writePublicAccessStatus($a_pages, $a_cont_obj_id)
update public access flags in lm_data for all pages of a content object@access public
static putInTree($a_obj, $a_parent_id="", $a_target_node_id="")
put this object into content object tree
static writeLayout($a_obj_id, $a_layout, $a_lm=null)
Write layout setting.
static pasteTree( $a_target_lm, $a_item_id, $a_parent_id, $a_target, $a_insert_time, &$a_copied_nodes, $a_as_copy=false, $a_source_lm=null)
Paste item (tree) from clipboard to current lm.
static _getPresentationTitle( $a_pg_id, $a_mode=IL_CHAPTER_TITLE, $a_include_numbers=false, $a_time_scheduled_activation=false, $a_force_content=false, $a_lm_id=0, $a_lang="-", $a_include_short=false)
presentation title doesn't have to be page title, it may be chapter title + page title or chapter tit...
TableGUI class for all pages of a learning module.
const LP_MODE_COLLECTION_TLT
const LP_MODE_COLLECTION_MANUAL
GUI class for LTI provider object settings.
static checkAccess($a_ref_id, $a_allow_only_read=true)
check access to learning progress
const LP_CONTEXT_REPOSITORY
Class ilObjUserTrackingGUI.
class for checking external links in page objects.
static _getNotifyStatus($a_usr_id, $a_obj_id)
class ilLinkCheckerTableGUI
class for checking external links in page objects Normally used in Cron jobs, but should be extensibl...
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
TableGUI class for (broken) links in learning module.
manifest.xml file not found-exception for import
Upload SRT files to a set of media objects.
This class represents a non editable value in a property form.
static setNotification($type, $user_id, $id, $status=true)
Set notification status for object and user.
static hasNotification($type, $user_id, $id)
Check notification status for object and user.
const TYPE_LM_BLOCKED_USERS
Class ilObjContentObjectGUI.
owner()
show owner of content object
fixTreeConfirm()
confirm screen for tree fixing
addMenuEntry()
display add menu entry form
setPageLayout($a_in_hierarchy=false)
Set layout for multipl pages.
deleteTooltips()
Delete tooltips.
removeLMGlossary()
Remove lm glossary.
deleteMenuEntry()
drop a menu entry
sendMailToBlockedUsers()
Send Mail to blocked users.
properties()
edit properties form
selectLMGlossary()
Select lm glossary.
saveExportIds()
Save export IDs.
filterTooltips()
Filter tooltips.
showExportIDsOverview($a_validation=false)
Show export IDs overview.
savePageLayout()
Save page layout.
deleteStyle()
Delete Style.
static getMultiLangHeader($a_lm_id, $a_gui_class, $a_mode="")
Get multi lang header.
setTabs($a_act="")
output tabs
filterHelpChapters()
Filter help chapters.
unlockQuestion()
Unlock blocked question.
getContextPath($a_endnode_id, $a_startnode_id=1)
get context path in content object tree
addLocations($a_omit_obj_id=false)
display locator
confirmGlossarySelection()
Confirm glossary selection.
importObject()
display dialogue for importing XML-LeaningObjects
cutItems($a_return="chapters")
Copy items to clipboard, then cut them from the current tree.
showMaintenance()
Show maintenance.
showActions($a_actions)
show possible action (form buttons)
selectHeader()
select page as header
savePublicSectionPages()
Saves public lm pages.
importFileObject($parent_id=null, $a_catch_errors=true)
display status information or report errors messages in case of error
initSetPageLayoutForm()
Init set page layout form.
savePublicSectionAccess()
Saves lm access mode.
insertChapter()
Insert (multiple) chapters at node.
executeCommand()
execute command
setilLMMenu( $a_offline=false, $a_export_format="", $a_active="content", $a_use_global_tabs=false, $a_as_subtabs=false, $a_cur_page=0, $a_lang="", $a_export_all=false)
get lm menu html
saveAllTitles()
Save all titles of chapters/pages.
formatInvalidLinkArray(array $row)
editStyleProperties()
Edit style properties.
copyItems()
Copy items to clipboard.
saveMenuProperties()
save properties
initPropertiesForm()
Init properties form.
proceedDragDrop()
proceed drag and drop operations on pages/chapters
publishExportFile($a_files)
download export file
__construct($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=false)
Constructor.
confirmedDelete($a_parent_subobj_id=0)
delete page object or structure objects
exportSCORM()
create scorm package
pasteChapter($a_parent_subobj_id=0)
paste chapter
exportHTML()
create html package
saveHelpMapping()
Save help mapping.
cutChapter()
Cut chapter(s)
saveTooltips()
Save tooltips.
exportObject()
export object
getPropertiesFormValues()
Get values for properties form.
editMasterLanguage()
Edit master language.
static _goto($a_target)
redirect script
popup()
popup window for wysiwyg editor
saveMenuEntry()
save new menu entry
getPublicAccessColValue($a_type, $a_file)
Get public access value for export table.
showTooltipList()
Show export IDs overview.
initMenuForm()
Init menu form.
listLinks()
List all broken links.
listQuestions()
List questions.
selectFooter()
select page as footer
createStyle()
Create Style.
setContentSubTabs($a_active)
Set pages tabs.
initMenuEntryForm($a_mode="edit")
Init menu entry form.
initStylePropertiesForm()
Init style properties form.
setSubTabs($a_active)
Set sub tabs.
setPageLayoutInHierarchy()
Set layout for multipl pages.
saveProperties()
save properties
switchToLanguage()
Switch to language.
createPDF()
export content object
listBlockedUsers()
List blocked users.
updateMenuEntry()
update a menu entry
permSave()
save permissions
insertChapterClip()
Insert Chapter from clipboard.
activatePages()
activates or deactivates pages
moveChapter($a_parent_subobj_id=0)
move a single chapter (selection)
downloadPDFFile()
download export file
afterSave(ilObject $a_new_object)
Post (successful) object creation hook.
view()
view content object
explorer()
output explorer tree
static getLayoutOption($a_txt, $a_var, $a_def_option="")
Save help mapping.
selectLMGlossaryLink()
Select a glossary and link all its terms.
cancelDelete()
cancel delete
showLMGlossarySelector()
Select LM Glossary.
copyChapter($a_parent_subobj_id=0)
copy a single chapter (selection)
initImportForm($a_new_type)
Init import form.
editMenuEntry()
edit menu entry form
getBlockedUsersMailSignature()
Get mail signature for blocked users.
editGlossaries()
Edit automatically linked glossaries.
saveStyleSettings()
Save style settings.
setQuestionsSubTabs($a_active)
Set pages tabs.
export()
export content object
addTabs($a_act="")
Adds tabs.
resetNumberOfTries()
Reset number of tries.
editMenuProperties()
Edit menu properies.
Class ilObjContentObject.
static getAvailableLayouts()
get all available lm layouts
static isOnlineHelpModule($a_id, $a_as_obj_id=false)
Is module an online module.
Class ilObjLearningModule.
Class ilObjStyleSheetGUI.
static _lookupStandard($a_id)
Lookup standard flag.
static _getStandardStyles( $a_exclude_default_style=false, $a_include_deactivated=false, $a_scope=0)
Get standard styles.
static _lookupLogin($a_user_id)
lookup login
GUI class for the workflow of copying objects.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
Class ilObjectGUI Basic methods of all Output classes.
prepareOutput($a_show_subobjects=true)
prepare output
viewObject()
list childs of current object
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
getCreationMode()
get creation mode
addHeaderAction()
Add header action menu.
createObject()
create new object form
setFormAction($a_cmd, $a_formaction)
set specific form action for command
setTabs()
set admin tabs @access public
setReturnLocation($a_cmd, $a_location)
set specific return location for command
static getInstance($a_obj_id)
GUI class for object translation handling.
static getInstance($a_obj_id)
Get instance.
Class ilObject Basic functions for all objects.
static _lookupObjId($a_id)
update()
update object in db
static _lookupTitle($a_id)
lookup object title
static _lookupObjectId($a_ref_id)
lookup object id
getRefId()
get reference id @access public
static _lookupType($a_id, $a_reference=false)
lookup object type
Page multilinguality GUI class.
static _lookupActive($a_id, $a_parent_type, $a_check_scheduled_activation=false, $a_lang="-")
lookup activation status
static _writeActive($a_id, $a_parent_type, $a_active, $a_reset_scheduled_activation=true, $a_lang="-")
write activation status
static resetTries($a_q_id, $a_user_id)
Reset tries.
static unlock($a_q_id, $a_user_id)
Reset tries.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.
tree explorer lm public area
This class represents an option in a radio group.
static set($a_var, $a_val)
Set a value.
static get($a_var)
Get a value.
Class ilStructureObjectGUI.
special template class to simplify handling of ITX/PEAR
This class represents a text area property in a property form.
This class represents a text property in a property form.
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
static appendUrlParameterString($a_url, $a_par, $xml_style=false)
append URL parameter string ("par1=value1&par2=value2...") to given URL string
static getImageTagByType($a_type, $a_path, $a_big=false)
Builds an html image tag TODO: function still in use, but in future use getImagePath and move HTML-Co...
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static redirect($a_script)
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static img($a_src, $a_alt="", $a_width="", $a_height="", $a_border=0, $a_id="", $a_class="")
Build img tag.
static deliverFile( $a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static formSelect( $selected, $varname, $options, $multiple=false, $direct_text=false, $size="0", $style_class="", $attribs="", $disabled=false)
Builds a select form field with options and shows the selected option first.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static stripSlashesArray($a_arr, $a_strip_html=true, $a_allow="")
Strip slashes from array.
for( $i=6;$i< 13;$i++) for($i=1; $i< 13; $i++) $d
if(!array_key_exists('StateId', $_REQUEST)) $id
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\s+" &#(? foreach( $entity_files as $file) $output
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
interface ilLinkCheckerGUIRowHandling
if(empty($password)) $table
if(isset($_POST['submit'])) $form
if(isset($_REQUEST['delete'])) $list
if(!file_exists("$old.txt")) if( $old===$new) if(file_exists("$new.txt")) $file