mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-22 13:25:11 +02:00
2012-06-18 Sergio Martin <sergio.martin@artica.es>
* include/functions_menu.php index.php operation/menu.php godmode/menu.php: Added functions to manage sec and sec2 to control access in ACLs. Rename variables in menu construction to can get all the sata structures in other sections Merged from 4.0.2 git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@6574 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This commit is contained in:
parent
5baf5a0b91
commit
b7aa4f7a3c
@ -1,3 +1,13 @@
|
|||||||
|
2012-06-18 Sergio Martin <sergio.martin@artica.es>
|
||||||
|
|
||||||
|
* include/functions_menu.php
|
||||||
|
index.php
|
||||||
|
operation/menu.php
|
||||||
|
godmode/menu.php: Added functions to manage sec and sec2 to control
|
||||||
|
access in ACLs. Rename variables in menu construction to can get
|
||||||
|
all the sata structures in other sections
|
||||||
|
Merged from 4.0.2
|
||||||
|
|
||||||
2012-06-18 Vanessa Gil <vanessa.gil@artica.es>
|
2012-06-18 Vanessa Gil <vanessa.gil@artica.es>
|
||||||
|
|
||||||
* include/functions_config.php: Fixed bug: Notice to change
|
* include/functions_config.php: Fixed bug: Notice to change
|
||||||
|
@ -21,13 +21,13 @@ check_login ();
|
|||||||
enterprise_include ('godmode/menu.php');
|
enterprise_include ('godmode/menu.php');
|
||||||
require_once ('include/functions_menu.php');
|
require_once ('include/functions_menu.php');
|
||||||
|
|
||||||
$menu = array ();
|
$menu_godmode = array ();
|
||||||
$menu['class'] = 'godmode';
|
$menu_godmode['class'] = 'godmode';
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
||||||
$menu["gagente"]["text"] = __('Manage monitoring');
|
$menu_godmode["gagente"]["text"] = __('Manage monitoring');
|
||||||
$menu["gagente"]["sec2"] = "godmode/agentes/modificar_agente";
|
$menu_godmode["gagente"]["sec2"] = "godmode/agentes/modificar_agente";
|
||||||
$menu["gagente"]["id"] = "god-agents";
|
$menu_godmode["gagente"]["id"] = "god-agents";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub['godmode/agentes/modificar_agente']['text'] = __('Manage agents');
|
$sub['godmode/agentes/modificar_agente']['text'] = __('Manage agents');
|
||||||
@ -44,13 +44,13 @@ if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
|||||||
}
|
}
|
||||||
enterprise_hook('agents_submenu');
|
enterprise_hook('agents_submenu');
|
||||||
|
|
||||||
$menu["gagente"]["sub"] = $sub;
|
$menu_godmode["gagente"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
||||||
$menu["gmassive"]["text"] = __('Massive operations');
|
$menu_godmode["gmassive"]["text"] = __('Massive operations');
|
||||||
$menu["gmassive"]["sec2"] = "godmode/massive/massive_operations";
|
$menu_godmode["gmassive"]["sec2"] = "godmode/massive/massive_operations";
|
||||||
$menu["gmassive"]["id"] = "god-massive";
|
$menu_godmode["gmassive"]["id"] = "god-massive";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["godmode/massive/massive_operations&tab=massive_agents"]["text"] = __('Agents operations');
|
$sub["godmode/massive/massive_operations&tab=massive_agents"]["text"] = __('Agents operations');
|
||||||
@ -61,7 +61,7 @@ if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
|||||||
$sub["godmode/massive/massive_operations&tab=massive_alerts"]["text"] = __('Alerts operations');
|
$sub["godmode/massive/massive_operations&tab=massive_alerts"]["text"] = __('Alerts operations');
|
||||||
enterprise_hook('massivepolicies_submenu');
|
enterprise_hook('massivepolicies_submenu');
|
||||||
|
|
||||||
$menu["gmassive"]["sub"] = $sub;
|
$menu_godmode["gmassive"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -71,9 +71,9 @@ if (check_acl ($config['id_user'], 0, "AW")) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "PM") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "PM") and ($config['metaconsole'] == 0)) {
|
||||||
$menu["gmodules"]["text"] = __('Manage modules');
|
$menu_godmode["gmodules"]["text"] = __('Manage modules');
|
||||||
$menu["gmodules"]["sec2"] = "godmode/modules/manage_network_templates";
|
$menu_godmode["gmodules"]["sec2"] = "godmode/modules/manage_network_templates";
|
||||||
$menu["gmodules"]["id"] = "god-modules";
|
$menu_godmode["gmodules"]["id"] = "god-modules";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["godmode/modules/manage_nc_groups"]["text"] = __('Component groups');
|
$sub["godmode/modules/manage_nc_groups"]["text"] = __('Component groups');
|
||||||
@ -88,13 +88,13 @@ if (check_acl ($config['id_user'], 0, "PM") and ($config['metaconsole'] == 0)) {
|
|||||||
|
|
||||||
$sub["godmode/modules/module_list"]["text"] = __('Module types');
|
$sub["godmode/modules/module_list"]["text"] = __('Module types');
|
||||||
|
|
||||||
$menu["gmodules"]["sub"] = $sub;
|
$menu_godmode["gmodules"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "LM") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "LM") and ($config['metaconsole'] == 0)) {
|
||||||
$menu["galertas"]["text"] = __('Manage alerts');
|
$menu_godmode["galertas"]["text"] = __('Manage alerts');
|
||||||
$menu["galertas"]["sec2"] = "godmode/alerts/alert_list";
|
$menu_godmode["galertas"]["sec2"] = "godmode/alerts/alert_list";
|
||||||
$menu["galertas"]["id"] = "god-alerts";
|
$menu_godmode["galertas"]["id"] = "god-alerts";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["godmode/alerts/alert_templates"]["text"] = __('Templates');
|
$sub["godmode/alerts/alert_templates"]["text"] = __('Templates');
|
||||||
@ -107,7 +107,7 @@ if (check_acl ($config['id_user'], 0, "LM") and ($config['metaconsole'] == 0)) {
|
|||||||
$sub["godmode/alerts/alert_special_days"]["text"] = __('Special days list');
|
$sub["godmode/alerts/alert_special_days"]["text"] = __('Special days list');
|
||||||
enterprise_hook('eventalerts_submenu');
|
enterprise_hook('eventalerts_submenu');
|
||||||
|
|
||||||
$menu["galertas"]["sub"] = $sub;
|
$menu_godmode["galertas"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
||||||
@ -115,51 +115,51 @@ if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "UM") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "UM") and ($config['metaconsole'] == 0)) {
|
||||||
$menu["gusuarios"]["text"] = __('Manage users');
|
$menu_godmode["gusuarios"]["text"] = __('Manage users');
|
||||||
$menu["gusuarios"]["sec2"] = "godmode/users/user_list";
|
$menu_godmode["gusuarios"]["sec2"] = "godmode/users/user_list";
|
||||||
$menu["gusuarios"]["id"] = "god-users";
|
$menu_godmode["gusuarios"]["id"] = "god-users";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub['godmode/users/profile_list']['text'] = __('Manage profiles');
|
$sub['godmode/users/profile_list']['text'] = __('Manage profiles');
|
||||||
|
|
||||||
$menu["gusuarios"]["sub"] = $sub;
|
$menu_godmode["gusuarios"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
// GIS
|
// GIS
|
||||||
if (check_acl ($config['id_user'], 0, "IW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "IW") and ($config['metaconsole'] == 0)) {
|
||||||
|
|
||||||
if ($config['activate_gis']) {
|
if ($config['activate_gis']) {
|
||||||
$menu["godgismaps"]["text"] = __('GIS Maps builder');
|
$menu_godmode["godgismaps"]["text"] = __('GIS Maps builder');
|
||||||
$menu["godgismaps"]["sec2"] = "godmode/gis_maps/index";
|
$menu_godmode["godgismaps"]["sec2"] = "godmode/gis_maps/index";
|
||||||
if (!empty($config['refr'])){
|
if (!empty($config['refr'])){
|
||||||
$menu["godgismaps"]["refr"] = $config['refr'];
|
$menu_godmode["godgismaps"]["refr"] = $config['refr'];
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$menu["godgismaps"]["refr"] = 60;
|
$menu_godmode["godgismaps"]["refr"] = 60;
|
||||||
}
|
}
|
||||||
$menu["godgismaps"]["id"] = "god-gismaps";
|
$menu_godmode["godgismaps"]["id"] = "god-gismaps";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "IW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "IW") and ($config['metaconsole'] == 0)) {
|
||||||
// Manage events
|
// Manage events
|
||||||
$menu["geventos"]["text"] = __('Manage events');
|
$menu_godmode["geventos"]["text"] = __('Manage events');
|
||||||
$menu["geventos"]["sec2"] = "godmode/events/events&section=filter";
|
$menu_godmode["geventos"]["sec2"] = "godmode/events/events&section=filter";
|
||||||
$menu["geventos"]["id"] = "god-events";
|
$menu_godmode["geventos"]["id"] = "god-events";
|
||||||
|
|
||||||
// Custom event fields
|
// Custom event fields
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["godmode/events/events&section=fields"]["text"] = __('Custom events');
|
$sub["godmode/events/events&section=fields"]["text"] = __('Custom events');
|
||||||
|
|
||||||
$menu["geventos"]["sub"] = $sub;
|
$menu_godmode["geventos"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
||||||
|
|
||||||
// Servers
|
// Servers
|
||||||
$menu["gservers"]["text"] = __('Manage servers');
|
$menu_godmode["gservers"]["text"] = __('Manage servers');
|
||||||
$menu["gservers"]["sec2"] = "godmode/servers/modificar_server";
|
$menu_godmode["gservers"]["sec2"] = "godmode/servers/modificar_server";
|
||||||
$menu["gservers"]["id"] = "god-servers";
|
$menu_godmode["gservers"]["id"] = "god-servers";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["godmode/servers/manage_recontask"]["text"] = __('Manage recontask');
|
$sub["godmode/servers/manage_recontask"]["text"] = __('Manage recontask');
|
||||||
@ -173,7 +173,7 @@ if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
|||||||
enterprise_hook('export_target_submenu');
|
enterprise_hook('export_target_submenu');
|
||||||
}
|
}
|
||||||
|
|
||||||
$menu["gservers"]["sub"] = $sub;
|
$menu_godmode["gservers"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "LW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "LW") and ($config['metaconsole'] == 0)) {
|
||||||
@ -182,14 +182,14 @@ if (check_acl ($config['id_user'], 0, "LW") and ($config['metaconsole'] == 0)) {
|
|||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "PM")) {
|
if (check_acl ($config['id_user'], 0, "PM")) {
|
||||||
// Audit
|
// Audit
|
||||||
$menu["glog"]["text"] = __('System audit log');
|
$menu_godmode["glog"]["text"] = __('System audit log');
|
||||||
$menu["glog"]["sec2"] = "godmode/admin_access_logs";
|
$menu_godmode["glog"]["sec2"] = "godmode/admin_access_logs";
|
||||||
$menu["glog"]["id"] = "god-audit";
|
$menu_godmode["glog"]["id"] = "god-audit";
|
||||||
|
|
||||||
// Setup
|
// Setup
|
||||||
$menu["gsetup"]["text"] = __('Setup');
|
$menu_godmode["gsetup"]["text"] = __('Setup');
|
||||||
$menu["gsetup"]["sec2"] = "godmode/setup/setup";
|
$menu_godmode["gsetup"]["sec2"] = "godmode/setup/setup";
|
||||||
$menu["gsetup"]["id"] = "god-setup";
|
$menu_godmode["gsetup"]["id"] = "god-setup";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
|
|
||||||
@ -209,28 +209,28 @@ if (check_acl ($config['id_user'], 0, "PM")) {
|
|||||||
enterprise_hook ('skins_submenu');
|
enterprise_hook ('skins_submenu');
|
||||||
$sub["extras/pandora_diag"]["text"] = __('Diagnostic info');
|
$sub["extras/pandora_diag"]["text"] = __('Diagnostic info');
|
||||||
|
|
||||||
$menu["gsetup"]["sub"] = $sub;
|
$menu_godmode["gsetup"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "AW") and ($config['metaconsole'] == 0)) {
|
||||||
if ($config['activate_netflow']) {
|
if ($config['activate_netflow']) {
|
||||||
//Netflow
|
//Netflow
|
||||||
$menu["netf"]["text"] = __('Netflow');
|
$menu_godmode["netf"]["text"] = __('Netflow');
|
||||||
$menu["netf"]["sec2"] = "godmode/netflow/nf_report";
|
$menu_godmode["netf"]["sec2"] = "godmode/netflow/nf_report";
|
||||||
$menu["netf"]["id"] = "god-netflow";
|
$menu_godmode["netf"]["id"] = "god-netflow";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
|
|
||||||
$sub["godmode/netflow/nf_edit"]["text"] = __('Filters');
|
$sub["godmode/netflow/nf_edit"]["text"] = __('Filters');
|
||||||
$sub["godmode/netflow/nf_report"]["text"] = __('Manage reports');
|
$sub["godmode/netflow/nf_report"]["text"] = __('Manage reports');
|
||||||
$menu["netf"]["sub"] = $sub;
|
$menu_godmode["netf"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "DM") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "DM") and ($config['metaconsole'] == 0)) {
|
||||||
$menu["gdbman"]["text"] = __('DB maintenance');
|
$menu_godmode["gdbman"]["text"] = __('DB maintenance');
|
||||||
$menu["gdbman"]["sec2"] = "godmode/db/db_main";
|
$menu_godmode["gdbman"]["sec2"] = "godmode/db/db_main";
|
||||||
$menu["gdbman"]["id"] = "god-dbmaint";
|
$menu_godmode["gdbman"]["id"] = "god-dbmaint";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["godmode/db/db_info"]["text"] = __('DB information');
|
$sub["godmode/db/db_info"]["text"] = __('DB information');
|
||||||
@ -240,14 +240,14 @@ if (check_acl ($config['id_user'], 0, "DM") and ($config['metaconsole'] == 0)) {
|
|||||||
$sub["godmode/db/db_event"]["text"] = __('Database event');
|
$sub["godmode/db/db_event"]["text"] = __('Database event');
|
||||||
$sub["godmode/db/db_sanity"]["text"] = __('Database sanity');
|
$sub["godmode/db/db_sanity"]["text"] = __('Database sanity');
|
||||||
|
|
||||||
$menu["gdbman"]["sub"] = $sub;
|
$menu_godmode["gdbman"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "PM")) {
|
if (check_acl ($config['id_user'], 0, "PM")) {
|
||||||
if (is_array ($config['extensions'])) {
|
if (is_array ($config['extensions'])) {
|
||||||
$menu["gextensions"]["text"] = __('Extensions');
|
$menu_godmode["gextensions"]["text"] = __('Extensions');
|
||||||
$menu["gextensions"]["sec2"] = "godmode/extensions";
|
$menu_godmode["gextensions"]["sec2"] = "godmode/extensions";
|
||||||
$menu["gextensions"]["id"] = "god-extensions";
|
$menu_godmode["gextensions"]["id"] = "god-extensions";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
foreach ($config['extensions'] as $extension) {
|
foreach ($config['extensions'] as $extension) {
|
||||||
@ -271,30 +271,30 @@ if (check_acl ($config['id_user'], 0, "PM")) {
|
|||||||
|
|
||||||
if (array_key_exists('fatherId',$extmenu)) {
|
if (array_key_exists('fatherId',$extmenu)) {
|
||||||
// Check that extension father ID exists previously on the menu (only if metaconsole is activated)
|
// Check that extension father ID exists previously on the menu (only if metaconsole is activated)
|
||||||
if (strlen($extmenu['fatherId']) > 0 and (($config['metaconsole'] == 0) or (array_key_exists($extension_menu['fatherId'], $menu)))) {
|
if (strlen($extmenu['fatherId']) > 0 and (($config['metaconsole'] == 0) or (array_key_exists($extension_menu['fatherId'], $menu_godmode)))) {
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["text"] = __($extmenu['name']);
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["text"] = __($extmenu['name']);
|
||||||
if ($extmenu["name"] != 'DB interface'){
|
if ($extmenu["name"] != 'DB interface'){
|
||||||
if (!empty($config['refr'])){
|
if (!empty($config['refr'])){
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["refr"] = $config['refr'];
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["refr"] = $config['refr'];
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["refr"] = 60;
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["refr"] = 60;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["icon"] = $extmenu['icon'];
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["icon"] = $extmenu['icon'];
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["sec"] = 'gextensions';
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["sec"] = 'gextensions';
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["extension"] = true;
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["extension"] = true;
|
||||||
$menu[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["enterprise"] = $extension['enterprise'];
|
$menu_godmode[$extmenu['fatherId']]['sub'][$extmenu['sec2']]["enterprise"] = $extension['enterprise'];
|
||||||
|
|
||||||
$menu[$extmenu['fatherId']]['hasExtensions'] = true;
|
$menu_godmode[$extmenu['fatherId']]['hasExtensions'] = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$menu["gextensions"]["sub"] = $sub;
|
$menu_godmode["gextensions"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
menu_print_menu ($menu);
|
menu_print_menu ($menu_godmode);
|
||||||
?>
|
?>
|
||||||
|
@ -313,4 +313,100 @@ function menu_print_menu (&$menu) {
|
|||||||
echo '<ul style="height: 0px;"><li> </li></ul></div>';
|
echo '<ul style="height: 0px;"><li> </li></ul></div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all the data structure of menu. Operation and Godmode
|
||||||
|
*
|
||||||
|
* @return array Menu structure.
|
||||||
|
*/
|
||||||
|
function menu_get_full_sec() {
|
||||||
|
global $menu_operation;
|
||||||
|
global $menu_godmode;
|
||||||
|
|
||||||
|
if($menu_godmode == null || $menu_operation == null) {
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$menu = $menu_operation + $menu_godmode;
|
||||||
|
}
|
||||||
|
|
||||||
|
unset($menu['class']);
|
||||||
|
|
||||||
|
return $menu;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the sec list built in menu
|
||||||
|
*
|
||||||
|
* @return array Sections list
|
||||||
|
*/
|
||||||
|
function menu_get_sec() {
|
||||||
|
$menu = menu_get_full_sec();
|
||||||
|
unset($menu['class']);
|
||||||
|
|
||||||
|
foreach($menu as $k => $v) {
|
||||||
|
$sec_array[$k] = $v['text'];
|
||||||
|
}
|
||||||
|
|
||||||
|
return $sec_array;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the pages in a section
|
||||||
|
*
|
||||||
|
* @param string sec code
|
||||||
|
* @param string menu hash. All the menu structure (For example
|
||||||
|
* returned by menu_get_full_sec(), json encoded and after that
|
||||||
|
* base64 encoded. If this value is false this data is obtained from
|
||||||
|
* menu_get_full_sec();
|
||||||
|
*
|
||||||
|
* @return array Sections list
|
||||||
|
*/
|
||||||
|
function menu_get_sec_pages($sec,$menu_hash = false) {
|
||||||
|
if($menu_hash === false) {
|
||||||
|
$menu = menu_get_full_sec();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$menu = json_decode(base64_decode($menu_hash),true);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach($menu[$sec]['sub'] as $k => $v) {
|
||||||
|
// Avoid special cases of standalone windows
|
||||||
|
if(preg_match('/^javascript:/',$k) || preg_match('/\.php/',$k)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If this value has various parameters, we only get the first
|
||||||
|
$k = explode('&',$k);
|
||||||
|
$k = $k[0];
|
||||||
|
|
||||||
|
$sec2_array[$k] = $v['text'];
|
||||||
|
}
|
||||||
|
|
||||||
|
return $sec2_array;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if a page (sec2) is in a section (sec)
|
||||||
|
*
|
||||||
|
* @param string section (sec) code
|
||||||
|
* @param string page (sec2)code
|
||||||
|
*
|
||||||
|
* @return true if the page is in section, false otherwise
|
||||||
|
*/
|
||||||
|
function menu_sec2_in_sec($sec,$sec2) {
|
||||||
|
if($sec != 'estado') return false;
|
||||||
|
|
||||||
|
$sec2_array = menu_get_sec_pages($sec);
|
||||||
|
|
||||||
|
// If this value has various parameters, we only get the first
|
||||||
|
$sec2 = explode('&',$sec2);
|
||||||
|
$sec2 = $sec2[0];
|
||||||
|
|
||||||
|
if($sec2_array != null && in_array($sec2,array_keys($sec2_array))) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
@ -427,7 +427,7 @@ else {
|
|||||||
if ($page != "") {
|
if ($page != "") {
|
||||||
$page .= '.php';
|
$page .= '.php';
|
||||||
// Enterprise ACL check
|
// Enterprise ACL check
|
||||||
if (enterprise_hook ('enterprise_acl', array ($config['id_user'], $sec, $sec2)) == false) {
|
if (enterprise_hook ('enterprise_acl', array ($config['id_user'], $sec, $sec2, true)) == false) {
|
||||||
require ("general/noaccess.php");
|
require ("general/noaccess.php");
|
||||||
}
|
}
|
||||||
elseif (file_exists ($page)) {
|
elseif (file_exists ($page)) {
|
||||||
|
@ -22,8 +22,8 @@ require_once ('include/functions_menu.php');
|
|||||||
|
|
||||||
enterprise_include ('operation/menu.php');
|
enterprise_include ('operation/menu.php');
|
||||||
|
|
||||||
$menu = array ();
|
$menu_operation = array ();
|
||||||
$menu['class'] = 'operation';
|
$menu_operation['class'] = 'operation';
|
||||||
|
|
||||||
// Agent read, Server read
|
// Agent read, Server read
|
||||||
if (check_acl ($config['id_user'], 0, "AR")) {
|
if (check_acl ($config['id_user'], 0, "AR")) {
|
||||||
@ -32,10 +32,10 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
|
|
||||||
if ($config['metaconsole'] == 0) {
|
if ($config['metaconsole'] == 0) {
|
||||||
//View agents
|
//View agents
|
||||||
$menu["estado"]["text"] = __('Monitoring');
|
$menu_operation["estado"]["text"] = __('Monitoring');
|
||||||
$menu["estado"]["sec2"] = "operation/agentes/tactical";
|
$menu_operation["estado"]["sec2"] = "operation/agentes/tactical";
|
||||||
$menu["estado"]["refr"] = 0;
|
$menu_operation["estado"]["refr"] = 0;
|
||||||
$menu["estado"]["id"] = "oper-agents";
|
$menu_operation["estado"]["id"] = "oper-agents";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["operation/agentes/tactical"]["text"] = __('Tactical view');
|
$sub["operation/agentes/tactical"]["text"] = __('Tactical view');
|
||||||
@ -85,17 +85,17 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
$sub['operation/tree']['text'] = __('Tree view');
|
$sub['operation/tree']['text'] = __('Tree view');
|
||||||
$sub["operation/tree"]["refr"] = 0;
|
$sub["operation/tree"]["refr"] = 0;
|
||||||
|
|
||||||
$menu["estado"]["sub"] = $sub;
|
$menu_operation["estado"]["sub"] = $sub;
|
||||||
//End of view agents
|
//End of view agents
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($config['metaconsole'] == 0) {
|
if ($config['metaconsole'] == 0) {
|
||||||
//Start network view
|
//Start network view
|
||||||
|
|
||||||
$menu["network"]["text"] = __('Network View');
|
$menu_operation["network"]["text"] = __('Network View');
|
||||||
$menu["network"]["sec2"] = "operation/agentes/networkmap_list";
|
$menu_operation["network"]["sec2"] = "operation/agentes/networkmap_list";
|
||||||
$menu["network"]["refr"] = 0;
|
$menu_operation["network"]["refr"] = 0;
|
||||||
$menu["network"]["id"] = "oper-networkconsole";
|
$menu_operation["network"]["id"] = "oper-networkconsole";
|
||||||
|
|
||||||
$sub = array();
|
$sub = array();
|
||||||
|
|
||||||
@ -104,15 +104,15 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
|
|
||||||
enterprise_hook ('networkmap_console');
|
enterprise_hook ('networkmap_console');
|
||||||
|
|
||||||
$menu["network"]["sub"] = $sub;
|
$menu_operation["network"]["sub"] = $sub;
|
||||||
//End networkview
|
//End networkview
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reporting
|
// Reporting
|
||||||
$menu["reporting"]["text"] = __('Reporting');
|
$menu_operation["reporting"]["text"] = __('Reporting');
|
||||||
$menu["reporting"]["sec2"] = "godmode/reporting/reporting_builder";
|
$menu_operation["reporting"]["sec2"] = "godmode/reporting/reporting_builder";
|
||||||
$menu["reporting"]["id"] = "oper-reporting";
|
$menu_operation["reporting"]["id"] = "oper-reporting";
|
||||||
$menu["reporting"]["refr"] = 60;
|
$menu_operation["reporting"]["refr"] = 60;
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
|
|
||||||
@ -192,16 +192,16 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
enterprise_hook ('reporting_godmenu');
|
enterprise_hook ('reporting_godmenu');
|
||||||
}
|
}
|
||||||
|
|
||||||
$menu["reporting"]["sub"] = $sub;
|
$menu_operation["reporting"]["sub"] = $sub;
|
||||||
//End reporting
|
//End reporting
|
||||||
|
|
||||||
|
|
||||||
//INI GIS Maps
|
//INI GIS Maps
|
||||||
if ($config['activate_gis'] and ($config['metaconsole'] == 0)) {
|
if ($config['activate_gis'] and ($config['metaconsole'] == 0)) {
|
||||||
$menu["gismaps"]["text"] = __('GIS Maps');
|
$menu_operation["gismaps"]["text"] = __('GIS Maps');
|
||||||
$menu["gismaps"]["sec2"] = "operation/gis_maps/index";
|
$menu_operation["gismaps"]["sec2"] = "operation/gis_maps/index";
|
||||||
$menu["gismaps"]["refr"] = 0;
|
$menu_operation["gismaps"]["refr"] = 0;
|
||||||
$menu["gismaps"]["id"] = "oper-gismaps";
|
$menu_operation["gismaps"]["id"] = "oper-gismaps";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
|
|
||||||
@ -230,7 +230,7 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
$sub["operation/gis_maps/render_view&map_id=".$gisMap["id_tgis_map"]]["refr"] = 0;
|
$sub["operation/gis_maps/render_view&map_id=".$gisMap["id_tgis_map"]]["refr"] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
$menu["gismaps"]["sub"] = $sub;
|
$menu_operation["gismaps"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
//END GIS Maps
|
//END GIS Maps
|
||||||
}
|
}
|
||||||
@ -238,10 +238,10 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
// Rest of options, all with AR privilege (or should events be with incidents?)
|
// Rest of options, all with AR privilege (or should events be with incidents?)
|
||||||
if (check_acl ($config['id_user'], 0, "AR") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "AR") and ($config['metaconsole'] == 0)) {
|
||||||
// Events
|
// Events
|
||||||
$menu["eventos"]["text"] = __('View events');
|
$menu_operation["eventos"]["text"] = __('View events');
|
||||||
$menu["eventos"]["refr"] = 0;
|
$menu_operation["eventos"]["refr"] = 0;
|
||||||
$menu["eventos"]["sec2"] = "operation/events/events";
|
$menu_operation["eventos"]["sec2"] = "operation/events/events";
|
||||||
$menu["eventos"]["id"] = "oper-events";
|
$menu_operation["eventos"]["id"] = "oper-events";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["operation/events/event_statistics"]["text"] = __('Statistics');
|
$sub["operation/events/event_statistics"]["text"] = __('Statistics');
|
||||||
@ -281,13 +281,13 @@ if (check_acl ($config['id_user'], 0, "AR") and ($config['metaconsole'] == 0)) {
|
|||||||
</script>
|
</script>
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
$menu["eventos"]["sub"] = $sub;
|
$menu_operation["eventos"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Workspace
|
//Workspace
|
||||||
$menu["workspace"]["text"] = __('Workspace');
|
$menu_operation["workspace"]["text"] = __('Workspace');
|
||||||
$menu["workspace"]["sec2"] = "operation/users/user_edit";
|
$menu_operation["workspace"]["sec2"] = "operation/users/user_edit";
|
||||||
$menu["workspace"]["id"] = "oper-users";
|
$menu_operation["workspace"]["id"] = "oper-users";
|
||||||
|
|
||||||
// ANY user can view him/herself !
|
// ANY user can view him/herself !
|
||||||
// Users
|
// Users
|
||||||
@ -335,18 +335,18 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
$sub["operation/messages/message_list"]["sub2"] = $sub2;
|
$sub["operation/messages/message_list"]["sub2"] = $sub2;
|
||||||
}
|
}
|
||||||
|
|
||||||
$menu["workspace"]["sub"] = $sub;
|
$menu_operation["workspace"]["sub"] = $sub;
|
||||||
|
|
||||||
//End Workspace
|
//End Workspace
|
||||||
|
|
||||||
if (check_acl ($config['id_user'], 0, "IR") and ($config['metaconsole'] == 0)) {
|
if (check_acl ($config['id_user'], 0, "IR") and ($config['metaconsole'] == 0)) {
|
||||||
if ($config['activate_netflow']) {
|
if ($config['activate_netflow']) {
|
||||||
$menu["netf"]["text"] = __('Netflow');
|
$menu_operation["netf"]["text"] = __('Netflow');
|
||||||
$menu["netf"]["sec2"] = "operation/netflow/nf_reporting";
|
$menu_operation["netf"]["sec2"] = "operation/netflow/nf_reporting";
|
||||||
$menu["netf"]["id"] = "oper-netflow";
|
$menu_operation["netf"]["id"] = "oper-netflow";
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
$sub["operation/netflow/nf_live_view"]["text"] = __('Live view');
|
$sub["operation/netflow/nf_live_view"]["text"] = __('Live view');
|
||||||
$menu["netf"]["sub"] = $sub;
|
$menu_operation["netf"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Rest of options, all with AR privilege (or should events be with incidents?)
|
// Rest of options, all with AR privilege (or should events be with incidents?)
|
||||||
@ -354,17 +354,17 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
|
|
||||||
if ($config['metaconsole'] == 0) {
|
if ($config['metaconsole'] == 0) {
|
||||||
//SNMP Console
|
//SNMP Console
|
||||||
$menu["snmpconsole"]["text"] = __('SNMP console');
|
$menu_operation["snmpconsole"]["text"] = __('SNMP console');
|
||||||
$menu["snmpconsole"]["refr"] = 0;
|
$menu_operation["snmpconsole"]["refr"] = 0;
|
||||||
$menu["snmpconsole"]["sec2"] = "operation/snmpconsole/snmp_view";
|
$menu_operation["snmpconsole"]["sec2"] = "operation/snmpconsole/snmp_view";
|
||||||
$menu["snmpconsole"]["id"] = "oper-snmpc";
|
$menu_operation["snmpconsole"]["id"] = "oper-snmpc";
|
||||||
}
|
}
|
||||||
|
|
||||||
// Extensions menu additions
|
// Extensions menu additions
|
||||||
if (is_array ($config['extensions'])) {
|
if (is_array ($config['extensions'])) {
|
||||||
$menu["extensions"]["text"] = __('Extensions');
|
$menu_operation["extensions"]["text"] = __('Extensions');
|
||||||
$menu["extensions"]["sec2"] = "operation/extensions";
|
$menu_operation["extensions"]["sec2"] = "operation/extensions";
|
||||||
$menu["extensions"]["id"] = "oper-extensions";
|
$menu_operation["extensions"]["id"] = "oper-extensions";
|
||||||
|
|
||||||
$sub = array ();
|
$sub = array ();
|
||||||
|
|
||||||
@ -384,25 +384,25 @@ if (check_acl ($config['id_user'], 0, "AR")) {
|
|||||||
else {
|
else {
|
||||||
if (array_key_exists('fatherId',$extension_menu)) {
|
if (array_key_exists('fatherId',$extension_menu)) {
|
||||||
// Check that extension father ID exists previously on the menu
|
// Check that extension father ID exists previously on the menu
|
||||||
if ((strlen($extension_menu['fatherId']) > 0) and (($config['metaconsole'] == 0) or (array_key_exists($extension_menu['fatherId'], $menu)))) {
|
if ((strlen($extension_menu['fatherId']) > 0) and (($config['metaconsole'] == 0) or (array_key_exists($extension_menu['fatherId'], $menu_operation)))) {
|
||||||
$menu[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["text"] = __($extension_menu['name']);
|
$menu_operation[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["text"] = __($extension_menu['name']);
|
||||||
$menu[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["refr"] = 0;
|
$menu_operation[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["refr"] = 0;
|
||||||
$menu[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["icon"] = $extension_menu['icon'];
|
$menu_operation[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["icon"] = $extension_menu['icon'];
|
||||||
$menu[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["sec"] = 'extensions';
|
$menu_operation[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["sec"] = 'extensions';
|
||||||
$menu[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["extension"] = true;
|
$menu_operation[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["extension"] = true;
|
||||||
$menu[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["enterprise"] = $extension['enterprise'];
|
$menu_operation[$extension_menu['fatherId']]['sub'][$extension_menu['sec2']]["enterprise"] = $extension['enterprise'];
|
||||||
$menu[$extension_menu['fatherId']]['hasExtensions'] = true;
|
$menu_operation[$extension_menu['fatherId']]['hasExtensions'] = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$menu["extensions"]["sub"] = $sub;
|
$menu_operation["extensions"]["sub"] = $sub;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save operation menu array to use in operation/extensions.php view
|
// Save operation menu array to use in operation/extensions.php view
|
||||||
$operation_menu_array = $menu;
|
$operation_menu_array = $menu_operation;
|
||||||
|
|
||||||
menu_print_menu ($menu, true);
|
menu_print_menu ($menu_operation, true);
|
||||||
?>
|
?>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user