5require_once(
"./Services/Object/classes/class.ilObjectGUI.php");
6require_once(
"./Modules/Glossary/classes/class.ilObjGlossary.php");
7require_once(
"./Modules/Glossary/classes/class.ilGlossaryTermGUI.php");
8require_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
9require_once(
"./Modules/Glossary/classes/class.ilTermDefinitionEditorGUI.php");
10require_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)
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);
196 $style_gui->omitLocator();
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")
386 $tm->setOptions($stati);
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"));
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);
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());
555 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
560 $title->setRequired(
true);
561 $this->form->addItem(
$title);
565 $this->form->addItem($desc);
567 $this->lng->loadLanguageModule(
"rep");
569 $section->setTitle($this->lng->txt(
'rep_activation_availability'));
574 $online->setValue(
"y");
575 $online->setInfo($this->lng->txt(
"glo_online_info"));
576 $this->form->addItem($online);
579 $section->setTitle($this->lng->txt(
'glo_content_settings'));
585 $op1 =
new ilRadioOption($this->lng->txt(
"glo_mode_normal"),
"none", $this->lng->txt(
"glo_mode_normal_info"));
586 $glo_mode->addOption($op1);
587 $op2 =
new ilRadioOption($this->lng->txt(
"glo_mode_level"),
"level", $this->lng->txt(
"glo_mode_level_info"));
588 $glo_mode->addOption($op2);
589 $op3 =
new ilRadioOption($this->lng->txt(
"glo_mode_subtree"),
"subtree", $this->lng->txt(
"glo_mode_subtree_info"));
590 $glo_mode->addOption($op3);
591 $this->form->addItem($glo_mode);
606 $section->setTitle($this->lng->txt(
'cont_presentation'));
611 $pres_mode->setValue(
"table");
612 $op1 =
new ilRadioOption($this->lng->txt(
"glo_table_form"),
"table", $this->lng->txt(
"glo_table_form_info"));
615 $snl =
new ilNumberInputGUI($this->lng->txt(
"glo_text_snippet_length"),
"snippet_length");
616 $snl->setMaxValue(3000);
617 $snl->setMinValue(100);
618 $snl->setMaxLength(4);
620 $snl->setInfo($this->lng->txt(
"glo_text_snippet_length_info"));
622 $op1->addSubItem($snl);
624 $pres_mode->addOption($op1);
625 $op2 =
new ilRadioOption($this->lng->txt(
"glo_full_definitions"),
"full_def", $this->lng->txt(
"glo_full_definitions_info"));
626 $pres_mode->addOption($op2);
627 $this->form->addItem($pres_mode);
630 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
632 if (count($tax_ids) > 0) {
634 $show_tax->setInfo($this->lng->txt(
"glo_show_taxonomy_info"));
635 $this->form->addItem($show_tax);
639 $down =
new ilCheckboxInputGUI($this->lng->txt(
"cont_downloads"),
"glo_act_downloads");
640 $down->setValue(
"y");
641 $down->setInfo($this->lng->txt(
"cont_downloads_desc"));
642 $this->form->addItem($down);
644 if ($a_mode ==
"edit") {
645 $title->setValue($this->object->getTitle());
646 $desc->setValue($this->object->getDescription());
647 $online->setChecked($this->object->getOnline());
648 $glo_mode->setValue($this->object->getVirtualMode());
649 $pres_mode->setValue($this->object->getPresentationMode());
650 $snl->setValue($this->object->getSnippetLength());
651 if (count($tax_ids) > 0) {
652 $show_tax->setChecked($this->object->getShowTaxonomy());
655 $down->setChecked($this->object->isActiveDownloads());
659 $feat->setTitle($this->lng->txt(
'obj_features'));
660 $this->form->addItem($feat);
662 include_once
'./Services/Container/classes/class.ilContainer.php';
663 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
665 $this->object->getId(),
674 include_once(
"./Modules/Glossary/classes/class.ilGlossaryAdvMetaDataAdapter.php");
676 $cols = $adv_ap->getColumnOrder();
677 if (count(
$cols) > 1) {
678 include_once
'./Modules/Glossary/classes/class.ilGloAdvColSortInputGUI.php';
680 $this->form->addItem($ti);
681 $ti->setValue(
$cols);
685 $this->form->addCommandButton(
"saveProperties", $this->lng->txt(
"save"));
687 $this->form->setTitle($this->lng->txt(
"cont_glo_properties"));
688 $this->form->setFormAction($this->ctrl->getFormAction($this));
698 if ($this->form->checkInput()) {
699 $this->
object->setTitle(
$_POST[
'title']);
700 $this->
object->setDescription(
$_POST[
'description']);
702 $this->
object->setVirtualMode(
$_POST[
"glo_mode"]);
705 $this->
object->setPresentationMode(
$_POST[
"pres_mode"]);
706 $this->
object->setSnippetLength(
$_POST[
"snippet_length"]);
707 $this->
object->setShowTaxonomy(
$_POST[
"show_tax"]);
708 $this->
object->update();
711 include_once(
"./Modules/Glossary/classes/class.ilGlossaryAdvMetaDataAdapter.php");
713 $cols = $adv_ap->getColumnOrder();
714 if (count(
$cols) > 1) {
715 $adv_ap->saveColumnOrder(
$_POST[
"field_order"]);
719 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
722 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
724 $this->object->getId(),
732 include_once
'Modules/Glossary/classes/class.ilECSGlossarySettings.php';
734 if ($ecs->handleSettingsUpdate()) {
736 $this->ctrl->redirect($this,
"properties");
739 $this->form->setValuesByPost();
740 $this->tpl->setContent($this->form->getHTML());
749 if (
$_GET[
"show_tax"]) {
754 include_once(
"./Services/Form/classes/class.ilTextInputGUI.php");
755 $ti =
new ilTextInputGUI($this->lng->txt(
"cont_new_term"),
"new_term");
756 $ti->setMaxLength(80);
758 $this->toolbar->addInputItem($ti,
true);
761 $this->lng->loadLanguageModule(
"meta");
766 $s_lang = $this->
user->getLanguage();
768 include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
771 $si->setValue($s_lang);
772 $this->toolbar->addInputItem(
$si,
true);
774 $this->toolbar->setFormAction($this->ctrl->getFormAction($this));
775 $this->toolbar->addFormButton($this->lng->txt(
"glo_add_new_term"),
"addTerm");
777 $this->toolbar->addSeparator();
780 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
781 if ($this->
user->clipboardHasObjectsOfType(
"term")) {
782 $this->toolbar->addButton(
783 $this->lng->txt(
"paste"),
784 $this->ctrl->getLinkTarget($this,
"pasteTerms")
786 $this->toolbar->addButton(
787 $this->lng->txt(
"clear_clipboard"),
788 $this->ctrl->getLinkTarget($this,
"clearClipboard")
791 $this->toolbar->addButton(
792 $this->lng->txt(
"glo_add_from_other"),
793 $this->ctrl->getLinkTargetByClass(
"ilglossaryforeigntermcollectorgui",
"")
797 if (is_object($this->tax)) {
798 $this->toolbar->addSeparator();
799 if (
$_GET[
"show_tax"]) {
800 $this->toolbar->addButton(
801 $this->lng->txt(
"glo_hide_taxonomy"),
802 $this->ctrl->getLinkTarget($this,
"deactTaxonomy")
805 $this->toolbar->addButton(
806 $this->lng->txt(
"glo_show_taxonomy"),
807 $this->ctrl->getLinkTarget($this,
"actTaxonomy")
812 include_once(
"./Modules/Glossary/classes/class.ilTermListTableGUI.php");
814 $this->tpl->setContent(
$tab->getHTML());
825 $this->ctrl->setParameter($this,
"show_tax", 1);
826 $this->ctrl->redirect($this,
"listTerms");
837 $this->ctrl->setParameter($this,
"show_tax",
"");
838 $this->ctrl->redirect($this,
"listTerms");
853 $notoperations = array();
854 $operations = array();
858 if (count($operations) > 0) {
859 foreach ($operations as $val) {
860 $this->tpl->setCurrentBlock(
"tbl_action_btn");
861 $this->tpl->setVariable(
"BTN_NAME", $val[
"name"]);
862 $this->tpl->setVariable(
"BTN_VALUE", $this->lng->txt($val[
"lng"]));
863 $this->tpl->parseCurrentBlock();
866 $this->tpl->setCurrentBlock(
"tbl_action_row");
868 $this->tpl->parseCurrentBlock();
877 if (trim(
$_POST[
"new_term"]) ==
"") {
879 $this->ctrl->redirect($this,
"listTerms");
883 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
885 $term->setGlossary($this->
object);
897 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"term_id",
$term->getId());
898 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"def",
$def->getId());
899 $this->ctrl->redirectByClass(array(
"ilglossarytermgui",
900 "iltermdefinitioneditorgui",
"ilglossarydefpagegui"),
"edit");
908 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
911 $definition->moveUp();
913 $this->ctrl->redirect($this,
"listTerms");
921 include_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
924 $definition->moveDown();
926 $this->ctrl->redirect($this,
"listTerms");
943 $this->ctrl->setParameterByClass(
948 $link =
"[<a href='" .
949 $this->ctrl->getLinkTargetByClass(
"ilglossarytermgui",
"listUsages") .
950 "'>" . $this->lng->txt(
"glo_list_usages") .
"</a>]";
951 $add =
"<br/>" .
sprintf($this->lng->txt(
"glo_term_is_used_n_times"), $nr) .
" " . $link;
954 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
956 $cgui->setHeaderText($this->lng->txt(
"info_delete_sure") . $add);
958 $cgui->setFormAction($this->ctrl->getFormAction($this));
959 $cgui->setCancel($this->lng->txt(
"cancel"),
"cancelDefinitionDeletion");
960 $cgui->setConfirm($this->lng->txt(
"confirm"),
"deleteDefinition");
966 $this->tpl->setCurrentBlock(
"SyntaxStyle");
967 $this->tpl->setVariable(
968 "LOCATION_SYNTAX_STYLESHEET",
971 $this->tpl->parseCurrentBlock();
975 $page_gui->setTemplateOutput(
false);
976 $page_gui->setStyleId($this->object->getStyleSheetId());
977 $page_gui->setSourcecodeDownloadScript(
"ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" .
$_GET[
"ref_id"]);
978 $page_gui->setFileDownloadLink(
"ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" .
$_GET[
"ref_id"]);
979 $page_gui->setFullscreenLink(
"ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" .
$_GET[
"ref_id"]);
980 $output = $page_gui->preview();
984 $this->tpl->setContent($cgui->getHTML());
989 $this->ctrl->redirect($this,
"listTerms");
996 $definition->delete();
997 $this->ctrl->redirect($this,
"listTerms");
1020 $this->ctrl->redirect($this,
"listTerms");
1032 require_once(
"./Modules/Glossary/classes/class.ilGlossaryExport.php");
1034 $glo_exp->buildExportFile();
1035 $this->ctrl->redirectByClass(
"ilexportgui",
"");
1043 require_once(
"./Modules/Glossary/classes/class.ilGlossaryExport.php");
1045 $glo_exp->buildExportFile();
1047 $this->ctrl->redirectByClass(
"ilexportgui",
"");
1057 if (!isset(
$_POST[
"file"])) {
1058 $ilErr->raiseError($this->lng->txt(
"no_checkbox"),
$ilErr->MESSAGE);
1060 if (count(
$_POST[
"file"]) > 1) {
1061 $ilErr->raiseError($this->lng->txt(
"cont_select_max_one_item"),
$ilErr->MESSAGE);
1065 $export_dir = $this->
object->getExportDirectory(
$file[0]);
1067 if ($this->object->getPublicExportFile(
$file[0]) ==
1069 $this->
object->setPublicExportFile(
$file[0],
"");
1071 $this->
object->setPublicExportFile(
$file[0],
$file[1]);
1073 $this->
object->update();
1074 $this->ctrl->redirectByClass(
"ilexportgui",
"");
1090 if (!isset(
$_POST[
"id"])) {
1092 $this->ctrl->redirect($this,
"listTerms");
1096 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
1097 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1102 $this->ctrl->redirect($this,
"listTerms");
1107 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
1109 $cgui->setFormAction($this->ctrl->getFormAction($this));
1110 $cgui->setHeaderText($this->lng->txt(
"info_delete_sure"));
1111 $cgui->setCancel($this->lng->txt(
"cancel"),
"cancelTermDeletion");
1112 $cgui->setConfirm($this->lng->txt(
"confirm"),
"deleteTerms");
1114 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1122 $this->ctrl->setParameterByClass(
1123 "ilglossarytermgui",
1129 $add =
" (" . $this->lng->txt(
"glo_term_reference") .
")";
1131 $link =
"[<a href='" .
1132 $this->ctrl->getLinkTargetByClass(
"ilglossarytermgui",
"listUsages") .
1133 "'>" . $this->lng->txt(
"glo_list_usages") .
"</a>]";
1134 $add =
"<div class='small'>" .
1135 sprintf($this->lng->txt(
"glo_term_is_used_n_times"), $nr) .
" " . $link .
"</div>";
1139 $cgui->addItem(
"id[]",
$id,
$term->getTerm() . $add);
1142 $this->tpl->setContent($cgui->getHTML());
1152 $this->ctrl->redirect($this,
"listTerms");
1160 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1164 $refs->deleteTerm(
$id);
1171 $this->ctrl->redirect($this,
"listTerms");
1183 if (strtolower(
$_GET[
"baseClass"]) !=
"ilglossaryeditorgui") {
1184 parent::setLocator($a_tree, $a_id);
1186 if (is_object($this->
object)) {
1187 require_once(
"./Modules/Glossary/classes/class.ilGlossaryLocatorGUI.php");
1189 if (is_object($this->term)) {
1190 $gloss_loc->setTerm($this->term);
1192 $gloss_loc->setGlossary($this->
object);
1194 $gloss_loc->display();
1213 switch (
$_POST[
"new_type"]) {
1216 $term_gui->create();
1224 $term_gui->setGlossary($this->
object);
1230 $this->ctrl->redirect($this,
"listTerms");
1241 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
1243 if ($term_glo_id != $this->object->getId()) {
1245 $this->ctrl->redirect($this,
"listTerms");
1249 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
1258 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"term_id",
$term->getId());
1259 $this->ctrl->setParameterByClass(
"ilglossarydefpagegui",
"def",
$def->getId());
1260 $this->ctrl->redirectByClass(array(
"ilglossarytermgui",
1261 "iltermdefinitioneditorgui",
"ilglossarydefpagegui"),
"edit");
1266 $this->tpl->getStandardTemplate();
1268 $title = $this->
object->getTitle();
1271 if ($this->term_id > 0) {
1272 $this->tpl->setTitle($this->lng->txt(
"term") .
": " .
1275 parent::setTitleAndDescription();
1277 $this->tpl->setTitle($this->lng->txt(
"glo") .
": " .
$title);
1294 $this->help->setScreenIdComponent(
"glo");
1297 $force_active = (
$_GET[
"cmd"] ==
"" ||
$_GET[
"cmd"] ==
"listTerms")
1300 $this->tabs_gui->addTarget(
1302 $this->ctrl->getLinkTarget($this,
"listTerms"),
1303 array(
"listTerms",
""),
1309 $force_active =
false;
1310 if ($this->ctrl->getCmd() ==
"showSummary" ||
1311 strtolower($this->ctrl->getNextClass()) ==
"ilinfoscreengui") {
1312 $force_active =
true;
1314 $this->tabs_gui->addTarget(
1316 $this->ctrl->getLinkTargetByClass(
"ilinfoscreengui",
"showSummary"),
1324 if ($this->rbacsystem->checkAccess(
'write', $this->object->getRefId())) {
1325 $this->tabs_gui->addTarget(
1327 $this->ctrl->getLinkTarget($this,
"properties"),
1333 include_once
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
1335 $mdtab = $mdgui->getTab();
1337 $this->tabs_gui->addTarget(
1341 "ilobjectmetadatagui"
1351 $this->tabs_gui->addTarget(
1353 $this->ctrl->getLinkTargetByClass(
"ilexportgui",
""),
1360 if ($this->rbacsystem->checkAccess(
'edit_permission', $this->object->getRefId())) {
1366 $this->tabs_gui->addTarget(
1368 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'),
"perm"),
1369 array(
"perm",
"info",
"owner"),
1374 $this->tabs_gui->addNonTabbedLink(
1375 "presentation_view",
1376 $this->lng->txt(
"glo_presentation_view"),
1377 "ilias.php?baseClass=ilGlossaryPresentationGUI&ref_id=" . $this->object->getRefID(),
1389 array(
"general_settings",
"style",
"taxonomy",
"glossaries")
1392 $this->tabs->addSubTab(
1394 $this->lng->txt(
"settings"),
1395 $this->ctrl->getLinkTarget($this,
'properties')
1399 $this->tabs->addSubTab(
1401 $this->lng->txt(
"obj_sty"),
1402 $this->ctrl->getLinkTarget($this,
'editStyleProperties')
1406 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
1408 $this->tabs->addSubTab(
1410 $this->lng->txt(
"tax_taxonomy"),
1411 $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui",
'')
1415 $this->tabs->addSubTab(
1417 $this->lng->txt(
"cont_auto_glossaries"),
1418 $this->ctrl->getLinkTarget($this,
'editGlossaries')
1421 $this->tabs->activateSubTab($a_active);
1436 $ilAccess =
$DIC->access();
1439 if ($ilAccess->checkAccess(
"read",
"", $a_target)) {
1440 $_GET[
"ref_id"] = $a_target;
1441 $_GET[
"baseClass"] =
"ilGlossaryPresentationGUI";
1442 include(
"ilias.php");
1444 } elseif ($ilAccess->checkAccess(
"visible",
"", $a_target)) {
1445 $_GET[
"ref_id"] = $a_target;
1446 $_GET[
"cmd"] =
"infoScreen";
1447 $_GET[
"baseClass"] =
"ilGlossaryPresentationGUI";
1448 include(
"ilias.php");
1450 } elseif ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
1452 $lng->txt(
"msg_no_perm_read_item"),
1466 include_once(
"./Modules/Glossary/classes/class.ilTermListTableGUI.php");
1468 $prtab->resetOffset();
1469 $prtab->writeFilterToSession();
1479 include_once(
"./Modules/Glossary/classes/class.ilTermListTableGUI.php");
1481 $prtab->resetOffset();
1482 $prtab->resetFilter();
1496 if ($a_tpl !=
null) {
1502 $ctpl->setCurrentBlock(
"ContentStyle");
1504 "LOCATION_CONTENT_STYLESHEET",
1507 $ctpl->parseCurrentBlock();
1519 $this->tpl->setContent($this->form->getHTML());
1521 $this->tabs->activateTab(
"settings");
1530 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1531 $this->lng->loadLanguageModule(
"style");
1533 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
1536 $fixed_style = $this->setting->get(
"fixed_content_style_id");
1537 $style_id = $this->
object->getStyleSheetId();
1539 if ($fixed_style > 0) {
1542 $this->lng->txt(
"global_fixed") .
")");
1543 $this->form->addItem($st);
1551 $st_styles[0] = $this->lng->txt(
"default");
1554 if ($style_id > 0) {
1559 $this->form->addItem($st);
1564 $this->form->addCommandButton(
1566 $this->lng->txt(
"style_edit_style")
1568 $this->form->addCommandButton(
1570 $this->lng->txt(
"style_delete_style")
1584 $style_sel =
new ilSelectInputGUI($this->lng->txt(
"style_current_style"),
"style_id");
1585 $style_sel->setOptions($st_styles);
1586 $style_sel->setValue($style_id);
1587 $this->form->addItem($style_sel);
1589 $this->form->addCommandButton(
1590 "saveStyleSettings",
1591 $this->lng->txt(
"save")
1593 $this->form->addCommandButton(
1595 $this->lng->txt(
"sty_create_ind_style")
1599 $this->form->setTitle($this->lng->txt(
"glo_style"));
1600 $this->form->setFormAction($this->ctrl->getFormAction($this));
1608 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"create");
1616 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"edit");
1624 $this->ctrl->redirectByClass(
"ilobjstylesheetgui",
"delete");
1632 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1633 if ($this->setting->get(
"fixed_content_style_id") <= 0 &&
1635 || $this->object->getStyleSheetId() == 0)) {
1637 $this->
object->update();
1640 $this->ctrl->redirect($this,
"editStyleProperties");
1648 if ($this->object->getPublicExportFile(
$a_type) == $a_file) {
1649 return $this->lng->txt(
"yes");
1663 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomy.php");
1665 if (count($tax_ids) > 0) {
1666 include_once(
"./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php");
1674 if (!$tax_exp->handleCommand()) {
1676 $this->tpl->setLeftNavContent($tax_exp->getHTML() .
" ");
1693 $this->tabs->setTabActive(
"settings");
1696 $this->toolbar->addButton(
1697 $this->lng->txt(
"add"),
1698 $this->ctrl->getLinkTarget($this,
"showGlossarySelector")
1701 include_once(
"./Modules/Glossary/classes/class.ilGlossaryAutoLinkTableGUI.php");
1704 $this->tpl->setContent(
$tab->getHTML());
1715 $this->tabs->setTabActive(
"settings");
1718 include_once
'Services/Search/classes/class.ilSearchRootSelector.php';
1721 $exp->setExpand(
$_GET[
"search_root_expand"] ?
$_GET[
"search_root_expand"] : $this->tree->readRootId());
1722 $exp->setExpandTarget($this->ctrl->getLinkTarget($this,
'showGlossarySelector'));
1723 $exp->setTargetClass(get_class($this));
1724 $exp->setCmd(
'confirmGlossarySelection');
1725 $exp->setClickableTypes(array(
"glo"));
1726 $exp->addFilter(
"glo");
1730 $this->tpl->setContent($exp->getOutput());
1738 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
1740 $this->ctrl->setParameter($this,
"glo_ref_id",
$_GET[
"root_id"]);
1741 $cgui->setFormAction($this->ctrl->getFormAction($this));
1742 $cgui->setHeaderText($this->lng->txt(
"glo_link_glo_in_glo"));
1743 $cgui->setCancel($this->lng->txt(
"no"),
"selectGlossary");
1744 $cgui->setConfirm($this->lng->txt(
"yes"),
"selectGlossaryLink");
1745 $this->tpl->setContent($cgui->getHTML());
1756 $glo_ref_id = (int)
$_GET[
"glo_ref_id"];
1758 $this->
object->autoLinkGlossaryTerms($glo_ref_id);
1771 $glos = $this->
object->getAutoGlossaries();
1772 $glo_ref_id = (int)
$_GET[
"glo_ref_id"];
1774 if (!in_array($glo_id, $glos)) {
1777 $this->
object->setAutoGlossaries($glos);
1778 $this->
object->update();
1781 $this->ctrl->redirect($this,
"editGlossaries");
1792 $this->
object->removeAutoGlossary((
int)
$_GET[
"glo_id"]);
1793 $this->
object->update();
1796 $this->ctrl->redirect($this,
"editGlossaries");
1808 if (!is_array($items)) {
1810 $this->ctrl->redirect($this,
"listTerms");
1813 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
1814 $this->
user->clipboardDeleteObjectsOfType(
"term");
1819 foreach ($items as
$id) {
1820 $this->
user->addObjectToClipboard(
1831 ilUtil::sendInfo($this->lng->txt(
"glo_selected_terms_have_been_copied"),
true);
1832 $this->ctrl->redirect($this,
"listTerms");
1844 if (!is_array($items)) {
1846 $this->ctrl->redirect($this,
"listTerms");
1849 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
1850 $this->
user->clipboardDeleteObjectsOfType(
"term");
1855 foreach ($items as
$id) {
1856 $this->
user->addObjectToClipboard(
1867 ilUtil::sendInfo($this->lng->txt(
"glo_selected_terms_have_been_copied"),
true);
1868 $this->ctrl->redirect($this,
"listTerms");
1880 $this->
user->clipboardDeleteObjectsOfType(
"term");
1881 $this->ctrl->redirect($this,
"listTerms");
1889 include_once(
"./Modules/LearningModule/classes/class.ilEditClipboard.php");
1891 foreach ($this->
user->getClipboardObjects(
"term") as $item) {
1896 include_once(
"./Modules/Glossary/classes/class.ilGlossaryTermReferences.php");
1898 foreach ($this->
user->getClipboardObjects(
"term") as $item) {
1899 $refs->addTerm($item[
"id"]);
1904 $this->ctrl->redirect($this,
"listTerms");
sprintf('%.4f', $callTime)
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())
An exception for terminatinating execution or to throw for unit testing.
error($a_errmsg)
set error message @access public
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Confirmation screen class.
Class ilECSGlossarySettings.
static setAction($a_action)
Export User Interface Class.
TableGUI class for auto link glossaries.
Glossary definition page GUI class.
Class ilGlossaryDefinition.
static setShortTextsDirty($a_glo_id)
Set short texts dirty.
Export class for content objects.
static getInstance(ilObjGlossaryGUI $a_glossary_gui)
Get instance.
GUI class for glossary terms.
static getInstance()
Get instance.
static isReferenced($a_glo_id, $a_term_id)
Is a term referenced by one or multiple glossaries.
static getNumberOfUsages($a_term_id)
Get number of usages.
static _lookGlossaryID($term_id)
get glossary id form term id
static _copyTerm($a_term_id, $a_glossary_id)
Copy a term to a glossary.
static _lookGlossaryTerm($term_id)
get glossary term
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static getLogger($a_component_id)
Get component logger.
This class represents a non editable value in a property form.
initSettingsForm($a_mode="edit")
Init settings form.
exportHTML()
create html package
addDefinition()
add definition
deleteStyle()
Delete Style.
referenceTerms()
Reference terms.
moveDefinitionDown()
move a definiton down
setLocator($a_tree="", $a_id="")
set Locator
static _goto($a_target)
redirect script
setContentStyleSheet($a_tpl=null)
Set content style sheet.
setSettingsSubTabs($a_active)
Set sub tabs.
createStyle()
Create Style.
initStylePropertiesForm()
Init style properties form.
confirmGlossarySelection()
Confirm glossary selection.
confirmTermDeletion()
confirm term deletion
confirmDefinitionDeletion()
deletion confirmation screen
getPublicAccessColValue($a_type, $a_file)
Get public access value for export table.
static addUsagesToInfo($info, $glo_id)
Add usages to info.
applyFilter()
Apply filter.
actTaxonomy()
Show Taxonomy.
executeCommand()
execute command
showActions($a_actions)
show possible action (form buttons)
properties()
edit properties of object (admin form)
deleteTerms()
delete selected terms
moveDefinitionUp()
move a definiton up
viewObject()
list childs of current object
showTaxonomy()
Show taxonomy.
editStyleProperties()
Edit style properties.
selectGlossaryLink()
Select a glossary and link all its terms.
__construct($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
showGlossarySelector()
Select LM Glossary.
publishExportFile()
download export file
saveObject()
save new content object to db
selectGlossary()
Select lm glossary.
cancelDefinitionDeletion()
resetFilter()
Reset filter (note: this function existed before data table filter has been introduced.
create()
create new (subobject) in glossary
deactTaxonomy()
Hide Taxonomy.
clearClipboard()
Clear clipboard.
export()
export content object
saveStyleSettings()
Save style settings.
initCreateForm($a_new_type)
Init object creation form.
cancelTermDeletion()
cancel deletion of object
removeGlossary()
Remove lm glossary.
showInfoScreen()
Show info screen.
saveProperties()
save properties
editGlossaries()
Edit automatically linked glossaries.
static getScormModulesForGlossary($a_glo_id)
Get SCORM modules that assign a certain glossary.
Class ilObjStyleSheetGUI.
static _lookupStandard($a_id)
Lookup standard flag.
static getSyntaxStylePath()
get syntax style path
static _getStandardStyles( $a_exclude_default_style=false, $a_include_deactivated=false, $a_scope=0)
Get standard styles.
static getContentStylePath($a_style_id, $add_random=true)
get content style path
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
static loadLanguageModule()
Load language module.
GUI class for the workflow of copying objects.
Class ilObjectGUI Basic methods of all Output classes.
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
putObjectInTree(ilObject $a_obj, $a_parent_node_id=null)
Add object to tree at given position.
prepareOutput($a_show_subobjects=true)
prepare output
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
getCreationMode()
get creation mode
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
addHeaderAction()
Add header action menu.
createObject()
create new object form
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
static _lookupObjId($a_id)
const TITLE_LENGTH
max length of object title
static _lookupTitle($a_id)
lookup object title
static _getAllReferences($a_id)
get all reference ids of object
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
This class represents an option in a radio group.
Taxonomy explorer GUI class.
This class represents a text area property in a property form.
This class represents a text property in a property form.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static redirect($a_script)
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static yn2tf($a_yn)
convert "y"/"n" to true/false
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
if(isset($_POST['submit'])) $form
if(!file_exists("$old.txt")) if( $old===$new) if(file_exists("$new.txt")) $file