getMenu(); $item =& $menu->getItem($itemId); if($item) { if($item->type == 'url') //External menu item { $redirect = $item->link; } else if($item->type == 'alias') //Alias menu item { $aliasedId = $item->params->get('aliasoptions'); if($isLogout && SCLibraryUtilities::isMenuRegistered($aliasedId)) $link = 'index.php'; else $link = SCLibraryUtilities::getLinkWithItemId($item->link, $aliasedId); $redirect = JRoute::_($link, false); } else //Regular menu item { if($isLogout && SCLibraryUtilities::isMenuRegistered($itemId)) $link = 'index.php'; else $link = SCLibraryUtilities::getLinkWithItemId($item->link, $itemId); $redirect = JRoute::_($link, false); } } else $redirect = ''; return $redirect; } static function getLinkWithItemId($link, $itemId) { $app =JFactory::getApplication(); $router = $app->getRouter(); if($link) { if ($router->getMode() == JROUTER_MODE_SEF) $url = 'index.php?Itemid=' . $itemId; else $url = $link . '&Itemid=' . $itemId; } else $url = ''; return $url; } static function isMenuRegistered($menuItemId) { $db = JFactory::getDBO(); $query = "SELECT * FROM #__menu WHERE id=" . $db->quote($menuItemId); $db->setQuery($query); $menuItem = $db->loadObject(); return ($menuItem && $menuItem->access != "1"); } }