ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilObjTaxonomyGUI.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2012 ILIAS open source, Extended GPL, see docs/LICENSE */
3
4require_once "./Services/Object/classes/class.ilObject2GUI.php";
5require_once "./Services/Taxonomy/classes/class.ilObjTaxonomy.php";
6include_once("./Services/Taxonomy/interfaces/interface.ilTaxAssignedItemInfo.php");
7
19{
23 protected $tabs;
24
28 protected $help;
29
30 protected $multiple = false;
31 protected $assigned_item_sorting = false;
32
36 public function __construct($a_id = 0)
37 {
38 global $DIC;
39
40 $this->ctrl = $DIC->ctrl();
41 $this->lng = $DIC->language();
42 $this->user = $DIC->user();
43 $this->tabs = $DIC->tabs();
44 $this->toolbar = $DIC->toolbar();
45 $this->tpl = $DIC["tpl"];
46 $this->help = $DIC["ilHelp"];
47 $ilCtrl = $DIC->ctrl();
48 $lng = $DIC->language();
49
50 parent::__construct($a_id, ilObject2GUI::OBJECT_ID);
51
52 $ilCtrl->saveParameter($this, "tax_node");
53 $ilCtrl->saveParameter($this, "tax_id");
54
55 $lng->loadLanguageModule("tax");
56 }
57
63 public function getType()
64 {
65 return "tax";
66 }
67
73 public function setAssignedObject($a_val)
74 {
75 $this->assigned_object_id = $a_val;
76 }
77
83 public function getAssignedObject()
84 {
85 return $this->assigned_object_id;
86 }
87
93 public function setMultiple($a_val)
94 {
95 $this->multiple = $a_val;
96 }
97
103 public function getMultiple()
104 {
105 return $this->multiple;
106 }
107
113 public function setListInfo($a_val)
114 {
115 $this->list_info = trim($a_val);
116 }
117
123 public function getListInfo()
124 {
125 return $this->list_info;
126 }
127
133 public function activateAssignedItemSorting(ilTaxAssignedItemInfo $a_item_info_obj, $a_component_id, $a_obj_id, $a_item_type)
134 {
135 $this->assigned_item_sorting = true;
136 $this->assigned_item_info_obj = $a_item_info_obj;
137 $this->assigned_item_comp_id = $a_component_id;
138 $this->assigned_item_obj_id = $a_obj_id;
139 $this->assigned_item_type = $a_item_type;
140 }
141
142
146 public function executeCommand()
147 {
150 $ilTabs = $this->tabs;
151
152 $next_class = $ilCtrl->getNextClass();
153
154 switch ($next_class) {
155 default:
156 $cmd = $ilCtrl->getCmd("listTaxonomies");
157 $this->$cmd();
158 break;
159 }
160 }
161
165 protected function initCreationForms($a_new_type)
166 {
167 $forms = array(
168 self::CFORM_NEW => $this->initCreateForm("tax")
169 );
170
171 return $forms;
172 }
173
174
178
185 public function editAOTaxonomySettings()
186 {
187 $ilToolbar = $this->toolbar;
190
191
192 // if (count($tax_ids) != 0 && !$this->getMultiple())
193 // {
194 // $this->listNodes();
195 // }
196 // else if ($this->getMultiple())
197 // {
198 $this->listTaxonomies();
199 // }
200
201 // currently we support only one taxonomy, otherwise we may need to provide
202 // a list here
203 }
204
211 public function getCurrentTaxonomyId()
212 {
214 $tax_id = (int) $_GET["tax_id"];
215 if (in_array($tax_id, $tax_ids)) {
216 return $tax_id;
217 }
218 return false;
219 }
220
221
228 public function getCurrentTaxonomy()
229 {
230 $tax_id = $this->getCurrentTaxonomyId();
231 if ($tax_id > 0) {
232 $tax = new ilObjTaxonomy($tax_id);
233 return $tax;
234 }
235
236 return false;
237 }
238
239
246 public function listNodes()
247 {
249 $ilToolbar = $this->toolbar;
252
253 $tax = $this->getCurrentTaxonomy();
254
255 $this->setTabs("list_items");
256
257 // show toolbar
258 $ilToolbar->setFormAction($ilCtrl->getFormAction($this));
259 $ilToolbar->addFormButton($lng->txt("tax_create_node"), "createTaxNode");
260
261 $ilToolbar->setCloseFormTag(false);
262
263
264 // show tree
265 $this->showTree();
266
267 // show subitems
268 include_once("./Services/Taxonomy/classes/class.ilTaxonomyTableGUI.php");
270 $this,
271 "listNodes",
272 $tax->getTree(),
273 (int) $_GET["tax_node"],
274 $this->getCurrentTaxonomy()
275 );
276 $table->setOpenFormTag(false);
277
278 $tpl->setContent($table->getHTML());
279 }
280
281
288 public function createAssignedTaxonomy()
289 {
290 $this->create();
291 }
292
293
298 protected function checkPermissionBool($a_perm, $a_cmd = "", $a_type = "", $a_node_id = null)
299 {
300 if ($this->getAssignedObject() > 0) {
301 return true;
302 } else {
303 return parent::checkPermissionBool($a_perm, $a_cmd, $a_type, $a_node_id);
304 }
305 }
306
313 public function cancel()
314 {
316
317 if ($this->getAssignedObject() > 0) {
318 $ilCtrl->redirect($this, "listTaxonomies");
319 }
320
321 return parent::cancel();
322 }
323
330 public function save()
331 {
333
334 if ($this->getAssignedObject() > 0) {
335 $_REQUEST["new_type"] = "tax";
336 }
337
338 parent::saveObject();
339 }
340
347 protected function afterSave(ilObject $a_new_object)
348 {
351
352 if ($this->getAssignedObject() > 0) {
354 $a_new_object->getId(),
355 $this->getAssignedObject()
356 );
357 $ilCtrl->setParameter($this, "tax_id", $a_new_object->getId());
358 ilUtil::sendSuccess($lng->txt("tax_added"), true);
359 $ilCtrl->redirect($this, "editSettings");
360 }
361 }
362
366 public function showTree($a_ass_items = false)
367 {
372
373 $tax = $this->getCurrentTaxonomy();
374
375 include_once("./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php");
376 $cmd = $a_ass_items
377 ? "listAssignedItems"
378 : "listNodes";
379 $tax_exp = new ilTaxonomyExplorerGUI(
380 $this,
381 "showTree",
382 $tax->getId(),
383 "ilobjtaxonomygui",
384 $cmd
385 );
386 if (!$tax_exp->handleCommand()) {
387 //$tpl->setLeftNavContent($tax_exp->getHTML());
388 $tpl->setLeftContent($tax_exp->getHTML() . "&nbsp;");
389 }
390 return;
391 }
392
399 public static function getTreeHTML(
400 $a_tax_id,
401 $a_class,
402 $a_cmd,
403 $a_target_class,
404 $a_target_cmd,
405 $a_root_node_title = ""
406 ) {
407 die("ilObjTaxonomyGUI::getTreeHTML is deprecated.");
408 include_once("./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php");
409 $tax_exp = new ilTaxonomyExplorerGUI(
410 $a_class,
411 $a_cmd,
412 $a_tax_id,
413 $a_target_class,
414 $a_target_cmd
415 );
416 if (!$tax_exp->handleCommand()) {
417 return $tax_exp->getHTML() . "&nbsp;";
418 }
419 return;
420 }
421
422
429 public function createTaxNode()
430 {
432 $ilHelp = $this->help;
433
434 $this->setTabs("list_items");
435 $ilHelp->setSubScreenId("create_node");
436
437 $this->initTaxNodeForm("create");
438 $tpl->setContent($this->form->getHTML());
439 }
440
441
447 public function initTaxNodeForm($a_mode = "edit")
448 {
451
452 include_once("Services/Form/classes/class.ilPropertyFormGUI.php");
453 $this->form = new ilPropertyFormGUI();
454
455 // title
456 $ti = new ilTextInputGUI($this->lng->txt("title"), "title");
457 $this->form->addItem($ti);
458
459 // order nr
460 $tax = $this->getCurrentTaxonomy();
461 if ($tax->getSortingMode() == ilObjTaxonomy::SORT_MANUAL) {
462 $or = new ilTextInputGUI($this->lng->txt("tax_order_nr"), "order_nr");
463 $or->setMaxLength(5);
464 $or->setSize(5);
465 $this->form->addItem($or);
466 }
467
468 if ($a_mode == "edit") {
469 $node = new ilTaxonomyNode((int) $_GET["tax_node"]);
470 $ti->setValue($node->getTitle());
471 $or->setValue($node->getOrderNr());
472 }
473
474 // save and cancel commands
475 if ($a_mode == "create") {
476 $this->form->addCommandButton("saveTaxNode", $lng->txt("save"));
477 $this->form->addCommandButton("listNodes", $lng->txt("cancel"));
478 $this->form->setTitle($lng->txt("tax_new_tax_node"));
479 } else {
480 $this->form->addCommandButton("updateTaxNode", $lng->txt("save"));
481 $this->form->addCommandButton("listNodes", $lng->txt("cancel"));
482 $this->form->setTitle($lng->txt("tax_edit_tax_node"));
483 }
484
485 $this->form->setFormAction($ilCtrl->getFormAction($this));
486 }
487
492 public function saveTaxNode()
493 {
497
498 $this->initTaxNodeForm("create");
499 if ($this->form->checkInput()) {
500 $tax = $this->getCurrentTaxonomy();
501
502 // create node
503 include_once("./Services/Taxonomy/classes/class.ilTaxonomyNode.php");
504 $node = new ilTaxonomyNode();
505 $node->setTitle($this->form->getInput("title"));
506
507 $tax = $this->getCurrentTaxonomy();
508 if ($tax->getSortingMode() == ilObjTaxonomy::SORT_MANUAL) {
509 $order_nr = $this->form->getInput("order_nr");
510 }
511 if ($order_nr === "") {
512 $order_nr = ilTaxonomyNode::getNextOrderNr($tax->getId(), (int) $_GET["tax_node"]);
513 }
514 //echo $order_nr; exit;
515 $node->setOrderNr($order_nr);
516 $node->setTaxonomyId($tax->getId());
517 $node->create();
518
519 // put in tree
520 ilTaxonomyNode::putInTree($tax->getId(), $node, (int) $_GET["tax_node"]);
521
522 ilTaxonomyNode::fixOrderNumbers($tax->getId(), (int) $_GET["tax_node"]);
523
524 ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
525 $ilCtrl->redirect($this, "listNodes");
526 } else {
527 $this->form->setValuesByPost();
528 $tpl->setContent($this->form->getHtml());
529 }
530 }
531
532
536 public function updateTaxNode()
537 {
541
542 $this->initTaxNodeForm("edit");
543 if ($this->form->checkInput()) {
544 // create node
545 $node = new ilTaxonomyNode($_GET["tax_node"]);
546 $node->setTitle($this->form->getInput("title"));
547
548 $tax = $this->getCurrentTaxonomy();
549 if ($tax->getSortingMode() == ilObjTaxonomy::SORT_MANUAL) {
550 $node->setOrderNr($this->form->getInput("order_nr"));
551 }
552
553 $node->update();
554
555 ilUtil::sendInfo($lng->txt("msg_obj_modified"), true);
556 $ilCtrl->redirect($this, "");
557 } else {
558 $this->form->setValuesByPost();
559 $tpl->setContent($this->form->getHtml());
560 }
561 }
562
566 public function deleteItems()
567 {
571 $ilTabs = $this->tabs;
572 $ilHelp = $this->help;
573
574 if (!isset($_POST["id"])) {
575 ilUtil::sendFailure($this->lng->txt("no_checkbox"), true);
576 $ilCtrl->redirect($this, "listNodes");
577 }
578
579 $this->setTabs("list_items");
580 $ilHelp->setSubScreenId("del_items");
581
582 // $ilTabs->clearTargets();
583
584 include_once("./Services/Utilities/classes/class.ilConfirmationGUI.php");
585 $confirmation_gui = new ilConfirmationGUI();
586
587 $confirmation_gui->setFormAction($ilCtrl->getFormAction($this));
588 $confirmation_gui->setHeaderText($this->lng->txt("info_delete_sure"));
589
590 // Add items to delete
591 include_once("./Services/Taxonomy/classes/class.ilTaxonomyNode.php");
592 foreach ($_POST["id"] as $id) {
593 $confirmation_gui->addItem(
594 "id[]",
595 $id,
597 );
598 }
599
600 $confirmation_gui->setCancel($lng->txt("cancel"), "listNodes");
601 $confirmation_gui->setConfirm($lng->txt("confirm"), "confirmedDelete");
602
603 $tpl->setContent($confirmation_gui->getHTML());
604 }
605
609 public function confirmedDelete()
610 {
612
613 include_once("./Services/Taxonomy/classes/class.ilTaxonomyNode.php");
614
615 // delete all selected objects
616 foreach ($_POST["id"] as $id) {
617 $node = new ilTaxonomyNode($id);
618 $tax = new ilObjTaxonomy($node->getTaxonomyId());
619 $tax_tree = $tax->getTree();
620 $node_data = $tax_tree->getNodeData($id);
621 if (is_object($node)) {
622 $node->delete();
623 }
624 if ($tax_tree->isInTree($id)) {
625 $tax_tree->deleteTree($node_data);
626 }
627 ilTaxonomyNode::fixOrderNumbers($node->getTaxonomyId(), $node_data["parent"]);
628 }
629
630 // feedback
631 ilUtil::sendInfo($this->lng->txt("info_deleted"), true);
632
633 $ilCtrl->redirect($this, "listNodes");
634 }
635
642 public function saveSorting()
643 {
646
647 // save sorting
648 include_once("./Services/Taxonomy/classes/class.ilTaxonomyNode.php");
649 if (is_array($_POST["order"])) {
650 // asort($_POST["order"]);
651 // $cnt = 10;
652 foreach ($_POST["order"] as $k => $v) {
654 }
656 }
657
658 // save titles
659 if (is_array($_POST["title"])) {
660 foreach ($_POST["title"] as $k => $v) {
662 (int) $k,
664 );
665 }
666 }
667
668
669 ilUtil::sendSuccess($lng->txt("msg_obj_modified"));
670 $ilCtrl->redirect($this, "listNodes");
671 }
672
676 public function moveItems()
677 {
681 $ilToolbar = $this->toolbar;
682 $ilHelp = $this->help;
683
684 if (!isset($_POST["id"])) {
685 ilUtil::sendFailure($this->lng->txt("no_checkbox"), true);
686 $ilCtrl->redirect($this, "listNodes");
687 }
688
689 $this->setTabs("list_items");
690 $ilHelp->setSubScreenId("move_items");
691
692 $ilToolbar->addButton(
693 $lng->txt("cancel"),
694 $ilCtrl->getLinkTarget($this, "listNodes")
695 );
696
697 ilUtil::sendInfo($lng->txt("tax_please_select_target"));
698
699 if (is_array($_POST["id"])) {
700 $ilCtrl->setParameter($this, "move_ids", implode($_POST["id"], ","));
701
706
707 include_once("./Services/Taxonomy/classes/class.ilTaxonomyExplorerGUI.php");
708 $tax_exp = new ilTaxonomyExplorerGUI(
709 $this,
710 "moveItems",
711 $this->getCurrentTaxonomy()->getId(),
712 "ilobjtaxonomygui",
713 "pasteItems"
714 );
715 if (!$tax_exp->handleCommand()) {
716 //$tpl->setLeftNavContent($tax_exp->getHTML());
717 $tpl->setContent($tax_exp->getHTML() . "&nbsp;");
718 }
719 }
720 }
721
725 public function pasteItems()
726 {
729 //var_dump($_GET);
730 //var_dump($_POST);
731 if ($_GET["move_ids"] != "") {
732 $move_ids = explode(",", $_GET["move_ids"]);
733 $tax = $this->getCurrentTaxonomy();
734 $tree = $tax->getTree();
735
736 include_once("./Services/Taxonomy/classes/class.ilTaxonomyNode.php");
737 $target_node = new ilTaxonomyNode((int) $_GET["tax_node"]);
738 foreach ($move_ids as $m_id) {
739 // cross check taxonomy
740 $node = new ilTaxonomyNode((int) $m_id);
741 if ($node->getTaxonomyId() == $tax->getId() &&
742 ($target_node->getTaxonomyId() == $tax->getId() ||
743 $target_node->getId() == $tree->readRootId())) {
744 // check if target is not within the selected nodes
745 if ($tree->isGrandChild((int) $m_id, $target_node->getId())) {
746 ilUtil::sendFailure($lng->txt("tax_target_within_nodes"), true);
747 $this->ctrl->redirect($this, "listNodes");
748 }
749
750 // if target is not current place, move
751 $parent_id = $tree->getParentId((int) $m_id);
752 if ($parent_id != $target_node->getId()) {
753 $tree->moveTree((int) $m_id, $target_node->getId());
754 ilTaxonomyNode::fixOrderNumbers($tax->getId(), $target_node->getId());
756 }
757 }
758 }
759 }
760
761 ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
762 $ilCtrl->redirect($this, "listNodes");
763 }
764
768 public function confirmDeleteTaxonomy()
769 {
773
774 $tax = $this->getCurrentTaxonomy();
775
776 include_once("./Services/Utilities/classes/class.ilConfirmationGUI.php");
777 $cgui = new ilConfirmationGUI();
778 $cgui->setFormAction($ilCtrl->getFormAction($this));
779 $cgui->setHeaderText($lng->txt("tax_confirm_deletion"));
780 $cgui->setCancel($lng->txt("cancel"), "listTaxonomies");
781 $cgui->setConfirm($lng->txt("delete"), "deleteTaxonomy");
782
783 $cgui->addItem("id[]", $i, $tax->getTitle());
784
785 $tpl->setContent($cgui->getHTML());
786 }
787
794 public function deleteTaxonomy()
795 {
798
799 $tax = $this->getCurrentTaxonomy();
800 $tax->delete();
801
802 ilUtil::sendSuccess($lng->txt("tax_tax_deleted"), true);
803 $ilCtrl->redirect($this, "listTaxonomies");
804 }
805
812 public function listTaxonomies()
813 {
815 $ilToolbar = $this->toolbar;
818
820 if (count($tax_ids) == 0 || $this->getMultiple()) {
821 $ilToolbar->addButton(
822 $lng->txt("tax_add_taxonomy"),
823 $ilCtrl->getLinkTarget($this, "createAssignedTaxonomy")
824 );
825 } else {
826 ilUtil::sendInfo($lng->txt("tax_max_one_tax"));
827 }
828
829 include_once("./Services/Taxonomy/classes/class.ilTaxonomyListTableGUI.php");
830
832 $this,
833 "listTaxonomies",
834 $this->getAssignedObject(),
835 $this->getListInfo()
836 );
837
838 $tpl->setContent($tab->getHTML());
839 }
840
846 public function setTabs($a_id = "")
847 {
848 $ilTabs = $this->tabs;
852 $ilHelp = $this->help;
853
854 $ilTabs->clearTargets();
855
856 $ilHelp->setScreenIdComponent("tax");
857
858 $tpl->clearHeader();
860 $tpl->setDescription(ilObject::_lookupDescription($this->getCurrentTaxonomyId()));
861 $tpl->setTitleIcon(ilUtil::getImagePath("icon_tax.svg"));
862
863 $ilTabs->setBackTarget(
864 $lng->txt("back"),
865 $ilCtrl->getLinkTarget($this, "listTaxonomies")
866 );
867
868 $ilTabs->addTab(
869 "list_items",
870 $lng->txt("tax_nodes"),
871 $ilCtrl->getLinkTarget($this, "listNodes")
872 );
873 if ($this->assigned_item_sorting) {
874 $ilTabs->addTab(
875 "ass_items",
876 $lng->txt("tax_assigned_items"),
877 $ilCtrl->getLinkTarget($this, "listAssignedItems")
878 );
879 }
880 $ilTabs->addTab(
881 "settings",
882 $lng->txt("settings"),
883 $ilCtrl->getLinkTarget($this, "editSettings")
884 );
885
886 $ilTabs->activateTab($a_id);
887 }
888
895 public function editSettings()
896 {
898
899 $this->setTabs("settings");
900
901 $form = $this->initSettingsForm();
902 $tpl->setContent($form->getHTML());
903 }
904
908 public function initSettingsForm()
909 {
912
913 $tax = $this->getCurrentTaxonomy();
914
915 include_once("Services/Form/classes/class.ilPropertyFormGUI.php");
916 $form = new ilPropertyFormGUI();
917
918 // title
919 $ti = new ilTextInputGUI($lng->txt("title"), "title");
920 $ti->setMaxLength(200);
921 $form->addItem($ti);
922 $ti->setValue($tax->getTitle());
923
924 // description
925 $ta = new ilTextAreaInputGUI($lng->txt("description"), "description");
926 //$ta->setCols();
927 //$ta->setRows();
928 $form->addItem($ta);
929 $ta->setValue($tax->getDescription());
930
931 // sorting
932 $options = array(
933 ilObjTaxonomy::SORT_ALPHABETICAL => $lng->txt("tax_alphabetical"),
934 ilObjTaxonomy::SORT_MANUAL => $lng->txt("tax_manual")
935 );
936 $si = new ilSelectInputGUI($lng->txt("tax_node_sorting"), "sorting");
937 $si->setOptions($options);
938 $form->addItem($si);
939 $si->setValue($tax->getSortingMode());
940
941 // assigned item sorting
942 if ($this->assigned_item_sorting) {
943 $cb = new ilCheckboxInputGUI($lng->txt("tax_item_sorting"), "item_sorting");
944 $cb->setChecked($tax->getItemSorting());
945 $form->addItem($cb);
946 }
947
948 $form->addCommandButton("updateSettings", $lng->txt("save"));
949
950 $form->setTitle($lng->txt("settings"));
951 $form->setFormAction($ilCtrl->getFormAction($this));
952
953 return $form;
954 }
955
959 public function updateSettings()
960 {
964
965 $form = $this->initSettingsForm();
966 if ($form->checkInput()) {
967 $tax = $this->getCurrentTaxonomy();
968 $tax->setTitle($form->getInput("title"));
969 $tax->setDescription($form->getInput("description"));
970 $tax->setSortingMode($form->getInput("sorting"));
971 $tax->setItemSorting($form->getInput("item_sorting"));
972 $tax->update();
973
974 ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
975 $ilCtrl->redirect($this, "editSettings");
976 } else {
977 $form->setValuesByPost();
978 $tpl->setContent($form->getHtml());
979 }
980 }
981
988 public function listAssignedItems()
989 {
991 $ilToolbar = $this->toolbar;
994
995 $tax = $this->getCurrentTaxonomy();
996
997 $this->setTabs("ass_items");
998
999 // show tree
1000 $this->showTree(true);
1001
1002 // list assigned items
1003 include_once("./Services/Taxonomy/classes/class.ilTaxAssignedItemsTableGUI.php");
1005 $this,
1006 "listAssignedItems",
1007 (int) $_GET["tax_node"],
1008 $this->getCurrentTaxonomy(),
1009 $this->assigned_item_comp_id,
1010 $this->assigned_item_obj_id,
1011 $this->assigned_item_type,
1012 $this->assigned_item_info_obj
1013 );
1014
1015 $tpl->setContent($table->getHTML());
1016 }
1017
1025 {
1026 $lng = $this->lng;
1028
1029 include_once("./Services/Taxonomy/classes/class.ilTaxNodeAssignment.php");
1030 if (is_array($_POST["order"])) {
1031 $order = $_POST["order"];
1032 //asort($order, SORT_NUMERIC);
1033 //$cnt = 10;
1034 $tax_node = (int) $_GET["tax_node"];
1035 foreach ($order as $a_item_id => $ord_nr) {
1036 $tax_ass = new ilTaxNodeAssignment(
1037 $this->assigned_item_comp_id,
1038 $this->assigned_item_obj_id,
1039 $this->assigned_item_type,
1040 $this->getCurrentTaxonomyId()
1041 );
1042 $tax_ass->setOrderNr($tax_node, $a_item_id, $ord_nr);
1043 //$cnt+= 10;
1044 }
1045 $tax_ass = new ilTaxNodeAssignment(
1046 $this->assigned_item_comp_id,
1047 $this->assigned_item_obj_id,
1048 $this->assigned_item_type,
1049 $this->getCurrentTaxonomyId()
1050 );
1051 $tax_ass->fixOrderNr($tax_node);
1052 ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
1053 }
1054 $ilCtrl->redirect($this, "listAssignedItems");
1055 }
1056}
user()
Definition: user.php:4
if(!isset( $_REQUEST[ 'ReturnTo'])) if(!isset($_REQUEST['AuthId'])) $options
Definition: as_login.php:20
$_GET["client_id"]
$_POST["username"]
An exception for terminatinating execution or to throw for unit testing.
This class represents a checkbox property in a property form.
Confirmation screen class.
Taxonomy GUI class.
pasteItems()
Paste items (move operation)
createTaxNode()
Create tax node.
confirmDeleteTaxonomy()
Confirm taxonomy deletion.
saveSorting()
Save settings and sorting.
deleteItems()
Confirm deletion screen for items.
afterSave(ilObject $a_new_object)
After saving,.
listTaxonomies()
List taxonomies.
editSettings()
Edit settings.
executeCommand()
Execute command.
confirmedDelete()
Delete taxonomy nodes.
createAssignedTaxonomy()
Create assigned taxonomy.
__construct($a_id=0)
Execute command.
initCreationForms($a_new_type)
Init creation forms.
setTabs($a_id="")
Set tabs.
updateTaxNode()
Update tax node.
activateAssignedItemSorting(ilTaxAssignedItemInfo $a_item_info_obj, $a_component_id, $a_obj_id, $a_item_type)
Activate sorting mode of assigned objects.
setMultiple($a_val)
Set multiple.
showTree($a_ass_items=false)
Show Editing Tree.
deleteTaxonomy()
Delete taxonomy.
updateSettings()
Update taxonomy settings.
static getTreeHTML( $a_tax_id, $a_class, $a_cmd, $a_target_class, $a_target_cmd, $a_root_node_title="")
Get tree html.
saveAssignedItemsSorting()
Save assigned items sorting.
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_node_id=null)
If we run under an assigned object, the permission should be checked on the upper level.
initTaxNodeForm($a_mode="edit")
Init tax node form.
getCurrentTaxonomy()
Get current taxonomy.
getListInfo()
Get list info.
setListInfo($a_val)
Set list info.
getCurrentTaxonomyId()
Get current taxonomy id.
listAssignedItems()
List assigned items.
cancel()
Cancel creation.
setAssignedObject($a_val)
Set assigned object.
saveTaxNode()
Save tax node form.
getAssignedObject()
Get assigned object.
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
static saveUsage($a_tax_id, $a_obj_id)
Save Usage.
New implementation of ilObjectGUI.
create()
Deleted in ilObject.
setTabs()
create tabs (repository/workspace switch)
initCreateForm($a_new_type)
Init object creation form.
Class ilObject Basic functions for all objects.
static _lookupTitle($a_id)
lookup object title
static _lookupDescription($a_id)
lookup object description
getId()
get object id @access public
This class represents a property form user interface.
This class represents a selection list property in a property form.
TableGUI class for taxonomy list.
Taxonomy node <-> item assignment.
Taxonomy explorer GUI class.
TableGUI class for taxonomy list.
static writeOrderNr($a_node_id, $a_order_nr)
Write order nr.
static fixOrderNumbers($a_tax_id, $a_parent_id)
Fix order numbers.
static putInTree( $a_tax_id, $a_node, $a_parent_id="", $a_target_node_id="", $a_order_nr=0)
Put this node into the taxonomy tree.
static writeTitle($a_node_id, $a_title)
Write title.
static _lookupTitle($a_obj_id)
Lookup Title.
static getNextOrderNr($a_tax_id, $a_parent_id)
Put this node into the taxonomy tree.
TableGUI class for taxonomies.
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 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 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)
$i
Definition: disco.tpl.php:19
if(!array_key_exists('StateId', $_REQUEST)) $id
global $ilCtrl
Definition: ilias.php:18
Interface for assigned items of taxonomies.
if(empty($password)) $table
Definition: pwgen.php:24
if(isset($_POST['submit'])) $form
global $DIC
Definition: saml.php:7
$ilUser
Definition: imgupload.php:18
$a_type
Definition: workflow.php:92