Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/core/Menu
diff options
context:
space:
mode:
authorFabian Becker <halfdan@xnorfz.de>2013-01-29 22:17:57 +0400
committerFabian Becker <halfdan@xnorfz.de>2013-01-29 22:17:57 +0400
commit388792fc912351eb32f194bb96a0c4f2c46a41fd (patch)
tree315da676c78842b75951ee986e873b36ce9cb7d9 /core/Menu
parent15cbd9a535a401d7428b062ef08cc8d244fccebc (diff)
New admin menus, hooray!
New vertical admin menus are organized as follow: - Predefined menus are Manage, Settings, Diagnostics, Plugins, Community - New submenus can be defined via Piwik_AddAdminSubMenu() - Piwik_AddAdminMenu defaults to "Settings" fixed #1552 git-svn-id: http://dev.piwik.org/svn/trunk@7815 59fd770c-687e-43c8-a1e3-f5a4ff64c105
Diffstat (limited to 'core/Menu')
-rw-r--r--core/Menu/Abstract.php4
-rw-r--r--core/Menu/Admin.php29
2 files changed, 26 insertions, 7 deletions
diff --git a/core/Menu/Abstract.php b/core/Menu/Abstract.php
index d1b483721b..50222d15e7 100644
--- a/core/Menu/Abstract.php
+++ b/core/Menu/Abstract.php
@@ -86,7 +86,9 @@ abstract class Piwik_Menu_Abstract
if (!isset($this->menu[$menuName]) || empty($subMenuName))
{
$this->menu[$menuName]['_url'] = $url;
- $this->menu[$menuName]['_order'] = $order;
+ if(empty($subMenuName)) {
+ $this->menu[$menuName]['_order'] = $order;
+ }
$this->menu[$menuName]['_name'] = $menuName;
$this->menu[$menuName]['_hasSubmenu'] = false;
$this->menu[$menuName]['_tooltip'] = $tooltip;
diff --git a/core/Menu/Admin.php b/core/Menu/Admin.php
index ddc7da32fd..6e2dd5b018 100644
--- a/core/Menu/Admin.php
+++ b/core/Menu/Admin.php
@@ -54,12 +54,15 @@ function Piwik_GetCurrentAdminMenuName()
$menu = Piwik_GetAdminMenu();
$currentModule = Piwik::getModule();
$currentAction = Piwik::getAction();
- foreach($menu as $name => $parameters)
+ foreach($menu as $name => $submenu)
{
- if($parameters['_url']['module'] == $currentModule
- && $parameters['_url']['action'] == $currentAction)
- {
- return $name;
+ foreach($submenu as $subMenuName => $parameters) {
+ if(strpos($subMenuName, '_') !== 0 &&
+ $parameters['_url']['module'] == $currentModule
+ && $parameters['_url']['action'] == $currentAction)
+ {
+ return $subMenuName;
+ }
}
}
return false;
@@ -85,7 +88,21 @@ function Piwik_GetAdminMenu()
*/
function Piwik_AddAdminMenu( $adminMenuName, $url, $displayedForCurrentUser = true, $order = 10 )
{
- Piwik_Menu_Admin::getInstance()->add($adminMenuName, null, $url, $displayedForCurrentUser, $order);
+ Piwik_Menu_Admin::getInstance()->add('General_Settings', $adminMenuName, $url, $displayedForCurrentUser, $order);
+}
+
+/**
+ * Adds a new AdminMenu entry with a submenu.
+ *
+ * @param string $adminMenuName
+ * @param string $adminSubMenuName
+ * @param string $url
+ * @param boolean $displayedForCurrentUser
+ * @param int $order
+ */
+function Piwik_AddAdminSubMenu( $adminMenuName, $adminSubMenuName, $url, $displayedForCurrentUser = true, $order = 10 )
+{
+ Piwik_Menu_Admin::getInstance()->add($adminMenuName, $adminSubMenuName, $url, $displayedForCurrentUser, $order);
}
/**