/**
  * build property form for extended category settings
  *
  * @access protected
  */
 protected function initExtendedSettings()
 {
     if (is_object($this->form)) {
         return true;
     }
     include_once 'Services/Form/classes/class.ilPropertyFormGUI.php';
     $this->form = new ilPropertyFormGUI();
     $this->form->setFormAction($this->ctrl->getFormAction($this));
     $this->form->setTitle($this->lng->txt('ext_cat_settings'));
     $this->form->addCommandButton('updateInfo', $this->lng->txt('save'));
     $this->form->addCommandButton('editInfo', $this->lng->txt('cancel'));
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, 'cat', $this->object->getId());
     $record_gui->setPropertyForm($this->form);
     $record_gui->parse();
     return true;
 }
 /**
  * Init filter
  */
 function initFilter()
 {
     global $lng, $rbacreview, $ilUser, $ilDB;
     // term
     include_once "./Services/Form/classes/class.ilTextInputGUI.php";
     $ti = new ilTextInputGUI($lng->txt("cont_term"), "term");
     $ti->setMaxLength(64);
     $ti->setSize(20);
     $ti->setSubmitFormOnEnter(true);
     $this->addFilterItem($ti);
     $ti->readFromSession();
     $this->filter["term"] = $ti->getValue();
     // definition
     if ($ilDB->getDBType() != "oracle") {
         include_once "./Services/Form/classes/class.ilTextInputGUI.php";
         $ti = new ilTextInputGUI($lng->txt("cont_definition"), "defintion");
         $ti->setMaxLength(64);
         $ti->setSize(20);
         $ti->setSubmitFormOnEnter(true);
         $this->addFilterItem($ti);
         $ti->readFromSession();
         $this->filter["definition"] = $ti->getValue();
     }
     // advanced metadata
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_FILTER, 'glo', $this->glossary->getId(), 'term');
     $record_gui->setSelectedOnly(true);
     $record_gui->setTableGUI($this);
     $record_gui->parse();
 }
 /**
  * save properties
  */
 function saveProperties()
 {
     global $tpl;
     $this->initSettingsForm();
     if ($this->form->checkInput()) {
         $this->object->setTitle($_POST['title']);
         $this->object->setDescription($_POST['description']);
         $this->object->setOnline(ilUtil::yn2tf($_POST["cobj_online"]));
         $this->object->setVirtualMode($_POST["glo_mode"]);
         //			$this->object->setActiveGlossaryMenu(ilUtil::yn2tf($_POST["glo_act_menu"]));
         $this->object->setActiveDownloads(ilUtil::yn2tf($_POST["glo_act_downloads"]));
         $this->object->setPresentationMode($_POST["pres_mode"]);
         $this->object->setSnippetLength($_POST["snippet_length"]);
         $this->object->setShowTaxonomy($_POST["show_tax"]);
         $this->object->update();
         // field order of advanced metadata
         include_once "./Modules/Glossary/classes/class.ilGlossaryAdvMetaDataAdapter.php";
         $adv_ap = new ilGlossaryAdvMetaDataAdapter($this->object->getId());
         $cols = $adv_ap->getColumnOrder();
         if (count($cols) > 1) {
             $adv_ap->saveColumnOrder($_POST["field_order"]);
         }
         // set definition short texts dirty
         include_once "./Modules/Glossary/classes/class.ilGlossaryDefinition.php";
         ilGlossaryDefinition::setShortTextsDirty($this->object->getId());
         // update metadata record selection
         include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
         $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_REC_SELECTION, 'glo', $this->object->getId(), "term");
         $record_gui->saveSelection();
         // Update ecs export settings
         include_once 'Modules/Glossary/classes/class.ilECSGlossarySettings.php';
         $ecs = new ilECSGlossarySettings($this->object);
         if ($ecs->handleSettingsUpdate()) {
             ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
             $this->ctrl->redirect($this, "properties");
         }
     }
     $this->form->setValuesByPost();
     $tpl->setContent($this->form->getHTML());
 }
 /**
  * Update Advanced Metadata
  */
 protected function updateAdvancedSettings()
 {
     if (!$this->ilAccess->checkAccess("write", "", $this->ref_id)) {
         ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
         $this->ctrl->redirect($this);
     }
     $form = $this->initAdvancedSettingsForm();
     $gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, 'orgu', $this->object->getId(), 'orgu_type', $this->object->getOrgUnitTypeId());
     $gui->setPropertyForm($form);
     $gui->setSelectedOnly(true);
     $form->checkInput();
     $gui->parse();
     if ($gui->importEditFormPostValues()) {
         $gui->writeEditForm();
         ilUtil::sendSuccess($this->lng->txt('settings_saved'), true);
         $this->ctrl->redirect($this, 'editAdvancedSettings');
     } else {
         $this->tpl->setContent($form->getHTML());
     }
 }
 /**
  * show information screen
  */
 function infoScreen()
 {
     global $ilErr, $ilAccess, $ilUser, $ilSetting;
     $this->checkPermission('visible');
     // Fill meta header tags
     include_once 'Services/MetaData/classes/class.ilMDUtils.php';
     ilMDUtils::_fillHTMLMetaTags($this->object->getId(), $this->object->getId(), 'crs');
     $this->tabs_gui->setTabActive('info_short');
     include_once "./Services/InfoScreen/classes/class.ilInfoScreenGUI.php";
     include_once 'Modules/Course/classes/class.ilCourseFile.php';
     $files =& ilCourseFile::_readFilesByCourse($this->object->getId());
     $info = new ilInfoScreenGUI($this);
     $info->enablePrivateNotes();
     $info->enableFeedback();
     $info->enableNews();
     if ($ilAccess->checkAccess("write", "", $_GET["ref_id"])) {
         $info->enableNewsEditing();
     }
     if (strlen($this->object->getImportantInformation()) or strlen($this->object->getSyllabus()) or count($files)) {
         $info->addSection($this->lng->txt('crs_general_informations'));
     }
     if (strlen($this->object->getImportantInformation())) {
         $info->addProperty($this->lng->txt('crs_important_info'), "<strong>" . nl2br(ilUtil::makeClickable($this->object->getImportantInformation(), true) . "</strong>"));
     }
     if (strlen($this->object->getSyllabus())) {
         $info->addProperty($this->lng->txt('crs_syllabus'), nl2br(ilUtil::makeClickable($this->object->getSyllabus(), true)));
     }
     // files
     if (count($files)) {
         $tpl = new ilTemplate('tpl.event_info_file.html', true, true, 'Modules/Course');
         foreach ($files as $file) {
             $tpl->setCurrentBlock("files");
             $this->ctrl->setParameter($this, 'file_id', $file->getFileId());
             $tpl->setVariable("DOWN_LINK", $this->ctrl->getLinkTarget($this, 'sendfile'));
             $tpl->setVariable("DOWN_NAME", $file->getFileName());
             $tpl->setVariable("DOWN_INFO_TXT", $this->lng->txt('crs_file_size_info'));
             $tpl->setVariable("DOWN_SIZE", $file->getFileSize());
             $tpl->setVariable("TXT_BYTES", $this->lng->txt('bytes'));
             $tpl->parseCurrentBlock();
         }
         $info->addProperty($this->lng->txt('crs_file_download'), $tpl->get());
     }
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_INFO, 'crs', $this->object->getId());
     $record_gui->setInfoObject($info);
     $record_gui->parse();
     // meta data
     $info->addMetaDataSections($this->object->getId(), 0, $this->object->getType());
     // contact
     if ($this->object->hasContactData()) {
         $info->addSection($this->lng->txt("crs_contact"));
     }
     if (strlen($this->object->getContactName())) {
         $info->addProperty($this->lng->txt("crs_contact_name"), $this->object->getContactName());
     }
     if (strlen($this->object->getContactResponsibility())) {
         $info->addProperty($this->lng->txt("crs_contact_responsibility"), $this->object->getContactResponsibility());
     }
     if (strlen($this->object->getContactPhone())) {
         $info->addProperty($this->lng->txt("crs_contact_phone"), $this->object->getContactPhone());
     }
     if ($this->object->getContactEmail()) {
         require_once 'Services/Mail/classes/class.ilMailFormCall.php';
         $emails = split(",", $this->object->getContactEmail());
         foreach ($emails as $email) {
             $email = trim($email);
             $etpl = new ilTemplate("tpl.crs_contact_email.html", true, true, 'Modules/Course');
             $etpl->setVariable("EMAIL_LINK", ilMailFormCall::getLinkTarget($info, 'showSummary', array(), array('type' => 'new', 'rcp_to' => $email, 'sig' => $this->createMailSignature())));
             $etpl->setVariable("CONTACT_EMAIL", $email);
             $mailString .= $etpl->get() . "<br />";
         }
         $info->addProperty($this->lng->txt("crs_contact_email"), $mailString);
     }
     if (strlen($this->object->getContactConsultation())) {
         $info->addProperty($this->lng->txt("crs_contact_consultation"), nl2br($this->object->getContactConsultation()));
     }
     //
     // access
     //
     // #10360
     $this->lng->loadLanguageModule("rep");
     $info->addSection($this->lng->txt("rep_activation_availability"));
     $info->showLDAPRoleGroupMappingInfo();
     // activation
     if ($this->object->getActivationUnlimitedStatus()) {
         $info->addProperty($this->lng->txt("rep_activation_access"), $this->lng->txt('crs_visibility_limitless'));
     } else {
         $info->addProperty($this->lng->txt('rep_activation_access'), ilDatePresentation::formatPeriod(new ilDateTime($this->object->getActivationStart(), IL_CAL_UNIX), new ilDateTime($this->object->getActivationEnd(), IL_CAL_UNIX)));
     }
     switch ($this->object->getSubscriptionLimitationType()) {
         case IL_CRS_SUBSCRIPTION_DEACTIVATED:
             $txt = $this->lng->txt("crs_info_reg_deactivated");
             break;
         default:
             switch ($this->object->getSubscriptionType()) {
                 case IL_CRS_SUBSCRIPTION_CONFIRMATION:
                     $txt = $this->lng->txt("crs_info_reg_confirmation");
                     break;
                 case IL_CRS_SUBSCRIPTION_DIRECT:
                     $txt = $this->lng->txt("crs_info_reg_direct");
                     break;
                 case IL_CRS_SUBSCRIPTION_PASSWORD:
                     $txt = $this->lng->txt("crs_info_reg_password");
                     break;
             }
     }
     // subscription
     $info->addProperty($this->lng->txt("crs_info_reg"), $txt);
     if ($this->object->getSubscriptionLimitationType() != IL_CRS_SUBSCRIPTION_DEACTIVATED) {
         if ($this->object->getSubscriptionUnlimitedStatus()) {
             $info->addProperty($this->lng->txt("crs_reg_until"), $this->lng->txt('crs_unlimited'));
         } elseif ($this->object->getSubscriptionStart() < time()) {
             $info->addProperty($this->lng->txt("crs_reg_until"), $this->lng->txt('crs_to') . ' ' . ilDatePresentation::formatDate(new ilDateTime($this->object->getSubscriptionEnd(), IL_CAL_UNIX)));
         } elseif ($this->object->getSubscriptionStart() > time()) {
             $info->addProperty($this->lng->txt("crs_reg_until"), $this->lng->txt('crs_from') . ' ' . ilDatePresentation::formatDate(new ilDateTime($this->object->getSubscriptionStart(), IL_CAL_UNIX)));
         }
         if ($this->object->isSubscriptionMembershipLimited()) {
             include_once './Services/Membership/classes/class.ilParticipants.php';
             $info->addProperty($this->lng->txt("mem_free_places"), max(0, $this->object->getSubscriptionMaxMembers() - ilParticipants::lookupNumberOfMembers($this->object->getRefId())));
         }
     }
     // archive
     if ($this->object->getViewMode() == IL_CRS_VIEW_ARCHIVE) {
         if ($this->object->getArchiveType() != IL_CRS_ARCHIVE_NONE) {
             $info->addProperty($this->lng->txt("crs_archive"), ilDatePresentation::formatPeriod(new ilDateTime($this->object->getArchiveStart(), IL_CAL_UNIX), new ilDateTime($this->object->getArchiveStart(), IL_CAL_UNIX)));
         }
     }
     // Confirmation
     include_once 'Services/PrivacySecurity/classes/class.ilPrivacySettings.php';
     $privacy = ilPrivacySettings::_getInstance();
     include_once 'Modules/Course/classes/Export/class.ilCourseDefinedFieldDefinition.php';
     if ($privacy->courseConfirmationRequired() or ilCourseDefinedFieldDefinition::_getFields($this->object->getId()) or $privacy->enabledCourseExport()) {
         include_once 'Services/PrivacySecurity/classes/class.ilExportFieldsInfo.php';
         $field_info = ilExportFieldsInfo::_getInstanceByType($this->object->getType());
         $this->lng->loadLanguageModule('ps');
         $info->addSection($this->lng->txt('crs_user_agreement_info'));
         $info->addProperty($this->lng->txt('ps_export_data'), $field_info->exportableFieldsToInfoString());
         if ($fields = ilCourseDefinedFieldDefinition::_fieldsToInfoString($this->object->getId())) {
             $info->addProperty($this->lng->txt('ps_crs_user_fields'), $fields);
         }
     }
     $info->enableLearningProgress(true);
     // forward the command
     $this->ctrl->forwardCommand($info);
 }
 /**
  * show information screen
  */
 function infoScreen()
 {
     global $ilAccess, $ilCtrl;
     if (!$ilAccess->checkAccess("visible", "", $this->ref_id)) {
         $this->ilias->raiseError($this->lng->txt("msg_no_perm_read"), $this->ilias->error_obj->MESSAGE);
     }
     if (!$this->info_screen_enabled) {
         return;
     }
     // #10986
     $this->tabs_gui->setTabActive('info_short');
     include_once "./Services/InfoScreen/classes/class.ilInfoScreenGUI.php";
     $info = new ilInfoScreenGUI($this);
     $info->enablePrivateNotes();
     if ($ilAccess->checkAccess("read", "", $_GET["ref_id"])) {
         $info->enableNews();
     }
     // no news editing for files, just notifications
     $info->enableNewsEditing(false);
     if ($ilAccess->checkAccess("write", "", $_GET["ref_id"])) {
         $news_set = new ilSetting("news");
         $enable_internal_rss = $news_set->get("enable_rss_for_internal");
         if ($enable_internal_rss) {
             $info->setBlockProperty("news", "settings", true);
             $info->setBlockProperty("news", "public_notifications_option", true);
         }
     }
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_INFO, 'cat', $this->object->getId());
     $record_gui->setInfoObject($info);
     $record_gui->parse();
     // standard meta data
     $info->addMetaDataSections($this->object->getId(), 0, $this->object->getType());
     // forward the command
     if ($ilCtrl->getNextClass() == "ilinfoscreengui") {
         $ilCtrl->forwardCommand($info);
     } else {
         return $ilCtrl->getHTML($info);
     }
 }
 /**
  * 
  *
  * @access protected
  */
 protected function initAdvancedMetaDataForm()
 {
     if (is_object($this->form)) {
         return $this->form;
     }
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php';
     include_once 'Services/Form/classes/class.ilPropertyFormGUI.php';
     $this->form = new ilPropertyFormGUI();
     $this->form->setFormAction($this->ctrl->getFormAction($this, 'performAdvMDSearch'));
     $this->form->setTitle($this->lng->txt('adv_md_search_title'));
     $this->form->addCommandButton('performAdvMDSearch', $this->lng->txt('search'));
     #$this->form->setSubformMode('right');
     $content = new ilTextInputGUI($this->lng->txt('meta_title') . '/' . $this->lng->txt('meta_keyword') . '/' . $this->lng->txt('meta_description'), 'title');
     $content->setValue($this->options['title']);
     $content->setSize(30);
     $content->setMaxLength(255);
     //		$content->setSubformMode('right');
     $group = new ilRadioGroupInputGUI('', 'title_ao');
     $group->setValue($this->options['title_ao']);
     $radio_option = new ilRadioOption($this->lng->txt("search_any_word"), 0);
     $group->addOption($radio_option);
     $radio_option = new ilRadioOption($this->lng->txt("search_all_words"), 1);
     $group->addOption($radio_option);
     $content->addSubItem($group);
     $this->form->addItem($content);
     $type = new ilSelectInputGUI($this->lng->txt('type'), 'type');
     $options['adv_all'] = $this->lng->txt('search_any');
     foreach (ilAdvancedMDRecord::_getActivatedObjTypes() as $obj_type) {
         $options[$obj_type] = $this->lng->txt('objs_' . $obj_type);
     }
     $type->setOptions($options);
     $type->setValue($this->options['type']);
     $this->form->addItem($type);
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_SEARCH);
     $record_gui->setPropertyForm($this->form);
     $record_gui->setSearchValues($this->options);
     $record_gui->parse();
 }
 /**
  * update object
  */
 public function updateObject()
 {
     global $ilErr;
     if (!$this->checkPermissionBool('write')) {
         $ilErr->raiseError($this->lng->txt('msg_no_perm_read'), $ilErr->MESSAGE);
     }
     $form = $this->initEditForm();
     if ($form->checkInput()) {
         $this->object->setLocalInformation($a_form->getInput('local_info'));
         $this->updateCustomValues($form);
         $this->object->update();
         // Save advanced meta data
         include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
         $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, $this->getType(), $this->object->getId());
         $record_gui->loadFromPost();
         $record_gui->saveValues();
         ilUtil::sendSuccess($this->lng->txt("settings_saved"));
         $this->editObject();
     }
     $form->setValuesByPost();
     $this->editObject($form);
 }
 /**
  * Save Settings
  */
 function saveSettingsObject()
 {
     global $ilCtrl, $lng, $ilUser, $ilSetting;
     $this->checkPermission("write");
     $this->initSettingsForm();
     if ($this->form_gui->checkInput()) {
         if (!ilObjWiki::checkShortTitleAvailability($this->form_gui->getInput("shorttitle")) && $this->form_gui->getInput("shorttitle") != $this->object->getShortTitle()) {
             $short_item = $this->form_gui->getItemByPostVar("shorttitle");
             $short_item->setAlert($lng->txt("wiki_short_title_already_in_use"));
         } else {
             $this->object->setTitle($this->form_gui->getInput("title"));
             $this->object->setDescription($this->form_gui->getInput("description"));
             $this->object->setOnline($this->form_gui->getInput("online"));
             $this->object->setStartPage(ilWikiPage::lookupTitle($this->form_gui->getInput("startpage_id")));
             $this->object->setShortTitle($this->form_gui->getInput("shorttitle"));
             $this->object->setRatingOverall($this->form_gui->getInput("rating_overall"));
             $this->object->setRating($this->form_gui->getInput("rating"));
             // $this->object->setRatingAsBlock($this->form_gui->getInput("rating_side"));
             $this->object->setRatingForNewPages($this->form_gui->getInput("rating_new"));
             $this->object->setRatingCategories($this->form_gui->getInput("rating_ext"));
             if (!$ilSetting->get("disable_comments")) {
                 $this->object->setPublicNotes($this->form_gui->getInput("public_notes"));
             }
             $this->object->setIntroduction($this->form_gui->getInput("intro"));
             //				$this->object->setImportantPages($this->form_gui->getInput("imp_pages"));
             $this->object->setPageToc($this->form_gui->getInput("page_toc"));
             $this->object->update();
             // update metadata record selection
             include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
             $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_REC_SELECTION, 'wiki', $this->object->getId(), "wpg");
             $record_gui->saveSelection();
             // Update ecs export settings
             include_once 'Modules/Wiki/classes/class.ilECSWikiSettings.php';
             $ecs = new ilECSWikiSettings($this->object);
             if ($ecs->handleSettingsUpdate()) {
                 ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
                 $ilCtrl->redirect($this, "editSettings");
             }
         }
     }
     $this->form_gui->setValuesByPost();
     $this->tpl->setContent($this->form_gui->getHTML());
 }
 /**
  * update term
  */
 function updateTerm()
 {
     // update term
     $this->term->setTerm(ilUtil::stripSlashes($_POST["term"]));
     $this->term->setLanguage($_POST["term_language"]);
     $this->term->update();
     // update taxonomy assignment
     if ($this->glossary->getTaxonomyId() > 0) {
         include_once "./Services/Taxonomy/classes/class.ilTaxNodeAssignment.php";
         $ta = new ilTaxNodeAssignment("glo", $this->glossary->getId(), "term", $this->glossary->getTaxonomyId());
         $ta->deleteAssignmentsOfItem($this->term->getId());
         if (is_array($_POST["tax_node"])) {
             foreach ($_POST["tax_node"] as $node_id) {
                 $ta->addAssignment($node_id, $this->term->getId());
             }
         }
     }
     // advanced metadata
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, 'glo', $this->glossary->getId(), 'term', $this->term->getId());
     $record_gui->loadFromPost();
     $record_gui->saveValues();
     ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
     $this->ctrl->redirect($this, "editTerm");
 }
 function updateInfoObject()
 {
     global $ilErr, $ilAccess;
     $this->checkPermission('write');
     include_once 'Modules/Course/classes/class.ilCourseFile.php';
     $file_obj = new ilCourseFile();
     $file_obj->setCourseId($this->object->getId());
     $file_obj->setFileName(strlen($_POST['file_name']) ? ilUtil::stripSlashes($_POST['file_name']) : $_FILES['file']['name']);
     $file_obj->setFileSize($_FILES['file']['size']);
     $file_obj->setFileType($_FILES['file']['type']);
     $file_obj->setTemporaryName($_FILES['file']['tmp_name']);
     $file_obj->setErrorCode($_FILES['file']['error']);
     $this->object->setImportantInformation(ilUtil::stripSlashes($_POST['important']));
     $this->object->setSyllabus(ilUtil::stripSlashes($_POST['syllabus']));
     $this->object->setContactName(ilUtil::stripSlashes($_POST['contact_name']));
     $this->object->setContactResponsibility(ilUtil::stripSlashes($_POST['contact_responsibility']));
     $this->object->setContactPhone(ilUtil::stripSlashes($_POST['contact_phone']));
     $this->object->setContactEmail(ilUtil::stripSlashes($_POST['contact_email']));
     $this->object->setContactConsultation(ilUtil::stripSlashes($_POST['contact_consultation']));
     include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php';
     $record_gui = new ilAdvancedMDRecordGUI(ilAdvancedMDRecordGUI::MODE_EDITOR, 'crs', $this->object->getId());
     $record_gui->loadFromPost();
     // Validate
     $ilErr->setMessage('');
     $file_obj->validate();
     $this->object->validateInfoSettings();
     if (strlen($ilErr->getMessage())) {
         ilUtil::sendFailure($ilErr->getMessage());
         $this->editInfoObject();
         return false;
     }
     $this->object->update();
     $file_obj->create();
     $record_gui->saveValues();
     // Update ecs content
     include_once 'Modules/Course/classes/class.ilECSCourseSettings.php';
     $ecs = new ilECSCourseSettings($this->object);
     $ecs->handleContentUpdate();
     ilUtil::sendSuccess($this->lng->txt("crs_settings_saved"));
     $this->editInfoObject();
     return true;
 }