/** * Save tags for tagging gui * * Needed this function here because the test info page * uses another class to send its form results */ function saveTagsCmd() { include_once "./Services/Tagging/classes/class.ilTaggingGUI.php"; $tagging_gui = new ilTaggingGUI(); $tagging_gui->setObject($this->object->getId(), $this->object->getType()); $tagging_gui->saveInput(); $this->ctrl->redirectByClass("ilobjtestgui", "infoScreen"); }
function saveTags() { include_once "Services/Tagging/classes/class.ilTaggingGUI.php"; $tagging_gui = new ilTaggingGUI(); $tagging_gui->setObject($this->gui_object->object->getId(), $this->gui_object->object->getType()); $tagging_gui->saveInput(); ilUtil::sendSuccess($this->lng->txt('msg_obj_modified'), true); $this->ctrl->redirect($this, ""); // #14993 // return $this->showSummary(); }
function executeCommand() { global $ilCtrl; // check access for object if ($this->node_id && !$this->access_handler->checkAccess("visible", "", $this->node_id) && !$this->access_handler->checkAccess("read", "", $this->node_id)) { exit; } $next_class = $ilCtrl->getNextClass($this); $cmd = $ilCtrl->getCmd(); $ilCtrl->saveParameter($this, "cadh"); switch ($next_class) { case "ilnotegui": $obj_type = $this->obj_type; if ($this->sub_type) { $obj_type = $this->sub_type; } include_once "Services/Notes/classes/class.ilNoteGUI.php"; $note_gui = new ilNoteGUI($this->obj_id, $this->sub_id, $obj_type); $note_gui->enablePrivateNotes(true); // comments cannot be turned off globally if ($this->enable_comments_settings) { // should only be shown if active or permission to toggle if ($this->access_handler->checkAccess("write", "", $this->node_id) || $this->access_handler->checkAccess("edit_permissions", "", $this->node_id)) { $note_gui->enableCommentsSettings(); } } else { if ($this->sub_id) { $note_gui->enablePublicNotes(true); } } $ilCtrl->forwardCommand($note_gui); break; case "iltagginggui": include_once "Services/Tagging/classes/class.ilTaggingGUI.php"; $tags_gui = new ilTaggingGUI($this->node_id); $tags_gui->setObject($this->obj_id, $this->obj_type); $ilCtrl->forwardCommand($tags_gui); break; case "ilobjectactivationgui": $ilCtrl->setParameter($this, "parent_id", (int) $_REQUEST['parent_id']); include_once 'Services/Object/classes/class.ilObjectActivationGUI.php'; $act_gui = new ilObjectActivationGUI((int) $_REQUEST['parent_id'], $this->node_id); $ilCtrl->forwardCommand($act_gui); break; case "ilratinggui": include_once "./Services/Rating/classes/class.ilRatingGUI.php"; $rating_gui = new ilRatingGUI(); $rating_gui->setObject($this->obj_id, $this->obj_type, $this->sub_id, $this->sub_type); $ilCtrl->forwardCommand($rating_gui); if ($this->rating_callback) { // as rating in categories is form-based we need to redirect // somewhere after saving $ilCtrl->redirect($this->rating_callback[0], $this->rating_callback[1]); } break; default: break; } exit; }
/** * Get header action * * @return string */ function getHeaderAction() { global $ilUser, $lng, $tpl; $htpl = new ilTemplate("tpl.header_action.html", true, true, "Services/Repository"); $redraw_js = "il.Object.redrawActionHeader();"; // tags if ($this->tags_enabled) { include_once "./Services/Tagging/classes/class.ilTagging.php"; $tags = ilTagging::getTagsForUserAndObject($this->obj_id, ilObject::_lookupType($this->obj_id), 0, "", $ilUser->getId()); if (count($tags) > 0) { include_once "./Services/Tagging/classes/class.ilTaggingGUI.php"; $lng->loadLanguageModule("tagging"); $this->addHeaderIcon("tags", ilUtil::getImagePath("icon_tag.svg"), $lng->txt("tagging_tags") . ": " . count($tags), ilTaggingGUI::getListTagsJSCall($this->ajax_hash, $redraw_js), count($tags)); } } // notes and comments $comments_enabled = $this->isCommentsActivated($this->type, $this->ref_id, $this->obj_id, true, false); if ($this->notes_enabled || $comments_enabled) { include_once "./Services/Notes/classes/class.ilNote.php"; include_once "./Services/Notes/classes/class.ilNoteGUI.php"; $cnt = ilNote::_countNotesAndComments($this->obj_id, $this->sub_obj_id); if ($this->notes_enabled && $cnt[$this->obj_id][IL_NOTE_PRIVATE] > 0) { $this->addHeaderIcon("notes", ilUtil::getImagePath("note_unlabeled.svg"), $lng->txt("private_notes") . ": " . $cnt[$this->obj_id][IL_NOTE_PRIVATE], ilNoteGUI::getListNotesJSCall($this->ajax_hash, $redraw_js), $cnt[$this->obj_id][IL_NOTE_PRIVATE]); } if ($comments_enabled && $cnt[$this->obj_id][IL_NOTE_PUBLIC] > 0) { $lng->loadLanguageModule("notes"); $this->addHeaderIcon("comments", ilUtil::getImagePath("comment_unlabeled.svg"), $lng->txt("notes_public_comments") . ": " . $cnt[$this->obj_id][IL_NOTE_PUBLIC], ilNoteGUI::getListCommentsJSCall($this->ajax_hash, $redraw_js), $cnt[$this->obj_id][IL_NOTE_PUBLIC]); } } // rating if ($this->rating_enabled) { include_once "./Services/Rating/classes/class.ilRatingGUI.php"; $rating_gui = new ilRatingGUI(); $rating_gui->enableCategories($this->rating_categories_enabled); // never rate sub objects from header action! $rating_gui->setObject($this->obj_id, $this->type); if ($this->rating_text) { $rating_gui->setYourRatingText($this->rating_text); } $this->ctrl->setParameterByClass("ilRatingGUI", "cadh", $this->ajax_hash); $this->ctrl->setParameterByClass("ilRatingGUI", "rnsb", true); if ($this->rating_ctrl_path) { $rating_gui->setCtrlPath($this->rating_ctrl_path); $ajax_url = $this->ctrl->getLinkTargetByClass($this->rating_ctrl_path, "saveRating", "", true, false); } else { // ??? $ajax_url = $this->ctrl->getLinkTargetByClass("ilRatingGUI", "saveRating", "", true, false); } $tpl->addOnLoadCode("il.Object.setRatingUrl('" . $ajax_url . "');"); $this->addHeaderIconHTML("rating", $rating_gui->getHtml(true, $this->checkCommandAccess("read", "", $this->ref_id, $this->type), "il.Object.saveRating(%rating%);")); } if ($this->header_icons) { include_once "./Services/UIComponent/Tooltip/classes/class.ilTooltipGUI.php"; $chunks = array(); foreach ($this->header_icons as $id => $attr) { $id = "headp_" . $id; if (is_array($attr)) { if ($attr["onclick"]) { $htpl->setCurrentBlock("onclick"); $htpl->setVariable("PROP_ONCLICK", $attr["onclick"]); $htpl->parseCurrentBlock(); } if ($attr["status_text"]) { $htpl->setCurrentBlock("status"); $htpl->setVariable("PROP_TXT", $attr["status_text"]); $htpl->parseCurrentBlock(); } if (!$attr["href"]) { $attr["href"] = "#"; } $htpl->setCurrentBlock("prop"); $htpl->setVariable("PROP_ID", $id); $htpl->setVariable("IMG", ilUtil::img($attr["img"])); $htpl->setVariable("PROP_HREF", $attr["href"]); $htpl->parseCurrentBlock(); if ($attr["tooltip"]) { ilTooltipGUI::addTooltip($id, $attr["tooltip"]); } } else { $chunks[] = $attr; } } if (sizeof($chunks)) { $htpl->setVariable("PROP_CHUNKS", implode(" ", $chunks) . " "); } } $htpl->setVariable("ACTION_DROP_DOWN", $this->insertCommands(false, false, "", true)); return $htpl->get(); }
function saveTags() { global $ilCtrl; include_once "Services/Tagging/classes/class.ilTaggingGUI.php"; $tagging_gui = new ilTaggingGUI(); $tagging_gui->setObject($this->gui_object->object->getId(), $this->gui_object->object->getType()); $tagging_gui->saveInput(); return $this->showSummary(); }
/** * Get header action * * @return string */ function getHeaderAction() { global $ilAccess, $ilBench, $ilUser, $ilCtrl, $lng; $htpl = new ilTemplate("tpl.header_action.html", true, true, "Services/Repository"); $redraw_js = "il.Object.redrawActionHeader();"; // tags if ($this->tags_enabled) { include_once "./Services/Tagging/classes/class.ilTagging.php"; $tags = ilTagging::getTagsForUserAndObject($this->obj_id, ilObject::_lookupType($this->obj_id), 0, "", $ilUser->getId()); if (count($tags) > 0) { include_once "./Services/Tagging/classes/class.ilTaggingGUI.php"; $lng->loadLanguageModule("tagging"); $this->addHeaderIcon("tags", ilUtil::getImagePath("icon_tags_s.png"), $lng->txt("tagging_tags") . ": " . count($tags), ilTaggingGUI::getListTagsJSCall($this->ajax_hash, $redraw_js), count($tags)); } } // notes and comments $comments_enabled = $this->isCommentsActivated($this->type, $this->ref_id, $this->obj_id, true, false); if ($this->notes_enabled || $comments_enabled) { include_once "./Services/Notes/classes/class.ilNote.php"; include_once "./Services/Notes/classes/class.ilNoteGUI.php"; $cnt = ilNote::_countNotesAndComments($this->obj_id, $this->sub_obj_id); if ($this->notes_enabled && $cnt[$this->obj_id][IL_NOTE_PRIVATE] > 0) { $this->addHeaderIcon("notes", ilUtil::getImagePath("note_unlabeled.png"), $lng->txt("private_notes") . ": " . $cnt[$this->obj_id][IL_NOTE_PRIVATE], ilNoteGUI::getListNotesJSCall($this->ajax_hash, $redraw_js), $cnt[$this->obj_id][IL_NOTE_PRIVATE]); } if ($comments_enabled && $cnt[$this->obj_id][IL_NOTE_PUBLIC] > 0) { $lng->loadLanguageModule("notes"); $this->addHeaderIcon("comments", ilUtil::getImagePath("comment_unlabeled.png"), $lng->txt("notes_public_comments") . ": " . $cnt[$this->obj_id][IL_NOTE_PUBLIC], ilNoteGUI::getListCommentsJSCall($this->ajax_hash, $redraw_js), $cnt[$this->obj_id][IL_NOTE_PUBLIC]); } } if ($this->header_icons) { include_once "./Services/UIComponent/Tooltip/classes/class.ilTooltipGUI.php"; $chunks = array(); foreach ($this->header_icons as $id => $attr) { $id = "headp_" . $id; if (is_array($attr)) { if ($attr["onclick"]) { $htpl->setCurrentBlock("onclick"); $htpl->setVariable("PROP_ONCLICK", $attr["onclick"]); $htpl->parseCurrentBlock(); } if ($attr["status_text"]) { $htpl->setCurrentBlock("status"); $htpl->setVariable("PROP_TXT", $attr["status_text"]); $htpl->parseCurrentBlock(); } if (!$attr["href"]) { $attr["href"] = "#"; } $htpl->setCurrentBlock("prop"); $htpl->setVariable("PROP_ID", $id); $htpl->setVariable("IMG", ilUtil::img($attr["img"])); $htpl->setVariable("PROP_HREF", $attr["href"]); $htpl->parseCurrentBlock(); if ($attr["tooltip"]) { ilTooltipGUI::addTooltip($id, $attr["tooltip"]); } } else { $chunks[] = $attr; } } if (sizeof($chunks)) { $htpl->setVariable("PROP_CHUNKS", implode(" ", $chunks) . " "); } } $htpl->setVariable("ACTION_DROP_DOWN", $this->insertCommands(false, false, "", true)); return $htpl->get(); }