/** * 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; }