5 require_once(
"./Services/Object/classes/class.ilObjectGUI.php");
6 require_once(
"./Modules/Glossary/classes/class.ilObjGlossary.php");
7 require_once(
"./Modules/Glossary/classes/class.ilGlossaryTermGUI.php");
8 require_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
9 require_once(
"./Modules/Glossary/classes/class.ilTermDefinitionEditorGUI.php");
10 require_once(
"./Services/COPage/classes/class.ilPCParagraph.php");
97 public function __construct($a_data, $a_id = 0, $a_call_by_reference =
true, $a_prepare_output =
true)
99 $this->error =
$DIC[
"ilErr"];
102 $this->ctrl = $DIC->ctrl();
103 $this->lng = $DIC->language();
104 $this->
user = $DIC->user();
105 $this->toolbar = $DIC->toolbar();
106 $this->tabs = $DIC->tabs();
107 $this->setting = $DIC[
"ilSetting"];
108 $this->access = $DIC->access();
109 $this->rbacsystem = $DIC->rbac()->system();
110 $this->help = $DIC[
"ilHelp"];
114 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermPermission.php");
117 $this->ctrl->saveParameter($this, array(
"ref_id",
"offset"));
119 $this->lng->loadLanguageModule(
"content");
120 $this->lng->loadLanguageModule(
"glo");
123 parent::__construct($a_data, $a_id, $a_call_by_reference,
false);
127 $this->term_id = (int)
$_GET[
"term_id"];
129 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
130 if ($this->term_id > 0 && $term_glo_id != $this->object->getId()
135 $this->tax_id = $this->
object->getTaxonomyId();
136 if ($this->tax_id > 0) {
137 $this->ctrl->saveParameter($this, array(
"show_tax",
"tax_node"));
139 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
142 if ((
int)
$_GET[
"tax_node"] > 1 && $this->tax->getTree()->readRootId() !=
$_GET[
"tax_node"]) {
143 $this->tax_node = (int)
$_GET[
"tax_node"];
152 $cmd = $this->ctrl->getCmd();
153 $next_class = $this->ctrl->getNextClass($this);
155 $this->log->debug(
"glossary term, next class " . $next_class .
", cmd: " . $cmd);
157 switch ($next_class) {
158 case 'ilobjectmetadatagui':
166 $this->tabs_gui->activateTab(
'meta_data');
167 include_once
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
169 $this->ctrl->forwardCommand($md_gui);
172 case "ilglossarytermgui":
173 if (!$this->term_perm->checkPermission(
"edit_content", $this->term_id) &&
174 !$this->term_perm->checkPermission(
"write", $this->term_id)) {
175 include_once(
"./Modules/Glossary/exceptions/class.ilGlossaryException.php");
180 $this->ctrl->setReturn($this,
"listTerms");
182 $term_gui->setGlossary($this->
object);
184 $ret = $this->ctrl->forwardCommand($term_gui);
187 case "ilinfoscreengui":
192 case "ilobjstylesheetgui":
193 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheetGUI.php");
194 $this->ctrl->setReturn($this,
"editStyleProperties");
195 $style_gui =
new ilObjStyleSheetGUI(
"", $this->object->getStyleSheetId(),
false,
false);
197 if ($cmd ==
"create" ||
$_GET[
"new_type"] ==
"sty") {
198 $style_gui->setCreationMode(
true);
201 if ($cmd ==
"confirmedDelete") {
202 $this->
object->setStyleSheetId(0);
203 $this->
object->update();
206 $ret = $this->ctrl->forwardCommand($style_gui);
208 if ($cmd ==
"save" || $cmd ==
"copyStyle" || $cmd ==
"importStyle") {
210 $this->
object->setStyleSheetId($style_id);
211 $this->
object->update();
212 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
217 case 'ilpermissiongui':
218 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui") {
226 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
228 $ret = $this->ctrl->forwardCommand($perm_gui);
231 case "ilcommonactiondispatchergui":
232 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
234 $this->ctrl->forwardCommand($gui);
237 case "ilobjtaxonomygui":
242 $this->tabs->activateTab(
"settings");
245 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php");
246 $this->ctrl->setReturn($this,
"properties");
248 $tax_gui->setMultiple(
false);
254 $tax_gui->setAssignedObject($this->object->getId());
255 $ret = $this->ctrl->forwardCommand($tax_gui);
261 $this->tabs->activateTab(
"export");
263 include_once(
"./Services/Export/classes/class.ilExportGUI.php");
266 $exp_gui->addFormat(
"xml");
267 $exp_gui->addFormat(
"html",
"", $this,
"exportHTML");
268 $exp_gui->addCustomColumn(
269 $this->lng->txt(
"cont_public_access"),
271 "getPublicAccessColValue" 273 $exp_gui->addCustomMultiCommand(
274 $this->lng->txt(
"cont_public_access"),
278 $ret = $this->ctrl->forwardCommand($exp_gui);
281 case 'ilobjectcopygui':
283 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
286 $this->ctrl->forwardCommand($cp);
289 case "ilglossaryforeigntermcollectorgui":
290 $this->ctrl->setReturn($this,
"");
295 include_once(
"./Modules/Glossary/classes/class.ilGlossaryForeignTermCollectorGUI.php");
297 $this->ctrl->forwardCommand($coll);
301 $cmd = $this->ctrl->getCmd(
"listTerms");
303 if (($cmd ==
"create") && (
$_POST[
"new_type"] ==
"term")) {
304 $this->ctrl->setCmd(
"create");
305 $this->ctrl->setCmdClass(
"ilGlossaryTermGUI");
309 if (!in_array($cmd, array(
"quickList"))) {
310 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui" ||
320 if ($cmd ==
"redrawHeaderAction") {
321 $cmd =
"redrawHeaderActionObject";
325 $ret = $this->$cmd();
330 if (!in_array($cmd, array(
"quickList"))) {
331 if (strtolower(
$_GET[
"baseClass"]) !=
"iladministrationgui") {
337 $this->tpl->show(
false);
343 include_once(
"./Modules/Glossary/classes/class.ilObjGlossary.php");
360 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
362 $form->setTarget(
"_top");
363 $form->setFormAction($this->ctrl->getFormAction($this));
364 $form->setTitle($this->lng->txt($a_new_type .
"_new"));
370 $ti->setRequired(
true);
381 "none" => $this->lng->txt(
"glo_mode_normal"),
382 "level" => $this->lng->txt(
"glo_mode_level"),
383 "subtree" => $this->lng->txt(
"glo_mode_subtree")
387 $tm->setInfo($this->lng->txt(
"glo_mode_desc"));
388 $tm->setRequired(
true);
391 $form->addCommandButton(
"save", $this->lng->txt($a_new_type .
"_add"));
392 $form->addCommandButton(
"cancel", $this->lng->txt(
"cancel"));
409 $new_type = $_REQUEST[
"new_type"];
413 $ilErr->raiseError($this->lng->txt(
"no_create_permission"),
$ilErr->MESSAGE);
416 $this->lng->loadLanguageModule($new_type);
417 $this->ctrl->setParameter($this,
"new_type", $new_type);
420 if (
$form->checkInput()) {
421 $this->ctrl->setParameter($this,
"new_type",
"");
423 include_once(
"./Modules/Glossary/classes/class.ilObjGlossary.php");
425 $newObj->setType($new_type);
426 $newObj->setTitle(
$form->getInput(
"title"));
427 $newObj->setDescription(
$form->getInput(
"desc"));
428 $newObj->setVirtualMode(
$form->getInput(
"glo_mode"));
434 ilUtil::sendSuccess($this->lng->txt(
"glo_added"),
true);
435 ilUtil::redirect(
"ilias.php?baseClass=ilGlossaryEditorGUI&ref_id=" . $newObj->getRefId());
439 $form->setValuesByPost();
440 $this->tpl->setContent(
$form->getHtml());
454 $this->lng->loadLanguageModule(
"meta");
455 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
458 $info->enablePrivateNotes();
460 if ($this->access->checkAccess(
"write",
"",
$_GET[
"ref_id"])) {
461 $info->enableNewsEditing();
463 $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
464 if ($enable_internal_rss) {
465 $info->setBlockProperty(
"news",
"settings",
true);
468 $info->addMetaDataSections($this->object->getId(), 0, $this->
object->getType());
472 $this->ctrl->forwardCommand(
$info);
485 $lng = $DIC->language();
486 $ilAccess = $DIC->access();
488 $info->addSection(
$lng->txt(
"glo_usages"));
489 include_once(
"./Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php");
491 foreach ($sms as $sm) {
494 foreach ($refs as $ref) {
495 if ($link ===
false) {
496 if ($ilAccess->checkAccess(
"write",
"", $ref)) {
497 include_once(
"./Services/Link/classes/class.ilLink.php");
504 if ($link !==
false) {
505 $entry =
"<a href='" . $link .
"' target='_top'>" . $entry .
"</a>";
508 $info->addProperty(
$lng->txt(
"obj_sahs"), $entry);
517 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui") {
518 parent::viewObject();
522 if (!$this->rbacsystem->checkAccess(
"visible,read", $this->object->getRefId())) {
523 $ilErr->raiseError($this->lng->txt(
"permission_denied"),
$ilErr->MESSAGE);
541 include_once
'Modules/Glossary/classes/class.ilECSGlossarySettings.php';
543 $ecs->addSettingsToForm($this->form,
'glo');
545 $this->tpl->setContent($this->form->getHTML());
557 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
562 $title->setRequired(
true);
563 $this->form->addItem(
$title);
567 $this->form->addItem($desc);
569 $this->lng->loadLanguageModule(
"rep");
571 $section->setTitle($this->lng->txt(
'rep_activation_availability'));
577 $online->setInfo($this->lng->txt(
"glo_online_info"));
578 $this->form->addItem($online);
581 $section->setTitle($this->lng->txt(
'glo_content_settings'));
587 $op1 =
new ilRadioOption($this->lng->txt(
"glo_mode_normal"),
"none", $this->lng->txt(
"glo_mode_normal_info"));
588 $glo_mode->addOption($op1);
589 $op2 =
new ilRadioOption($this->lng->txt(
"glo_mode_level"),
"level", $this->lng->txt(
"glo_mode_level_info"));
590 $glo_mode->addOption($op2);
591 $op3 =
new ilRadioOption($this->lng->txt(
"glo_mode_subtree"),
"subtree", $this->lng->txt(
"glo_mode_subtree_info"));
592 $glo_mode->addOption($op3);
593 $this->form->addItem($glo_mode);
608 $section->setTitle($this->lng->txt(
'cont_presentation'));
612 $obj_service->commonSettings()->legacyForm($this->form, $this->
object)->addTileImage();
617 $op1 =
new ilRadioOption($this->lng->txt(
"glo_table_form"),
"table", $this->lng->txt(
"glo_table_form_info"));
620 $snl =
new ilNumberInputGUI($this->lng->txt(
"glo_text_snippet_length"),
"snippet_length");
621 $snl->setMaxValue(3000);
622 $snl->setMinValue(100);
623 $snl->setMaxLength(4);
625 $snl->
setInfo($this->lng->txt(
"glo_text_snippet_length_info"));
629 $pres_mode->addOption($op1);
630 $op2 =
new ilRadioOption($this->lng->txt(
"glo_full_definitions"),
"full_def", $this->lng->txt(
"glo_full_definitions_info"));
631 $pres_mode->addOption($op2);
632 $this->form->addItem($pres_mode);
635 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
637 if (count($tax_ids) > 0) {
639 $show_tax->
setInfo($this->lng->txt(
"glo_show_taxonomy_info"));
640 $this->form->addItem($show_tax);
644 $down =
new ilCheckboxInputGUI($this->lng->txt(
"cont_downloads"),
"glo_act_downloads");
646 $down->setInfo($this->lng->txt(
"cont_downloads_desc"));
647 $this->form->addItem($down);
649 if ($a_mode ==
"edit") {
650 $title->setValue($this->object->getTitle());
651 $desc->setValue($this->object->getDescription());
652 $online->setChecked($this->object->getOnline());
653 $glo_mode->setValue($this->object->getVirtualMode());
654 $pres_mode->setValue($this->object->getPresentationMode());
655 $snl->
setValue($this->object->getSnippetLength());
656 if (count($tax_ids) > 0) {
657 $show_tax->setChecked($this->object->getShowTaxonomy());
660 $down->setChecked($this->object->isActiveDownloads());
664 $feat->setTitle($this->lng->txt(
'obj_features'));
665 $this->form->addItem($feat);
667 include_once
'./Services/Container/classes/class.ilContainer.php';
668 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
670 $this->object->getId(),
679 include_once(
"./Modules/Glossary/classes/class.ilGlossaryAdvMetaDataAdapter.php");
681 $cols = $adv_ap->getColumnOrder();
682 if (count($cols) > 1) {
683 include_once
'./Modules/Glossary/classes/class.ilGloAdvColSortInputGUI.php';
685 $this->form->addItem($ti);
690 $this->form->addCommandButton(
"saveProperties", $this->lng->txt(
"save"));
692 $this->form->setTitle($this->lng->txt(
"cont_glo_properties"));
693 $this->form->setFormAction($this->ctrl->getFormAction($this));
705 if ($this->form->checkInput()) {
706 $this->
object->setTitle(
$_POST[
'title']);
707 $this->
object->setDescription(
$_POST[
'description']);
709 $this->
object->setVirtualMode(
$_POST[
"glo_mode"]);
712 $this->
object->setPresentationMode(
$_POST[
"pres_mode"]);
713 $this->
object->setSnippetLength(
$_POST[
"snippet_length"]);
714 $this->
object->setShowTaxonomy(
$_POST[
"show_tax"]);
715 $this->
object->update();
718 $obj_service->commonSettings()->legacyForm($this->form, $this->
object)->saveTileImage();
721 include_once(
"./Modules/Glossary/classes/class.ilGlossaryAdvMetaDataAdapter.php");
723 $cols = $adv_ap->getColumnOrder();
724 if (count($cols) > 1) {
725 $adv_ap->saveColumnOrder(
$_POST[
"field_order"]);
729 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
732 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
734 $this->object->getId(),
742 include_once
'Modules/Glossary/classes/class.ilECSGlossarySettings.php';
744 if ($ecs->handleSettingsUpdate()) {
745 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
746 $this->ctrl->redirect($this,
"properties");
749 $this->form->setValuesByPost();
750 $this->tpl->setContent($this->form->getHTML());
759 if (
$_GET[
"show_tax"]) {
764 include_once(
"./Services/Form/classes/class.ilTextInputGUI.php");
765 $ti =
new ilTextInputGUI($this->lng->txt(
"cont_new_term"),
"new_term");
768 $this->toolbar->addInputItem($ti,
true);
771 $this->lng->loadLanguageModule(
"meta");
776 $s_lang = $this->
user->getLanguage();
778 include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
781 $si->setValue($s_lang);
782 $this->toolbar->addInputItem(
$si,
true);
784 $this->toolbar->setFormAction($this->ctrl->getFormAction($this));
785 $this->toolbar->addFormButton($this->lng->txt(
"glo_add_new_term"),
"addTerm");
787 $this->toolbar->addSeparator();
790 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
791 if ($this->
user->clipboardHasObjectsOfType(
"term")) {
792 $this->toolbar->addButton(
793 $this->lng->txt(
"paste"),
794 $this->ctrl->getLinkTarget($this,
"pasteTerms")
796 $this->toolbar->addButton(
797 $this->lng->txt(
"clear_clipboard"),
798 $this->ctrl->getLinkTarget($this,
"clearClipboard")
801 $this->toolbar->addButton(
802 $this->lng->txt(
"glo_add_from_other"),
803 $this->ctrl->getLinkTargetByClass(
"ilglossaryforeigntermcollectorgui",
"")
807 if (is_object($this->tax)) {
808 $this->toolbar->addSeparator();
809 if (
$_GET[
"show_tax"]) {
810 $this->toolbar->addButton(
811 $this->lng->txt(
"glo_hide_taxonomy"),
812 $this->ctrl->getLinkTarget($this,
"deactTaxonomy")
815 $this->toolbar->addButton(
816 $this->lng->txt(
"glo_show_taxonomy"),
817 $this->ctrl->getLinkTarget($this,
"actTaxonomy")
822 include_once(
"./Modules/Glossary/classes/class.ilTermListTableGUI.php");
824 $this->tpl->setContent(
$tab->getHTML());
835 $this->ctrl->setParameter($this,
"show_tax", 1);
836 $this->ctrl->redirect($this,
"listTerms");
847 $this->ctrl->setParameter($this,
"show_tax",
"");
848 $this->ctrl->redirect($this,
"listTerms");
863 $notoperations = array();
864 $operations = array();
868 if (count($operations) > 0) {
869 foreach ($operations as $val) {
870 $this->tpl->setCurrentBlock(
"tbl_action_btn");
871 $this->tpl->setVariable(
"BTN_NAME", $val[
"name"]);
872 $this->tpl->setVariable(
"BTN_VALUE", $this->lng->txt($val[
"lng"]));
873 $this->tpl->parseCurrentBlock();
876 $this->tpl->setCurrentBlock(
"tbl_action_row");
878 $this->tpl->parseCurrentBlock();
887 if (trim(
$_POST[
"new_term"]) ==
"") {
889 $this->ctrl->redirect($this,
"listTerms");
893 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
895 $term->setGlossary($this->
object);
907 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"term_id",
$term->getId());
908 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"def",
$def->getId());
909 $this->ctrl->redirectByClass(array(
"ilglossarytermgui",
910 "iltermdefinitioneditorgui",
"ilglossarydefpagegui"),
"edit");
918 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
921 $definition->moveUp();
923 $this->ctrl->redirect($this,
"listTerms");
931 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
934 $definition->moveDown();
936 $this->ctrl->redirect($this,
"listTerms");
953 $this->ctrl->setParameterByClass(
958 $link =
"[<a href='" .
959 $this->ctrl->getLinkTargetByClass(
"ilglossarytermgui",
"listUsages") .
960 "'>" . $this->lng->txt(
"glo_list_usages") .
"</a>]";
961 $add =
"<br/>" . sprintf($this->lng->txt(
"glo_term_is_used_n_times"), $nr) .
" " . $link;
964 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
966 $cgui->setHeaderText($this->lng->txt(
"info_delete_sure") . $add);
968 $cgui->setFormAction($this->ctrl->getFormAction($this));
969 $cgui->setCancel($this->lng->txt(
"cancel"),
"cancelDefinitionDeletion");
970 $cgui->setConfirm($this->lng->txt(
"confirm"),
"deleteDefinition");
976 $this->tpl->setCurrentBlock(
"SyntaxStyle");
977 $this->tpl->setVariable(
978 "LOCATION_SYNTAX_STYLESHEET",
981 $this->tpl->parseCurrentBlock();
986 $page_gui->setStyleId($this->object->getStyleSheetId());
987 $page_gui->setSourcecodeDownloadScript(
"ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" .
$_GET[
"ref_id"]);
988 $page_gui->setFileDownloadLink(
"ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" .
$_GET[
"ref_id"]);
989 $page_gui->setFullscreenLink(
"ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" .
$_GET[
"ref_id"]);
990 $output = $page_gui->preview();
994 $this->tpl->setContent($cgui->getHTML());
999 $this->ctrl->redirect($this,
"listTerms");
1006 $definition->delete();
1007 $this->ctrl->redirect($this,
"listTerms");
1029 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
1030 $this->ctrl->redirect($this,
"listTerms");
1042 require_once(
"./Modules/Glossary/classes/class.ilGlossaryExport.php");
1044 $glo_exp->buildExportFile();
1045 $this->ctrl->redirectByClass(
"ilexportgui",
"");
1053 require_once(
"./Modules/Glossary/classes/class.ilGlossaryExport.php");
1055 $glo_exp->buildExportFile();
1057 $this->ctrl->redirectByClass(
"ilexportgui",
"");
1067 if (!isset(
$_POST[
"file"])) {
1068 $ilErr->raiseError($this->lng->txt(
"no_checkbox"),
$ilErr->MESSAGE);
1070 if (count(
$_POST[
"file"]) > 1) {
1071 $ilErr->raiseError($this->lng->txt(
"cont_select_max_one_item"),
$ilErr->MESSAGE);
1074 $file = explode(
":",
$_POST[
"file"][0]);
1075 $export_dir = $this->
object->getExportDirectory($file[0]);
1077 if ($this->object->getPublicExportFile($file[0]) ==
1079 $this->
object->setPublicExportFile($file[0],
"");
1081 $this->
object->setPublicExportFile($file[0], $file[1]);
1083 $this->
object->update();
1084 $this->ctrl->redirectByClass(
"ilexportgui",
"");
1100 if (!isset(
$_POST[
"id"])) {
1102 $this->ctrl->redirect($this,
"listTerms");
1106 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
1107 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1112 $this->ctrl->redirect($this,
"listTerms");
1117 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
1119 $cgui->setFormAction($this->ctrl->getFormAction($this));
1120 $cgui->setHeaderText($this->lng->txt(
"info_delete_sure"));
1121 $cgui->setCancel($this->lng->txt(
"cancel"),
"cancelTermDeletion");
1122 $cgui->setConfirm($this->lng->txt(
"confirm"),
"deleteTerms");
1124 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1132 $this->ctrl->setParameterByClass(
1133 "ilglossarytermgui",
1139 $add =
" (" . $this->lng->txt(
"glo_term_reference") .
")";
1141 $link =
"[<a href='" .
1142 $this->ctrl->getLinkTargetByClass(
"ilglossarytermgui",
"listUsages") .
1143 "'>" . $this->lng->txt(
"glo_list_usages") .
"</a>]";
1144 $add =
"<div class='small'>" .
1145 sprintf($this->lng->txt(
"glo_term_is_used_n_times"), $nr) .
" " . $link .
"</div>";
1149 $cgui->addItem(
"id[]", $id,
$term->getTerm() . $add);
1152 $this->tpl->setContent($cgui->getHTML());
1162 $this->ctrl->redirect($this,
"listTerms");
1170 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1181 $this->ctrl->redirect($this,
"listTerms");
1193 if (strtolower(
$_GET[
"baseClass"]) !=
"ilglossaryeditorgui") {
1194 parent::setLocator($a_tree, $a_id);
1196 if (is_object($this->
object)) {
1197 require_once(
"./Modules/Glossary/classes/class.ilGlossaryLocatorGUI.php");
1199 if (is_object($this->term)) {
1200 $gloss_loc->setTerm($this->term);
1202 $gloss_loc->setGlossary($this->
object);
1204 $gloss_loc->display();
1223 switch (
$_POST[
"new_type"]) {
1226 $term_gui->create();
1234 $term_gui->setGlossary($this->
object);
1237 ilUtil::sendSuccess($this->lng->txt(
"cont_added_term"),
true);
1240 $this->ctrl->redirect($this,
"listTerms");
1251 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
1253 if ($term_glo_id != $this->object->getId()) {
1255 $this->ctrl->redirect($this,
"listTerms");
1259 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
1268 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"term_id",
$term->getId());
1269 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"def",
$def->getId());
1270 $this->ctrl->redirectByClass(array(
"ilglossarytermgui",
1271 "iltermdefinitioneditorgui",
"ilglossarydefpagegui"),
"edit");
1276 $this->tpl->getStandardTemplate();
1278 $title = $this->
object->getTitle();
1281 if ($this->term_id > 0) {
1282 $this->tpl->setTitle($this->lng->txt(
"term") .
": " .
1285 parent::setTitleAndDescription();
1287 $this->tpl->setTitle($this->lng->txt(
"glo") .
": " .
$title);
1304 $this->help->setScreenIdComponent(
"glo");
1307 $force_active = (
$_GET[
"cmd"] ==
"" ||
$_GET[
"cmd"] ==
"listTerms")
1310 $this->tabs_gui->addTarget(
1312 $this->ctrl->getLinkTarget($this,
"listTerms"),
1313 array(
"listTerms",
""),
1319 $force_active =
false;
1320 if ($this->ctrl->getCmd() ==
"showSummary" ||
1321 strtolower($this->ctrl->getNextClass()) ==
"ilinfoscreengui") {
1322 $force_active =
true;
1324 $this->tabs_gui->addTarget(
1326 $this->ctrl->getLinkTargetByClass(
"ilinfoscreengui",
"showSummary"),
1334 if ($this->rbacsystem->checkAccess(
'write', $this->object->getRefId())) {
1335 $this->tabs_gui->addTarget(
1337 $this->ctrl->getLinkTarget($this,
"properties"),
1343 include_once
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
1345 $mdtab = $mdgui->getTab();
1347 $this->tabs_gui->addTarget(
1351 "ilobjectmetadatagui" 1361 $this->tabs_gui->addTarget(
1363 $this->ctrl->getLinkTargetByClass(
"ilexportgui",
""),
1370 if ($this->rbacsystem->checkAccess(
'edit_permission', $this->object->getRefId())) {
1376 $this->tabs_gui->addTarget(
1378 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'),
"perm"),
1379 array(
"perm",
"info",
"owner"),
1384 $this->tabs_gui->addNonTabbedLink(
1385 "presentation_view",
1386 $this->lng->txt(
"glo_presentation_view"),
1387 "ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" . $this->
object->getRefID(),
1399 array(
"general_settings",
"style",
"taxonomy",
"glossaries")
1402 $this->tabs->addSubTab(
1404 $this->lng->txt(
"settings"),
1405 $this->ctrl->getLinkTarget($this,
'properties')
1409 $this->tabs->addSubTab(
1411 $this->lng->txt(
"obj_sty"),
1412 $this->ctrl->getLinkTarget($this,
'editStyleProperties')
1416 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
1418 $this->tabs->addSubTab(
1420 $this->lng->txt(
"tax_taxonomy"),
1421 $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui",
'')
1425 $this->tabs->addSubTab(
1427 $this->lng->txt(
"cont_auto_glossaries"),
1428 $this->ctrl->getLinkTarget($this,
'editGlossaries')
1431 $this->tabs->activateSubTab($a_active);
1445 $lng = $DIC->language();
1446 $ilAccess = $DIC->access();
1449 if ($ilAccess->checkAccess(
"read",
"", $a_target)) {
1450 $_GET[
"ref_id"] = $a_target;
1451 $_GET[
"baseClass"] =
"ilGlossaryPresentationGUI";
1452 include(
"ilias.php");
1454 } elseif ($ilAccess->checkAccess(
"visible",
"", $a_target)) {
1455 $_GET[
"ref_id"] = $a_target;
1456 $_GET[
"cmd"] =
"infoScreen";
1457 $_GET[
"baseClass"] =
"ilGlossaryPresentationGUI";
1458 include(
"ilias.php");
1460 } elseif ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
1462 $lng->txt(
"msg_no_perm_read_item"),
1476 include_once(
"./Modules/Glossary/classes/class.ilTermListTableGUI.php");
1478 $prtab->resetOffset();
1479 $prtab->writeFilterToSession();
1489 include_once(
"./Modules/Glossary/classes/class.ilTermListTableGUI.php");
1491 $prtab->resetOffset();
1492 $prtab->resetFilter();
1506 if ($a_tpl != null) {
1512 $ctpl->setCurrentBlock(
"ContentStyle");
1514 "LOCATION_CONTENT_STYLESHEET",
1517 $ctpl->parseCurrentBlock();
1529 $this->tpl->setContent($this->form->getHTML());
1531 $this->tabs->activateTab(
"settings");
1540 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1541 $this->lng->loadLanguageModule(
"style");
1543 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
1546 $fixed_style = $this->setting->get(
"fixed_content_style_id");
1547 $style_id = $this->
object->getStyleSheetId();
1549 if ($fixed_style > 0) {
1552 $this->lng->txt(
"global_fixed") .
")");
1553 $this->form->addItem($st);
1561 $st_styles[0] = $this->lng->txt(
"default");
1564 if ($style_id > 0) {
1569 $this->form->addItem($st);
1574 $this->form->addCommandButton(
1576 $this->lng->txt(
"style_edit_style")
1578 $this->form->addCommandButton(
1580 $this->lng->txt(
"style_delete_style")
1594 $style_sel =
new ilSelectInputGUI($this->lng->txt(
"style_current_style"),
"style_id");
1596 $style_sel->setValue($style_id);
1597 $this->form->addItem($style_sel);
1599 $this->form->addCommandButton(
1600 "saveStyleSettings",
1601 $this->lng->txt(
"save")
1603 $this->form->addCommandButton(
1605 $this->lng->txt(
"sty_create_ind_style")
1609 $this->form->setTitle($this->lng->txt(
"glo_style"));
1610 $this->form->setFormAction($this->ctrl->getFormAction($this));
1618 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"create");
1626 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
1634 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"delete");
1642 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1643 if ($this->setting->get(
"fixed_content_style_id") <= 0 &&
1645 || $this->object->getStyleSheetId() == 0)) {
1647 $this->
object->update();
1648 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
1650 $this->ctrl->redirect($this,
"editStyleProperties");
1658 if ($this->object->getPublicExportFile(
$a_type) == $a_file) {
1659 return $this->lng->txt(
"yes");
1673 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
1675 if (count($tax_ids) > 0) {
1676 include_once(
"./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php");
1684 if (!$tax_exp->handleCommand()) {
1686 $this->tpl->setLeftNavContent($tax_exp->getHTML() .
" ");
1703 $this->tabs->setTabActive(
"settings");
1706 $this->toolbar->addButton(
1707 $this->lng->txt(
"add"),
1708 $this->ctrl->getLinkTarget($this,
"showGlossarySelector")
1711 include_once(
"./Modules/Glossary/classes/class.ilGlossaryAutoLinkTableGUI.php");
1714 $this->tpl->setContent(
$tab->getHTML());
1725 $this->tabs->setTabActive(
"settings");
1728 include_once
'Services/Search/classes/class.ilSearchRootSelector.php';
1731 $exp->
setExpand(
$_GET[
"search_root_expand"] ?
$_GET[
"search_root_expand"] : $this->tree->readRootId());
1732 $exp->setExpandTarget($this->ctrl->getLinkTarget($this,
'showGlossarySelector'));
1733 $exp->setTargetClass(get_class($this));
1734 $exp->setCmd(
'confirmGlossarySelection');
1735 $exp->setClickableTypes(array(
"glo"));
1736 $exp->addFilter(
"glo");
1740 $this->tpl->setContent($exp->getOutput());
1748 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
1750 $this->ctrl->setParameter($this,
"glo_ref_id",
$_GET[
"root_id"]);
1751 $cgui->setFormAction($this->ctrl->getFormAction($this));
1752 $cgui->setHeaderText($this->lng->txt(
"glo_link_glo_in_glo"));
1753 $cgui->setCancel($this->lng->txt(
"no"),
"selectGlossary");
1754 $cgui->setConfirm($this->lng->txt(
"yes"),
"selectGlossaryLink");
1755 $this->tpl->setContent($cgui->getHTML());
1766 $glo_ref_id = (int)
$_GET[
"glo_ref_id"];
1768 $this->
object->autoLinkGlossaryTerms($glo_ref_id);
1781 $glos = $this->
object->getAutoGlossaries();
1782 $glo_ref_id = (int)
$_GET[
"glo_ref_id"];
1784 if (!in_array($glo_id, $glos)) {
1787 $this->
object->setAutoGlossaries($glos);
1788 $this->
object->update();
1790 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
1791 $this->ctrl->redirect($this,
"editGlossaries");
1802 $this->
object->removeAutoGlossary((
int)
$_GET[
"glo_id"]);
1803 $this->
object->update();
1805 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
1806 $this->ctrl->redirect($this,
"editGlossaries");
1818 if (!is_array($items)) {
1820 $this->ctrl->redirect($this,
"listTerms");
1823 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
1824 $this->
user->clipboardDeleteObjectsOfType(
"term");
1827 $time = date(
"Y-m-d H:i:s", time());
1829 foreach ($items as
$id) {
1830 $this->
user->addObjectToClipboard(
1841 ilUtil::sendInfo($this->lng->txt(
"glo_selected_terms_have_been_copied"),
true);
1842 $this->ctrl->redirect($this,
"listTerms");
1854 if (!is_array($items)) {
1856 $this->ctrl->redirect($this,
"listTerms");
1859 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
1860 $this->
user->clipboardDeleteObjectsOfType(
"term");
1863 $time = date(
"Y-m-d H:i:s", time());
1865 foreach ($items as
$id) {
1866 $this->
user->addObjectToClipboard(
1877 ilUtil::sendInfo($this->lng->txt(
"glo_selected_terms_have_been_copied"),
true);
1878 $this->ctrl->redirect($this,
"listTerms");
1890 $this->
user->clipboardDeleteObjectsOfType(
"term");
1891 $this->ctrl->redirect($this,
"listTerms");
1899 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
1901 foreach ($this->
user->getClipboardObjects(
"term") as $item) {
1906 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1908 foreach ($this->
user->getClipboardObjects(
"term") as $item) {
1913 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
1914 $this->ctrl->redirect($this,
"listTerms");
__construct($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
Constructor public.
static getInstance(ilObjGlossaryGUI $a_glossary_gui)
Get instance.
static getInstance()
Get instance.
This class represents an option in a radio group.
showInfoScreen()
Show info screen.
saveObject()
save new content object to db
static isReferenced($a_glo_id, $a_term_id)
Is a term referenced by one or multiple glossaries.
setSettingsSubTabs($a_active)
Set sub tabs.
setValue($a_value)
Set Value.
setTemplateOutput($a_output=true)
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
cancelTermDeletion()
cancel deletion of object
deleteTerm($a_term_id)
Delete term.
GUI class for the workflow of copying objects.
const TITLE_LENGTH
max length of object title
deleteTerms()
delete selected terms
editGlossaries()
Edit automatically linked glossaries.
static getNumberOfUsages($a_term_id)
Get number of usages.
moveDefinitionUp()
move a definiton up
cancelDefinitionDeletion()
initSettingsForm($a_mode="edit")
Init settings form.
Taxonomy explorer GUI class.
if(!array_key_exists('StateId', $_REQUEST)) $id
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
executeCommand()
execute command
static _lookupTitle($a_id)
lookup object title
static _getStandardStyles( $a_exclude_default_style=false, $a_include_deactivated=false, $a_scope=0)
Get standard styles.
removeGlossary()
Remove lm glossary.
exportHTML()
create html package
createObject()
create new object form
export()
export content object
addTerm($a_term_id)
Add term.
showActions($a_actions)
show possible action (form buttons)
resetFilter()
Reset filter (note: this function existed before data table filter has been introduced.
setInfo($a_info)
Set Info.
static _getAllReferences($a_id)
get all reference ids of object
deleteStyle()
Delete Style.
editStyleProperties()
Edit style properties.
showTaxonomy()
Show taxonomy.
static _lookupStandard($a_id)
Lookup standard flag.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
Export User Interface Class.
moveDefinitionDown()
move a definiton down
prepareOutput($a_show_subobjects=true)
prepare output
TableGUI class for auto link glossaries.
setValue($a_value)
Set Value.
deactTaxonomy()
Hide Taxonomy.
if(isset($_POST['submit'])) $form
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
confirmGlossarySelection()
Confirm glossary selection.
actTaxonomy()
Show Taxonomy.
selectGlossaryLink()
Select a glossary and link all its terms.
create()
create new (subobject) in glossary
Class ilObjectGUI Basic methods of all Output classes.
static _lookupObjId($a_id)
saveProperties()
save properties
omitLocator($a_omit=true)
setSize($a_size)
Set Size.
static addUsagesToInfo($info, $glo_id)
Add usages to info.
This class represents a text property in a property form.
setCols($a_cols)
Set Cols.
GUI class for glossary terms.
setMaxLength($a_maxlength)
Set Max Length.
confirmTermDeletion()
confirm term deletion
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static getSyntaxStylePath()
get syntax style path
static getContentStylePath($a_style_id, $add_random=true)
get content style path
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
initCreateForm($a_new_type)
addDefinition()
add definition
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
setLocator($a_tree="", $a_id="")
set Locator
static stripSlashesArray($a_arr, $a_strip_html=true, $a_allow="")
Strip slashes from array.
static _lookGlossaryID($term_id)
get glossary id form term id
Class ilGlossaryDefinition.
createStyle()
Create Style.
static _copyTerm($a_term_id, $a_glossary_id)
Copy a term to a glossary.
setContentStyleSheet($a_tpl=null)
Set content style sheet.
static getScormModulesForGlossary($a_glo_id)
Get SCORM modules that assign a certain glossary.
properties()
edit properties of object (admin form)
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.
This class represents a non editable value in a property form.
Class ilObjStyleSheetGUI.
static _goto($a_target)
redirect script
This class represents a text area property in a property form.
Glossary definition page GUI class.
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
selectGlossary()
Select lm glossary.
for($i=1; $i<=count($kw_cases_sel); $i+=1) $lang
getCreationMode()
get creation mode
referenceTerms()
Reference terms.
putObjectInTree(ilObject $a_obj, $a_parent_node_id=null)
Add object to tree at given position.
confirmDefinitionDeletion()
deletion confirmation screen
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static getLogger($a_component_id)
Get component logger.
Export class for content objects.
getObjectService()
Get object service.
getPublicAccessColValue($a_type, $a_file)
Get public access value for export table.
static yn2tf($a_yn)
convert "y"/"n" to true/false
applyFilter()
Apply filter.
showGlossarySelector()
Select LM Glossary.
static setAction($a_action)
publishExportFile()
download export file
static redirect($a_script)
addHeaderAction()
Add header action menu.
saveStyleSettings()
Save style settings.
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
static _lookGlossaryTerm($term_id)
get glossary term
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
static setShortTextsDirty($a_glo_id)
Set short texts dirty.
setExpand($a_node_id)
set the expand option this value is stored in a SESSION variable to save it different view (lo view...
for($i=6; $i< 13; $i++) for($i=1; $i< 13; $i++) $d
Class ilECSGlossarySettings.
initStylePropertiesForm()
Init style properties form.
Confirmation screen class.
clearClipboard()
Clear clipboard.
static loadLanguageModule()
Load language module.