Public Member Functions | |
ilMainMenuGUI ($a_target="_top", $a_use_start_template=false) | |
setSmallMode ($a_small) | |
setActive ($a_active) | |
setTemplate (&$tpl) | |
set output template | |
getTemplate () | |
get output template | |
addMenuBlock ($a_var="CONTENT", $a_block="navigation") | |
add menu template as block | |
setTemplateVars () | |
set all template variables (images, scripts, target frames, ...) | |
getScriptTarget ($a_script) | |
generates complete script target (private) | |
_checkAdministrationPermission () | |
getHTML () | |
Data Fields | |
$ilias | |
$tpl | |
$target | |
$start_template |
Definition at line 32 of file class.ilMainMenuGUI.php.
ilMainMenuGUI::_checkAdministrationPermission | ( | ) |
Definition at line 340 of file class.ilMainMenuGUI.php.
References $rbacsystem, and ilUtil::_getObjectsByOperations().
Referenced by ilObjForumGUI::createObject(), ilAdministrationGUI::executeCommand(), and setTemplateVars().
{ global $rbacsystem; if($rbacsystem->checkAccess("visible,read", SYSTEM_FOLDER_ID)) { return true; } return false; // Allow all local admins to use the administration return count(ilUtil::_getObjectsByOperations('cat','cat_administrate_users')) ? true : false; }
ilMainMenuGUI::addMenuBlock | ( | $ | a_var = "CONTENT" , |
|
$ | a_block = "navigation" | |||
) |
add menu template as block
Definition at line 98 of file class.ilMainMenuGUI.php.
{ echo "ilMainMenu->addMenuBlick is deprecated. Use getHTML instead."; return; $this->tpl->addBlockFile($a_var, $a_block, "tpl.main_buttons.html"); }
ilMainMenuGUI::getHTML | ( | ) |
Definition at line 353 of file class.ilMainMenuGUI.php.
References setTemplateVars().
{ $this->setTemplateVars(); return $this->tpl->get(); }
ilMainMenuGUI::getScriptTarget | ( | $ | a_script | ) |
generates complete script target (private)
Definition at line 320 of file class.ilMainMenuGUI.php.
References $ilias.
Referenced by setTemplateVars().
{ global $ilias; $script = "./".$a_script; //if ($this->start_template == true) //{ //if(is_file("./templates/".$ilias->account->skin."/tpl.start.html")) //{ // $script = "./start.php?script=".rawurlencode($script); //} //} if (defined("ILIAS_MODULE")) { $script = ".".$script; } return $script; }
ilMainMenuGUI::getTemplate | ( | ) |
get output template
Definition at line 88 of file class.ilMainMenuGUI.php.
{ echo "ilMainMenu->getTemplate is deprecated. Use getHTML instead."; return; return $this->tpl; }
ilMainMenuGUI::ilMainMenuGUI | ( | $ | a_target = "_top" , |
|
$ | a_use_start_template = false | |||
) |
string | $a_target target frame | |
boolean | $a_use_start_template true means: target scripts should be called through start template |
Definition at line 50 of file class.ilMainMenuGUI.php.
References $ilias.
{ global $ilias; $this->tpl = new ilTemplate("tpl.main_buttons.html", true, true); $this->ilias =& $ilias; $this->target = $a_target; $this->start_template = $a_use_start_template; $this->small = false; }
ilMainMenuGUI::setActive | ( | $ | a_active | ) |
string | $a_active "desktop"|"repository"|"search"|"mail"|"administration" |
Definition at line 70 of file class.ilMainMenuGUI.php.
{ $this->active = $a_active; }
ilMainMenuGUI::setSmallMode | ( | $ | a_small | ) |
Definition at line 62 of file class.ilMainMenuGUI.php.
{ $this->small = $a_small; }
ilMainMenuGUI::setTemplate | ( | &$ | tpl | ) |
set output template
Definition at line 78 of file class.ilMainMenuGUI.php.
References $tpl.
{ echo "ilMainMenu->setTemplate is deprecated. Use getHTML instead."; return; $this->tpl =& $tpl; }
ilMainMenuGUI::setTemplateVars | ( | ) |
set all template variables (images, scripts, target frames, ...)
Definition at line 108 of file class.ilMainMenuGUI.php.
References $_GET, $_SESSION, $add, $ilias, $lng, $mbox, $obj_id, $rbacsystem, $tree, $type, _checkAdministrationPermission(), ilMailbox::_countNewMails(), ilObjSystemFolder::_getHeaderTitle(), ilSearchSettings::_getSearchSettingRefId(), ilLanguage::_lookupEntry(), _lookupObjId(), ilRegistrationSettings::_lookupRegistrationType(), ilObject::_lookupType(), ilUtil::getImagePath(), getScriptTarget(), ilUtil::getStyleSheetLocation(), and ilMailbox::hasNewMail().
Referenced by getHTML().
{ global $rbacsystem, $lng, $ilias, $tree; // administration button #if ($rbacsystem->checkAccess("visible,read", SYSTEM_FOLDER_ID)) if(ilMainMenuGUI::_checkAdministrationPermission()) { $this->tpl->setCurrentBlock("userisadmin"); $this->tpl->setVariable("IMG_ADMIN", ilUtil::getImagePath("navbar/admin.gif", false)); $this->tpl->setVariable("IMG_SPACE_ADMIN", ilUtil::getImagePath("spacer.gif", false)); $this->tpl->setVariable("TXT_ADMINISTRATION", $lng->txt("administration")); $this->tpl->setVariable("SCRIPT_ADMIN", $this->getScriptTarget("ilias.php?baseClass=ilAdministrationGUI")); $this->tpl->setVariable("TARGET_ADMIN", $this->target); if ($this->active == "administration") { $this->tpl->setVariable("MM_CLASS", "MMActive"); } else { $this->tpl->setVariable("MM_CLASS", "MMInactive"); } $this->tpl->parseCurrentBlock(); } include_once 'Services/Search/classes/class.ilSearchSettings.php'; if($rbacsystem->checkAccess('search',ilSearchSettings::_getSearchSettingRefId())) { $this->tpl->setCurrentBlock("searchbutton"); $this->tpl->setVariable("SCRIPT_SEARCH",$this->getScriptTarget('search.php')); #$this->tpl->setVariable("SCRIPT_SEARCH",$this->getScriptTarget('search_new.php')); $this->tpl->setVariable("TARGET_SEARCH",$this->target); $this->tpl->setVariable("TXT_SEARCH", $lng->txt("search")); if ($this->active == "search") { $this->tpl->setVariable("MM_CLASS", "MMActive"); } else { $this->tpl->setVariable("MM_CLASS", "MMInactive"); } $this->tpl->parseCurrentBlock(); } // help button //$this->tpl->setCurrentBlock("userhelp"); //$this->tpl->setVariable("TXT_HELP", $lng->txt("help")); //$this->tpl->setVariable("SCRIPT_HELP", "ilias.php?baseClass=ilHelpGUI"); //$this->tpl->setVariable("TARGET_HELP", "ilias_help"); //$this->tpl->parseCurrentBlock(); $this->tpl->setVariable("IMG_SPACE", ilUtil::getImagePath("spacer.gif", false)); // mail & desktop button if ($_SESSION["AccountId"] != ANONYMOUS_USER_ID) { $this->tpl->setCurrentBlock("desktopbutton"); $this->tpl->setVariable("IMG_DESK", ilUtil::getImagePath("navbar/desk.gif", false)); $this->tpl->setVariable("IMG_SPACE_DESK", ilUtil::getImagePath("spacer.gif", false)); $this->tpl->setVariable("TXT_PERSONAL_DESKTOP", $lng->txt("personal_desktop")); $this->tpl->setVariable("SCRIPT_DESK", $this->getScriptTarget("ilias.php?baseClass=ilPersonalDesktopGUI&PDHistory=1")); $this->tpl->setVariable("TARGET_DESK", $this->target); if ($this->active == "desktop") { $this->tpl->setVariable("MM_CLASS", "MMActive"); } else { $this->tpl->setVariable("MM_CLASS", "MMInactive"); } $this->tpl->parseCurrentBlock(); include_once "./classes/class.ilMail.php"; $mail =& new ilMail($_SESSION["AccountId"]); if($rbacsystem->checkAccess('mail_visible',$mail->getMailObjectReferenceId())) { $link = "mail_frameset.php"; if ($mail_id = ilMailbox::hasNewMail($_SESSION["AccountId"])) { $mbox = new ilMailbox($_SESSION["AccountId"]); $mail =& new ilMail($_SESSION['AccountId']); $folder_id = $mbox->getInboxFolder(); //$link = "mail_frameset.php?target=". // htmlentities(urlencode("mail_read.php?mobj_id=". // $folder_id."&mail_id=".$mail_id)); $add = " ".sprintf($lng->txt("cnt_new"), ilMailbox::_countNewMails($_SESSION["AccountId"])); } $this->tpl->setCurrentBlock("mailbutton"); $this->tpl->setVariable("IMG_MAIL", ilUtil::getImagePath("navbar/mail.gif", false)); $this->tpl->setVariable("IMG_SPACE_MAIL", ilUtil::getImagePath("spacer.gif", false)); $this->tpl->setVariable("TXT_MAIL", $lng->txt("mail").$add); $this->tpl->setVariable("SCRIPT_MAIL", $this->getScriptTarget($link)); $this->tpl->setVariable("TARGET_MAIL", $this->target); if ($this->active == "mail") { $this->tpl->setVariable("MM_CLASS", "MMActive"); } else { $this->tpl->setVariable("MM_CLASS", "MMInactive"); } $this->tpl->parseCurrentBlock(); } } // repository link $this->tpl->setCurrentBlock("rep_button"); $this->tpl->setVariable("SCRIPT_CATALOG", $this->getScriptTarget("repository.php?cmd=frameset&getlast=true")); $this->tpl->setVariable("TXT_CATALOG", $lng->txt("repository")); if ($this->active == "repository" || $this->active == "") { $this->tpl->setVariable("MM_CLASS", "MMActive"); } else { $this->tpl->setVariable("MM_CLASS", "MMInactive"); } // set target frame $this->tpl->setVariable("TARGET", $this->target); $this->tpl->parseCurrentBlock(); $link_dir = (defined("ILIAS_MODULE")) ? "../" : ""; if (!$this->small) { // login stuff if ($_SESSION["AccountId"] == ANONYMOUS_USER_ID) { include_once 'Services/Registration/classes/class.ilRegistrationSettingsGUI.php'; if (ilRegistrationSettings::_lookupRegistrationType() != IL_REG_DISABLED) { $this->tpl->setCurrentBlock("registration_link"); $this->tpl->setVariable("TXT_REGISTER",$lng->txt("register")); $this->tpl->setVariable("LINK_REGISTER", $link_dir."register.php?client_id=".rawurlencode(CLIENT_ID)."&lang=".$ilias->account->getCurrentLanguage()); $this->tpl->parseCurrentBlock(); } $languages = $lng->getInstalledLanguages(); foreach ($languages as $lang_key) { $this->tpl->setCurrentBlock("languages"); $this->tpl->setVariable("LANG_KEY", $lang_key); $this->tpl->setVariable("LANG_NAME", ilLanguage::_lookupEntry($lang_key, "meta", "meta_l_".$lang_key)); $this->tpl->parseCurrentBlock(); } $this->tpl->setVariable("TXT_OK", $lng->txt("ok")); $this->tpl->setVariable("LANG_FORM_ACTION", "repository.php?ref_id=".$_GET["ref_id"]); $this->tpl->setVariable("TXT_CHOOSE_LANGUAGE", $lng->txt("choose_language")); $this->tpl->setCurrentBlock("userisanonymous"); $this->tpl->setVariable("TXT_NOT_LOGGED_IN",$lng->txt("not_logged_in")); $this->tpl->setVariable("TXT_LOGIN",$lng->txt("log_in")); $target_str = ""; if ($_GET["ref_id"] != "") { if ($tree->isInTree($_GET["ref_id"]) && $_GET["ref_id"] != $tree->getRootId()) { $obj_id = ilObject::_lookupObjId($_GET["ref_id"]); $type = ilObject::_lookupType($obj_id); $target_str = $type."_".$_GET["ref_id"]; } } $this->tpl->setVariable("LINK_LOGIN", $link_dir."login.php?target=".$target_str."&client_id=".rawurlencode(CLIENT_ID)."&cmd=force_login&lang=".$ilias->account->getCurrentLanguage()); $this->tpl->parseCurrentBlock(); } else { $this->tpl->setCurrentBlock("userisloggedin"); $this->tpl->setVariable("TXT_LOGIN_AS",$lng->txt("login_as")); $this->tpl->setVariable("TXT_LOGOUT2",$lng->txt("logout")); $this->tpl->setVariable("LINK_LOGOUT2", $link_dir."logout.php?lang=".$ilias->account->getCurrentLanguage()); $this->tpl->setVariable("USERNAME",$ilias->account->getFullname()); $this->tpl->parseCurrentBlock(); } $this->tpl->setVariable("LOCATION_STYLESHEET", ilUtil::getStyleSheetLocation()); //$this->tpl->setVariable("JS_BUTTONS", ilUtil::getJSPath("buttons.js")); $this->tpl->setVariable("TXT_LOGOUT", $lng->txt("logout")); $this->tpl->setVariable("HEADER_ICON", ilUtil::getImagePath("HeaderIcon.png")); $this->tpl->setVariable("HEADER_BG_IMAGE", ilUtil::getImagePath("HeaderBackground.gif")); include_once("classes/class.ilObjSystemFolder.php"); $this->tpl->setVariable("TXT_HEADER_TITLE", ilObjSystemFolder::_getHeaderTitle()); // set link to return to desktop, not depending on a specific position in the hierarchy //$this->tpl->setVariable("SCRIPT_START", $this->getScriptTarget("start.php")); } $this->tpl->parseCurrentBlock(); }
ilMainMenuGUI::$ilias |
Definition at line 39 of file class.ilMainMenuGUI.php.
Referenced by getScriptTarget(), ilMainMenuGUI(), and setTemplateVars().
ilMainMenuGUI::$start_template |
Definition at line 42 of file class.ilMainMenuGUI.php.
ilMainMenuGUI::$target |
Definition at line 41 of file class.ilMainMenuGUI.php.
ilMainMenuGUI::$tpl |
Definition at line 40 of file class.ilMainMenuGUI.php.
Referenced by setTemplate().