public static function getMainMenu() { if (!isAdmin()) { return ''; } $sUri = $_SERVER['REQUEST_URI']; $sPath = parse_url(BX_DOL_URL_ROOT, PHP_URL_PATH); if ($sPath && $sPath != '/' && 0 == strncmp($sPath, $sUri, strlen($sPath))) { $sUri = substr($sUri, strlen($sPath) - strlen($sUri)); } $sUri = BX_DOL_URL_ROOT . trim($sUri, '/'); $sFile = basename($_SERVER['PHP_SELF']); $oPermalinks = new BxDolPermalinks(); $aMenu = $GLOBALS['MySQL']->getAll("SELECT `id`, `name`, `title`, `url`, `icon` FROM `sys_menu_admin` WHERE `parent_id`='0' ORDER BY `order`"); $oZ = new BxDolAlerts('system', 'admin_menu', 0, 0, array('parent' => false, 'menu' => &$aMenu)); $oZ->alert(); $oBxDolAdminMenu = new self(); $aItems = array(); foreach ($aMenu as $aMenuItem) { $aMenuItem['url'] = str_replace(array('{siteUrl}', '{siteAdminUrl}'), array(BX_DOL_URL_ROOT, BX_DOL_URL_ADMIN), $aMenuItem['url']); $bActiveCateg = $sFile == 'index.php' && !empty($_GET['cat']) && $_GET['cat'] == $aMenuItem['name']; $aSubmenu = $GLOBALS['MySQL']->getAll("SELECT * FROM `sys_menu_admin` WHERE `parent_id`= ? ORDER BY `order`", [$aMenuItem['id']]); $oZ = new BxDolAlerts('system', 'admin_menu', 0, 0, array('parent' => &$aMenuItem, 'menu' => &$aSubmenu)); $oZ->alert(); $aSubitems = array(); foreach ($aSubmenu as $aSubmenuItem) { $aSubmenuItem['url'] = $oPermalinks->permalink($aSubmenuItem['url']); $aSubmenuItem['url'] = str_replace(array('{siteUrl}', '{siteAdminUrl}'), array(BX_DOL_URL_ROOT, BX_DOL_URL_ADMIN), $aSubmenuItem['url']); if (!defined('BX_DOL_ADMIN_INDEX') && $aSubmenuItem['url'] != '' && (strpos($sUri, $aSubmenuItem['url']) !== false || strpos($aSubmenuItem['url'], $sUri) !== false)) { $bActiveCateg = $bActiveItem = true; } else { $bActiveItem = false; } $aSubitems[] = $oBxDolAdminMenu->_getMainMenuSubitem($aSubmenuItem, $bActiveItem); } $aItems[] = $oBxDolAdminMenu->_getMainMenuItem($aMenuItem, $aSubitems, $bActiveCateg); } return $GLOBALS['oAdmTemplate']->parseHtmlByName('main_menu.html', array('bx_repeat:items' => $aItems)); }