• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/menu.php
  • Класс: CMenu
  • Вызов: CMenu::GetMenuHtmlEx
function GetMenuHtmlEx()
{
	/**
	 * @global CMain $APPLICATION
	 * @noinspection PhpUnusedLocalVariableInspection
	 */
	global $USER, $DB, $APPLICATION; // must be!

	if(!$this->RecalcMenu())
		return false;

	// $arMENU - menu array copy
	// $arMENU_LINK - reference to menu array
	/** @noinspection PhpUnusedLocalVariableInspection */
	$arMENU_LINK = $MENU_ITEMS = &$this->arMenu;
	/** @noinspection PhpUnusedLocalVariableInspection */
	$arMENU = $this->arMenu;
	$sMenu = "";

	include($this->MenuTemplate);

	$result = $sMenu;

	$arIcons = array();
	$bShowButtons = false;
	$sMenuFile = $this->MenuDir.".".$this->type.".menu.php";
	if($APPLICATION->GetShowIncludeAreas())
	{
		$menu_perm = $APPLICATION->GetFileAccessPermission($sMenuFile);
		$templ_perm = $APPLICATION->GetFileAccessPermission($this->template);
		if($menu_perm >= "W")
		{
			$arIcons[] = array(
				"URL"=>"/bitrix/admin/fileman_menu_edit.php?lang=".LANGUAGE_ID."&site=".SITE_ID."&back_url=".urlencode($_SERVER["REQUEST_URI"])."&path=".urlencode($this->MenuDir)."&name=".$this->type,
				"ICON"=>"menu-edit",
				"TITLE"=>GetMessage("MAIN_MENU_EDIT")
			);
		}
		if($templ_perm>="W" && $USER->IsAdmin())
		{
			$arIcons[] = array(
				"URL"=>"/bitrix/admin/fileman_file_edit.php?lang=".LANGUAGE_ID."&site=".SITE_ID."&back_url=".urlencode($_SERVER["REQUEST_URI"])."&full_src=Y&path=".urlencode($this->template),
				"ICON"=>"menu-template",
				"TITLE"=>GetMessage("MAIN_MENU_TEMPLATE_EDIT")
			);
		}
		if(!empty($arIcons))
		{
			$result = $APPLICATION->IncludeStringBefore().$result;
			$bShowButtons = true;
		}
	}

	if($this->debug)
		$result .= $this->debug->Output($sMenuFile, $sMenuFile);

	if($bShowButtons)
		$result .= $APPLICATION->IncludeStringAfter($arIcons);

	return $result;
}