예제 #1
0
 /**
  * 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();
 }
 /**
  * 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();
 }
예제 #3
0
 /**
  * Get HTML
  *
  * @param
  * @return
  */
 function getHTML()
 {
     global $lng, $ilCtrl;
     $lng->loadLanguageModule("tagging");
     $tpl = new ilTemplate("tpl.edit_tags.html", true, true, "Services/Tagging");
     $tpl->setVariable("TXT_TAGS", $lng->txt("tagging_tags"));
     switch ($_GET["mess"] != "" ? $_GET["mess"] : $this->mess) {
         case "mod":
             $mtype = "success";
             $mtxt = $lng->txt("msg_obj_modified");
             break;
     }
     if ($mtxt != "") {
         $tpl->setVariable("MESS", $tpl->getMessageHTML($mtxt, $mtype));
     } else {
         $tpl->setVariable("MESS", "");
     }
     $img = ilUtil::img(ilObject::_getIcon($this->obj_id, "tiny"));
     $tpl->setVariable("TXT_OBJ_TITLE", $img . " " . ilObject::_lookupTitle($this->obj_id));
     $tags = ilTagging::getTagsForUserAndObject($this->obj_id, $this->obj_type, $this->sub_obj_id, $this->sub_obj_type, $this->getUserId());
     $tpl->setVariable("VAL_TAGS", ilUtil::prepareFormOutput(implode($tags, " ")));
     $tpl->setVariable("TXT_SAVE", $lng->txt("save"));
     $tpl->setVariable("CMD_SAVE", "saveJS");
     $os = "ilTagging.cmdAjaxForm(event, '" . $ilCtrl->getFormActionByClass("iltagginggui", "", "", true) . "');";
     $tpl->setVariable("ON_SUBMIT", $os);
     echo $tpl->get();
     exit;
 }
예제 #4
0
 /**
  * Get HTML
  *
  * @param
  * @return
  */
 function getHTML()
 {
     global $lng, $ilCtrl;
     $lng->loadLanguageModule("tagging");
     $tpl = new ilTemplate("tpl.edit_tags.html", true, true, "Services/Tagging");
     $tpl->setVariable("TXT_TAGS", $lng->txt("tagging_tags"));
     switch ($_GET["mess"] != "" ? $_GET["mess"] : $this->mess) {
         case "mod":
             $mtype = "success";
             $mtxt = $lng->txt("msg_obj_modified");
             break;
     }
     if ($mtxt != "") {
         $tpl->setVariable("MESS", $tpl->getMessageHTML($mtxt, $mtype));
     } else {
         $tpl->setVariable("MESS", "");
     }
     $img = ilUtil::img(ilObject::_getIcon($this->obj_id, "tiny"));
     $tpl->setVariable("TXT_OBJ_TITLE", $img . " " . ilObject::_lookupTitle($this->obj_id));
     $tags = ilTagging::getTagsForUserAndObject($this->obj_id, $this->obj_type, $this->sub_obj_id, $this->sub_obj_type, $this->getUserId());
     $tpl->setVariable("VAL_TAGS", ilUtil::prepareFormOutput(implode($tags, " ")));
     $tpl->setVariable("TXT_SAVE", $lng->txt("save"));
     $tpl->setVariable("CMD_SAVE", "saveJS");
     $os = "ilTagging.cmdAjaxForm(event, '" . $ilCtrl->getFormActionByClass("iltagginggui", "", "", true) . "');";
     $tpl->setVariable("ON_SUBMIT", $os);
     $tags_set = new ilSetting("tags");
     if ($tags_set->get("enable_all_users")) {
         $tpl->setVariable("TAGS_TITLE", $lng->txt("tagging_my_tags"));
         $all_obj_tags = ilTagging::_getListTagsForObjects(array($this->obj_id));
         $all_obj_tags = $all_obj_tags[$this->obj_id];
         if (is_array($all_obj_tags) && sizeof($all_obj_tags) != sizeof($tags)) {
             $tpl->setVariable("TITLE_OTHER", $lng->txt("tagging_other_users"));
             $tpl->setCurrentBlock("tag_other_bl");
             foreach ($all_obj_tags as $tag => $is_owner) {
                 if (!$is_owner) {
                     $tpl->setVariable("OTHER_TAG", $tag);
                     $tpl->parseCurrentBlock();
                 }
             }
         }
     }
     echo $tpl->get();
     exit;
 }