2006-03-27 05:37:27 +02:00
< ? php
2009-06-08 20:26:14 +02:00
// Pandora FMS - http://pandorafms.com
// ==================================================
2011-03-17 Raul Mateos <raulofpandora@gmail.com>
* extensions/dbmanager.php, extensions/pandora_logs.php, general/*.php,
index.php, ajax.php, operation/search_*.php, operation/menu.php,
operation/extensions.php, godmode/menu.php, godmode/extensions.php,
admin_access_logs.php: Cleaned code and updated page disclaimers.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4108 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2011-03-17 23:01:01 +01:00
// Copyright (c) 2005-2011 Artica Soluciones Tecnologicas
// Please see http://pandorafms.org for full contribution list
2006-12-24 23:40:09 +01:00
// This program is free software; you can redistribute it and/or
2011-03-23 Raul Mateos <raulofpandora@gmail.com>
* extensions/ssh_console.php, extensions/vnc_view.php,
extensions/update_manager.php, extensions/users_connected.php,
extensions/extension_uploader.php, extensions/insert_data.php,
extensions/module_groups.php, extensions/plugin_registration.php,
extensions/agent_modules.php, extensions/resource_registration.php,
extensions/resource_exportation.php, extensions/dbmanager.php,
extensions/pandora_logs.php, general/*.php, ajax.php,
operation/search_*.php, operation/menu.php, operation/extensions.php,
godmode/menu.php, godmode/extensions.php, godmode/admin_access_logs.php:
CReverted unwanted license changes.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4126 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2011-03-23 17:13:28 +01:00
// modify it under the terms of the GNU General Public License
2011-03-17 Raul Mateos <raulofpandora@gmail.com>
* extensions/dbmanager.php, extensions/pandora_logs.php, general/*.php,
index.php, ajax.php, operation/search_*.php, operation/menu.php,
operation/extensions.php, godmode/menu.php, godmode/extensions.php,
admin_access_logs.php: Cleaned code and updated page disclaimers.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4108 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2011-03-17 23:01:01 +01:00
// as published by the Free Software Foundation; version 2
2006-12-24 23:40:09 +01:00
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
2011-03-17 Raul Mateos <raulofpandora@gmail.com>
* extensions/dbmanager.php, extensions/pandora_logs.php, general/*.php,
index.php, ajax.php, operation/search_*.php, operation/menu.php,
operation/extensions.php, godmode/menu.php, godmode/extensions.php,
admin_access_logs.php: Cleaned code and updated page disclaimers.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4108 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2011-03-17 23:01:01 +01:00
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2006-12-24 23:40:09 +01:00
// GNU General Public License for more details.
2019-02-08 14:23:05 +01:00
require_once 'include/functions_messages.php' ;
require_once 'include/functions_servers.php' ;
require_once 'include/functions_notifications.php' ;
* include/functions_graph.php
include/functions_html.php
include/functions_messages.php
include/db/postgresql.php
include/db/mysql.php
include/db/oracle.php
include/functions_reporting.php
include/functions_filemanager.php
include/functions_gis.php
include/auth/ldap.php
include/auth/mysql.php
include/functions_networkmap.php
include/functions_network_components.php
include/ajax/skins.ajax.php
include/ajax/reporting.ajax.php
include/ajax/visual_console_builder.ajax.php
include/ajax/alert_list.ajax.php
include/ajax/module.php
include/functions_config.php
include/functions_api.php
include/help/en/help_timesource.php
include/help/es/help_timesource.php
include/help/ja/help_timesource.php
include/config_process.php
include/functions_ui.php
include/functions_custom_graphs.php
include/fgraph.php
include/functions_incidents.php
include/api.php
include/functions_reports.php
include/functions_ui_renders.php
extensions/insert_data.php
extensions/system_info.php
extensions/extension_uploader.php
extensions/pandora_logs.php
extensions/agents_modules.php
extensions/update_manager.php
extensions/ssh_console.php
extensions/dbmanager.php
extensions/vnc_view.php
extensions/resource_registration.php
extensions/resource_exportation.php
extensions/users_connected.php
extensions/module_groups.php
extensions/update_manager/load_updatemanager.php
extensions/update_manager/lib/libupdate_manager_client.php
extensions/update_manager/lib/libupdate_manager.php
extensions/update_manager/lib/libupdate_manager_components.php
extensions/update_manager/lib/libupdate_manager_updates.php
extensions/update_manager/settings.php
extensions/update_manager/main.php
extensions/plugin_registration.php
operation/incidents/incident.php
operation/incidents/incident_detail.php
operation/incidents/incident_statistics.php
operation/search_modules.php
operation/visual_console/render_view.php
operation/visual_console/index.php
operation/extensions.php
operation/agentes/status_monitor.php
operation/agentes/export_csv.php
operation/agentes/estado_ultimopaquete.php
operation/agentes/datos_agente.php
operation/agentes/alerts_status.php
operation/agentes/estado_generalagente.php
operation/agentes/custom_fields.php
operation/agentes/estado_agente.php
operation/agentes/networkmap.topology.php
operation/agentes/networkmap.groups.php
operation/agentes/sla_view.php
operation/agentes/exportdata.php
operation/agentes/gis_view.php
operation/agentes/estado_monitores.php
operation/agentes/ver_agente.php
operation/agentes/graphs.php
operation/agentes/agent_fields.php
operation/agentes/tactical.php
operation/agentes/group_view.php
operation/agentes/networkmap.php
operation/agentes/stat_win.php
operation/servers/view_server.php
operation/servers/view_server_detail.php
operation/menu.php
operation/search_agents.php
operation/search_graphs.php
operation/snmpconsole/snmp_view.php
operation/users/user_edit.php
operation/gis_maps/render_view.php
operation/gis_maps/ajax.php
operation/integria_incidents/incident.php
operation/integria_incidents/incident_detail.php
operation/integria_incidents/incident_statistics.php
operation/events/event_statistics.php
operation/events/events_rss.php
operation/events/export_csv.php
operation/events/sound_events.php
operation/events/events_validate.php
operation/events/events_list.php
operation/events/events_marquee.php
operation/events/events.php
operation/search_alerts.php
operation/messages/message.php
operation/reporting/reporting_xml.php
operation/reporting/reporting_viewer.php
operation/reporting/graph_viewer.php
operation/search_reports.php
operation/search_maps.php
operation/search_users.php
extras/pandora_diag.php
mobile/operation/agents/monitor_status.php
mobile/operation/agents/view_agents.php
mobile/operation/agents/view_alerts.php
mobile/operation/agents/group_view.php
mobile/operation/events/events.php
mobile/index.php
general/error_authconfig.php
general/links_menu.php
general/logon_ok.php
general/error_dbconfig.php
general/ui/agents_list.php
general/header.php
godmode/groups/modu_group_list.php
godmode/groups/configure_group.php
godmode/groups/configure_modu_group.php
godmode/groups/group_list.php
godmode/admin_access_logs.php
godmode/db/db_main.php
godmode/db/db_audit.php
godmode/db/db_sanity.php
godmode/db/db_refine.php
godmode/db/db_info.php
godmode/db/db_event.php
godmode/db/db_purge.php
godmode/extensions.php
godmode/agentes/agent_template.php
godmode/agentes/module_manager_editor_common.php
godmode/agentes/fields_manager.php
godmode/agentes/agent_conf_gis.php
godmode/agentes/module_manager_editor_prediction.php
godmode/agentes/module_manager.php
godmode/agentes/modificar_agente.php
godmode/agentes/configurar_agente.php
godmode/agentes/configure_field.php
godmode/agentes/module_manager_editor.php
godmode/agentes/planned_downtime.php
godmode/agentes/manage_config_remote.php
godmode/agentes/agent_manager.php
godmode/servers/recon_script.php
godmode/servers/plugin.php
godmode/servers/manage_recontask.php
godmode/servers/modificar_server.php
godmode/servers/manage_recontask_form.php
godmode/alerts/alert_list.list.php
godmode/alerts/configure_alert_compound.php
godmode/alerts/alert_compounds.php
godmode/alerts/alert_list.php
godmode/alerts/configure_alert_template.php
godmode/alerts/alert_templates.php
godmode/alerts/configure_alert_action.php
godmode/alerts/configure_alert_command.php
godmode/alerts/alert_actions.php
godmode/alerts/alert_list.builder.php
godmode/alerts/alert_commands.php
godmode/setup/file_manager.php
godmode/setup/os.list.php
godmode/setup/news.php
godmode/setup/gis_step_2.php
godmode/setup/links.php
godmode/setup/setup.php
godmode/setup/os.php
godmode/setup/performance.php
godmode/setup/setup_auth.php
godmode/setup/gis.php
godmode/setup/os.builder.php
godmode/setup/setup_visuals.php
godmode/snmpconsole/snmp_alert.php
godmode/snmpconsole/snmp_filters.php
godmode/users/user_list.php
godmode/users/configure_profile.php
godmode/gis_maps/configure_gis_map.php
godmode/gis_maps/index.php
godmode/massive/massive_add_alerts.php
godmode/massive/massive_copy_modules.php
godmode/massive/massive_delete_agents.php
godmode/massive/massive_enable_disable_alerts.php
godmode/massive/massive_operations.php
godmode/massive/massive_delete_profiles.php
godmode/massive/massive_edit_agents.php
godmode/massive/massive_delete_action_alerts.php
godmode/massive/massive_delete_modules.php
godmode/massive/massive_add_profiles.php
godmode/massive/massive_delete_alerts.php
godmode/massive/massive_edit_modules.php
godmode/massive/massive_standby_alerts.php
godmode/massive/massive_add_action_alerts.php
godmode/modules/manage_network_components_form.php
godmode/modules/manage_nc_groups_form.php
godmode/modules/manage_network_templates.php
godmode/modules/module_list.php
godmode/modules/manage_network_components_form_common.php
godmode/modules/manage_network_components_form_network.php
godmode/modules/manage_network_templates_form.php
godmode/modules/manage_network_components_form_wmi.php
godmode/modules/manage_network_components.php
godmode/modules/manage_nc_groups.php
godmode/reporting/visual_console_builder.wizard.php
godmode/reporting/graph_builder.main.php
godmode/reporting/reporting_builder.list_items.php
godmode/reporting/visual_console_builder.php
godmode/reporting/reporting_builder.preview.php
godmode/reporting/reporting_builder.main.php
godmode/reporting/visual_console_builder.data.php
godmode/reporting/visual_console_builder.elements.php
godmode/reporting/graph_builder.php
godmode/reporting/visual_console_builder.preview.php
godmode/reporting/graph_builder.graph_editor.php
godmode/reporting/reporting_builder.php
godmode/reporting/visual_console_builder.editor.php
godmode/reporting/reporting_builder.item_editor.php
godmode/reporting/map_builder.php
godmode/reporting/graphs.php
godmode/reporting/graph_builder.preview.php
include/functions_db.php: Added some includes and functions of this code have "db_" prefix.
* include/functions.php: Moved function check_login(), check_acl(),
dame_nombre_pluginid(), get_os_name() from functions_db.php to functions.php.
* include/functions_groups.php: Moved functions get_childrens(), safe_acl_group()
and get_parents(), give_disabled_group(), isAllGroups(), get_group_icon(), get_all_groups(),
get_id_groups_recursive(), get_user_groups_tree_recursive(), get_group_status(),
get_group_name(), get_group_users() from functions_db.php to this code.
* include/functions_profile.php: New library with profile functions. Moved functions
get_profile_name(), get_profiles(), create_user_profile(), delete_user_profile(),
delete_profile() from functions_db.php to this code. Added new parameter in function
get_profile() to retrieve profiles with filter conditions applied.
* include/functions_users.php: New library with users functions. Moved functions
get_users_info(), get_all_model_groups(), get_user_groups(), get_user_groups_tree(),
get_user_first_group(), user_access_to_agent() from funtions_db.php to this code.
* godmode/users/configure_user.php: Changed get_profile_filter() function to get_profile().
* include/functions_agents.php: Moved functions get_group_agents(), get_agent_modules(),
get_agent_module_id(), get_agent_id(), get_agent_name(), get_agent_modules_data_count(),
check_alert_fired(), get_agent_interval(), get_agent_os(), give_agentmodule_flag(),
agent_add_address(), agent_delete_address(), get_agent_address(), get_agent_with_ip(),
get_agent_addresses(), get_agent_status(), delete_agent(), get_agentmodule_group(),
get_agent_group() from functions_db.php to this code.
* include/functions_modules.php: Moved functions get_agentmodule(), get_agentmodule_id(),
get_agentmodule_is_init(), get_agent_modules_count(), get_module_type_name(),
get_module_type_icon(), get_agentmodule_agent(), get_agentmodule_agent_name(),
get_agentmodule_name(), get_agentmodule_type(), get_monitor_downs_in_period(),
get_monitor_last_down_timestamp_in_period(), get_monitors_in_group(),
get_monitors_in_agent(), get_monitors_down(), get_moduletype_name(),
get_moduletype_description(), get_moduletypes(), get_module_interval(), show_icon_type(),
give_modulecategory_name(),
give_agent_id_from_module_id(), get_module_status(), get_agent_module_last_value(),
get_previous_data(), get_agentmodule_modulegroup(), get_modulegroups(),
get_modulegroup_name() from functions_db.php to this code.
* include/functions_alerts.php: Moved functions get_alert_type(), get_agent_alert_fired(),
get_module_alert_fired(), get_alert_fires_in_period(), get_group_alerts(), get_alerts_fired(),
get_alert_last_fire_timestamp_in_period(), get_agentmodule_status(),
get_agentmodule_last_status() from functions_db.php to this code.
* include/functions_exportserver.php: Moved function dame_nombre_servidorexportacion()
from functions_db.php to this code.
* include/functions_events.php: Moved functions get_group_events(), get_agent_events(),
get_module_events() from functions_db.php to this code.
* include/functions_servers.php: Moved functions get_server_name(), show_server_type(),
check_server_status(), server_status() from functions_db.php to this code.
* include/functions_network_profiles.php: Moved function get_networkprofile_name()
from functions_db.php to this code.
* include/functions_visual_map.php: Moved functions get_layoutdata_x(), get_layoutdata_y()
from fucntions_db.php to this code.
* include/functions_io.php: Moved function __() from functions_db.php to this code.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4258 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2011-04-19 20:42:49 +02:00
2011-06-16 21:26:45 +02:00
// Check permissions
2011-06-27 17:27:19 +02:00
// Global errors/warnings checking.
config_check ();
2015-02-03 15:43:44 +01:00
2009-07-22 17:26:31 +02:00
?>
2013-04-10 09:57:54 +02:00
< table width = " 100% " cellpadding = " 0 " cellspacing = " 0 " style = " margin:0px; padding:0px; margin-top: 0px; height: 100% " border = " 0 " >
2019-02-08 14:23:05 +01:00
< tr >
< td style = " width:90%; " >
< a href = " index.php?sec=main " >
< ? php
$custom_logo = 'images/custom_logo/' . $config [ 'custom_logo' ];
if ( ! defined ( 'PANDORA_ENTERPRISE' )) {
$logo_title = get_product_name () . ' Opensource' ;
$custom_logo = 'images/custom_logo/pandora_logo_head_3.png' ;
} else {
if ( file_exists ( ENTERPRISE_DIR . '/' . $custom_logo )) {
$custom_logo = ENTERPRISE_DIR . '/' . $custom_logo ;
}
$logo_title = get_product_name () . ' Enterprise' ;
}
echo html_print_image (
$custom_logo ,
true ,
[
'alt' => $logo_title ,
'border' => '0' ,
]
);
?>
</ a >
</ td >
< td style = " min-width:200px; " >
< ? php
$table = new stdClass ();
$table -> id = 'header_table' ;
$table -> class = 'none' ;
$table -> cellpadding = 0 ;
$table -> cellspacing = 0 ;
$table -> head = [];
$table -> data = [];
$table -> style [ 0 ] = $table -> style [ 'clippy' ] = $table -> style [ 1 ] = $table -> style [ 3 ] = $table -> style [ 4 ] = $table -> style [ 5 ] = $table -> style [ 6 ] = $table -> style [ 8 ] = $table -> style [ 9 ] = $table -> style [ 'qr' ] = $table -> style [ 'notifications' ] = 'width: 22px; text-align:center; height: 22px; padding-right: 9px;padding-left: 9px;' ;
$table -> style [ 7 ] = 'width: 20px; padding-right: 9px;' ;
$table -> style [ 'searchbar' ] = 'width: 180px; min-width: 180px;' ;
$table -> style [ 11 ] = 'padding-left: 10px; padding-right: 5px;width: 16px;' ;
$table -> width = '100%' ;
$table -> styleTable = 'margin: auto; margin-top: 0px;' ;
$table -> rowclass [ 0 ] = '' ;
$acl_head_search = true ;
if ( $config [ 'acl_enterprise' ] == 1 && ! users_is_admin ()) {
$acl_head_search = db_get_sql (
" SELECT sec FROM tusuario
2018-09-24 10:25:10 +02:00
INNER JOIN tusuario_perfil ON tusuario . id_user = tusuario_perfil . id_usuario
INNER JOIN tprofile_view ON tprofile_view . id_profile = tusuario_perfil . id_perfil
2019-02-08 14:23:05 +01:00
WHERE tusuario . id_user = '".$config[' id_user ']."' AND ( sec = '*' OR sec = 'head_search' ) "
);
}
if ( $acl_head_search ) {
$table -> data [ 0 ][ 11 ] = ui_print_help_tip ( __ ( 'Blank characters are used as AND conditions' ), true );
// Search bar
$search_bar = '<form method="get" style="display: inline;" name="quicksearch" action="">' ;
if ( ! isset ( $config [ 'search_keywords' ])) {
$search_bar .= '<script type="text/javascript"> var fieldKeyWordEmpty = true; </script>' ;
} else {
if ( strlen ( $config [ 'search_keywords' ]) == 0 ) {
$search_bar .= '<script type="text/javascript"> var fieldKeyWordEmpty = true; </script>' ;
} else {
$search_bar .= '<script type="text/javascript"> var fieldKeyWordEmpty = false; </script>' ;
}
}
$search_bar .= '<input type="text" id="keywords" name="keywords"' ;
if ( ! isset ( $config [ 'search_keywords' ])) {
$search_bar .= " value=' " . __ ( 'Enter keywords to search' ) . " ' " ;
} else if ( strlen ( $config [ 'search_keywords' ]) == 0 ) {
$search_bar .= " value=' " . __ ( 'Enter keywords to search' ) . " ' " ;
} else {
$search_bar .= " value=' " . $config [ 'search_keywords' ] . " ' " ;
}
$search_bar .= ' onfocus = " javascript: if (fieldKeyWordEmpty) $ ( \ '#keywords \ ').val( \ ' \ '); "
2018-09-24 10:25:10 +02:00
onkeyup = " javascript: fieldKeyWordEmpty = false; "
style = " margin-top:5px; " class = " search_input " /> ' ;
2019-02-08 14:23:05 +01:00
// $search_bar .= 'onClick="javascript: document.quicksearch.submit()"';
$search_bar .= " <input type='hidden' name='head_search_keywords' value='abc' /> " ;
$search_bar .= '</form>' ;
$table -> data [ 0 ][ 'searchbar' ] = $search_bar ;
}
// Servers check
$servers = [];
$servers [ 'all' ] = ( int ) db_get_value ( 'COUNT(id_server)' , 'tserver' );
$servers [ 'up' ] = ( int ) servers_check_status ();
$servers [ 'down' ] = ( $servers [ 'all' ] - $servers [ 'up' ]);
if ( $servers [ 'up' ] == 0 ) {
// All Servers down or no servers at all
$servers_check_img = html_print_image ( 'images/header_down.png' , true , [ 'alt' => 'cross' , 'class' => 'bot' , 'title' => __ ( 'All systems' ) . ': ' . __ ( 'Down' )]);
} else if ( $servers [ 'down' ] != 0 ) {
// Some servers down
$servers_check_img = html_print_image ( 'images/header_warning.png' , true , [ 'alt' => 'error' , 'class' => 'bot' , 'title' => $servers [ 'down' ] . ' ' . __ ( 'servers down' )]);
} else {
// All servers up
$servers_check_img = html_print_image ( 'images/header_ready.png' , true , [ 'alt' => 'ok' , 'class' => 'bot' , 'title' => __ ( 'All systems' ) . ': ' . __ ( 'Ready' )]);
}
unset ( $servers );
// Since this is the header, we don't like to trickle down variables.
$servers_link_open = '<a class="white" href="index.php?sec=gservers&sec2=godmode/servers/modificar_server&refr=60">' ;
$servers_link_close = '</a>' ;
if ( $config [ 'show_qr_code_header' ] == 0 ) {
$show_qr_code_header = 'display: none;' ;
} else {
$show_qr_code_header = 'display: inline;' ;
}
$table -> data [ 0 ][ 'qr' ] = '<div style="' . $show_qr_code_header . '" id="qr_code_container" style="">' . '<a href="javascript: show_dialog_qrcode();">' . html_print_image (
'images/qrcode_icon.png' ,
true ,
[
'alt' => __ ( 'QR Code of the page' ),
'title' => __ ( 'QR Code of the page' ),
]
) . '</a>' . '</div>' ;
echo " <div style='display: none;' id='qrcode_container' title=' " . __ ( 'QR code of the page' ) . " '> " ;
echo " <div id='qrcode_container_image'></div> " ;
echo '</div>' ;
?>
< script type = 'text/javascript' >
$ ( document ) . ready ( function () {
$ ( " #qrcode_container " ) . dialog ({
autoOpen : false ,
modal : true
});
});
</ script >
< ? php
if ( $config [ 'tutorial_mode' ] !== 'expert' && ! $config [ 'disable_help' ]) {
$table -> data [ 0 ][ 'clippy' ] = '<a href="javascript: show_clippy();">' . html_print_image (
'images/clippy_icon.png' ,
true ,
[
'id' => 'clippy' ,
'class' => 'clippy' ,
'alt' => __ ( '%s assistant' , get_product_name ()),
'title' => __ (
'%s assistant' ,
get_product_name ()
),
]
) . '</a>' ;
}
$table -> data [ 0 ][ 0 ] = $servers_link_open . $servers_check_img . $servers_link_close ;
// ======= Autorefresh code =============================
$autorefresh_txt = '' ;
$autorefresh_additional = '' ;
$ignored_params = [
'agent_config' => false ,
'code' => false ,
];
if ( ! isset ( $_GET [ 'sec2' ])) {
$_GET [ 'sec2' ] = '' ;
}
if ( ! isset ( $_GET [ 'refr' ])) {
$_GET [ 'refr' ] = null ;
}
$select = db_process_sql ( " SELECT autorefresh_white_list,time_autorefresh FROM tusuario WHERE id_user = ' " . $config [ 'id_user' ] . " ' " );
$autorefresh_list = json_decode ( $select [ 0 ][ 'autorefresh_white_list' ]);
if ( $autorefresh_list !== null && array_search ( $_GET [ 'sec2' ], $autorefresh_list ) !== false ) {
$do_refresh = true ;
if ( $_GET [ 'sec2' ] == 'operation/agentes/pandora_networkmap' ) {
if (( ! isset ( $_GET [ 'tab' ])) || ( $_GET [ 'tab' ] != 'view' )) {
$do_refresh = false ;
}
}
if ( $do_refresh ) {
$autorefresh_img = html_print_image ( 'images/header_refresh.png' , true , [ 'class' => 'bot' , 'alt' => 'lightning' , 'title' => __ ( 'Configure autorefresh' )]);
if ( $_GET [ 'refr' ]) {
$autorefresh_txt .= ' (<span id="refrcounter">' . date ( 'i:s' , $config [ 'refr' ]) . '</span>)' ;
}
$ignored_params [ 'refr' ] = '' ;
$values = get_refresh_time_array ();
$autorefresh_additional = '<span id="combo_refr" style="display: none;">' ;
$autorefresh_additional .= html_print_select ( $values , 'ref' , '' , '' , __ ( 'Select' ), '0' , true , false , false );
$autorefresh_additional .= '</span>' ;
unset ( $values );
$autorefresh_link_open_img = '<a class="white autorefresh" href="' . ui_get_url_refresh ( $ignored_params ) . '">' ;
if ( $_GET [ 'refr' ]) {
$autorefresh_link_open_txt = '<a class="white autorefresh autorefresh_txt" href="' . ui_get_url_refresh ( $ignored_params ) . '">' ;
} else {
$autorefresh_link_open_txt = '<a>' ;
}
$autorefresh_link_close = '</a>' ;
} else {
$autorefresh_img = html_print_image ( 'images/header_refresh_disabled.png' , true , [ 'class' => 'bot autorefresh_disabled' , 'alt' => 'lightning' , 'title' => __ ( 'Disabled autorefresh' )]);
$ignored_params [ 'refr' ] = false ;
$autorefresh_link_open_img = '' ;
$autorefresh_link_open_txt = '' ;
$autorefresh_link_close = '' ;
}
} else {
$autorefresh_img = html_print_image ( 'images/header_refresh_disabled.png' , true , [ 'class' => 'bot autorefresh_disabled' , 'alt' => 'lightning' , 'title' => __ ( 'Disabled autorefresh' )]);
$ignored_params [ 'refr' ] = false ;
$autorefresh_link_open_img = '' ;
$autorefresh_link_open_txt = '' ;
$autorefresh_link_close = '' ;
}
$table -> data [ 0 ][ 1 ] = $autorefresh_link_open_img . $autorefresh_img . $autorefresh_link_close ;
$table -> data [ 0 ][ 2 ] = $autorefresh_link_open_txt . $autorefresh_txt . $autorefresh_link_close . $autorefresh_additional ;
// ======================================================
$check_minor_release_available = false ;
$pandora_management = check_acl ( $config [ 'id_user' ], 0 , 'PM' );
$check_minor_release_available = db_check_minor_relase_available ();
if ( $check_minor_release_available ) {
if ( users_is_admin ( $config [ 'id_user' ])) {
if ( $config [ 'language' ] == 'es' ) {
set_pandora_error_for_header ( 'Hay una o mas revisiones menores en espera para ser actualizadas. <a style="font-size:8pt;font-style:italic;" target="blank" href="http://wiki.pandorafms.com/index.php?title=Pandora:Documentation_es:Actualizacion#Versi.C3.B3n_7.0NG_.28_Rolling_Release_.29">' . __ ( 'Sobre actualización de revisión menor' ) . '</a>' , 'Revisión/es menor/es disponible/s' );
} else {
set_pandora_error_for_header ( 'There are one or more minor releases waiting for update. <a style="font-size:8pt;font-style:italic;" target="blank" href="http://wiki.pandorafms.com/index.php?title=Pandora:Documentation_en:Anexo_Upgrade#Version_7.0NG_.28_Rolling_Release_.29">' . __ ( 'About minor release update' ) . '</a>' , 'minor release/s available' );
}
}
}
echo '<div id="alert_messages" style="display: none"></div>' ;
if ( $config [ 'alert_cnt' ] > 0 ) {
$maintenance_link = 'javascript:' ;
$maintenance_title = __ ( 'System alerts detected - Please fix as soon as possible' );
$maintenance_class = $maintenance_id = 'show_systemalert_dialog white' ;
$maintenance_link_open_txt = '<a href="' . $maintenance_link . '" title="' . $maintenance_title . '" class="' . $maintenance_class . '" id="show_systemalert_dialog">' ;
$maintenance_link_open_img = '<a href="' . $maintenance_link . '" title="' . $maintenance_title . '" class="' . $maintenance_class . '">' ;
$maintenance_link_close = '</a>' ;
if ( ! $pandora_management ) {
$maintenance_img = '' ;
} else {
$maintenance_img = $maintenance_link_open_img . html_print_image (
'images/header_yellow.png' ,
true ,
[
'title' => __ (
'You have %d warning(s)' ,
$config [ 'alert_cnt' ]
),
'id' => 'yougotalert' ,
'class' => 'bot' ,
]
) . $maintenance_link_close ;
}
} else {
if ( ! $pandora_management ) {
$maintenance_img = '' ;
} else {
$maintenance_img = html_print_image ( 'images/header_ready.png' , true , [ 'title' => __ ( 'There are not warnings' ), 'id' => 'yougotalert' , 'class' => 'bot' ]);
}
}
$table -> data [ 0 ][ 3 ] = $maintenance_img ;
// Main help icon
if ( ! $config [ 'disable_help' ]) {
$table -> data [ 0 ][ 4 ] = '<a href="#" class="modalpopup" id="helpmodal">' . html_print_image (
'images/header_help.png' ,
true ,
[
'title' => __ ( 'Main help' ),
'id' => 'helpmodal' ,
'class' => 'modalpopup' ,
]
) . '</a>' ;
}
2019-02-11 13:05:31 +01:00
$notifications_numbers = notifications_get_counters ();
$table -> data [ 0 ][ 'notifications' ] = notifications_print_ball (
$notifications_numbers [ 'notifications' ],
$notifications_numbers [ 'last_id' ]
);
2019-02-08 14:23:05 +01:00
// Logout
$table -> data [ 0 ][ 5 ] = '<a class="white" href="' . ui_get_full_url ( 'index.php?bye=bye' ) . '">' ;
$table -> data [ 0 ][ 5 ] .= html_print_image ( 'images/header_logout.png' , true , [ 'alt' => __ ( 'Logout' ), 'class' => 'bot' , 'title' => __ ( 'Logout' )]);
$table -> data [ 0 ][ 5 ] .= '</a>' ;
// User
if ( is_user_admin ( $config [ 'id_user' ]) == 1 ) {
$table -> data [ 0 ][ 6 ] = html_print_image ( 'images/header_user_admin.png' , true , [ 'title' => __ ( 'Edit my user' ), 'class' => 'bot' , 'alt' => 'user' ]);
} else {
$table -> data [ 0 ][ 6 ] = html_print_image ( 'images/header_user.png' , true , [ 'title' => __ ( 'Edit my user' ), 'class' => 'bot' , 'alt' => 'user' ]);
}
$table -> data [ 0 ][ 6 ] = '<a href="index.php?sec=workspace&sec2=operation/users/user_edit">' . $table -> data [ 0 ][ 6 ] . '</a>' ;
$table -> data [ 0 ][ 7 ] = '<a href="index.php?sec=workspace&sec2=operation/users/user_edit" class="white_bold"> (' . $config [ 'id_user' ] . ')</a>' ;
// Chat messages
$table -> data [ 0 ][ 8 ] = " <span id='icon_new_messages_chat' style='display: none;'> " ;
$table -> data [ 0 ][ 8 ] .= " <a href='index.php?sec=workspace&sec2=operation/users/webchat'> " ;
$table -> data [ 0 ][ 8 ] .= html_print_image ( 'images/header_chat.png' , true , [ 'title' => __ ( 'New chat message' )]);
$table -> data [ 0 ][ 8 ] .= '</a>' ;
$table -> data [ 0 ][ 8 ] .= '</span>' ;
// Messages
$msg_cnt = messages_get_count ( $config [ 'id_user' ]);
if ( $msg_cnt > 0 ) {
echo '<div id="dialog_messages" style="display: none"></div>' ;
$table -> data [ 0 ][ 9 ] = '<a href="ajax.php?page=operation/messages/message_list" title="' . __ ( 'Message overview' ) . '" id="show_messages_dialog">' ;
$table -> data [ 0 ][ 9 ] .= html_print_image ( 'images/header_email.png' , true , [ 'title' => __ ( 'You have %d unread message(s)' , $msg_cnt ), 'id' => 'yougotmail' , 'class' => 'bot' , 'style' => 'width:24px;' ]);
$table -> data [ 0 ][ 9 ] .= '</a>' ;
}
html_print_table ( $table );
unset ( $table );
?>
</ td >
<!--
< td style = " text-align:center " >
< ? php
echo " <a href='index.php?sec=main'> " ;
if ( isset ( $config [ 'custom_logo' ])) {
echo html_print_image ( 'images/custom_logo/' . $config [ 'custom_logo' ], true , [ 'height' => '60' , 'width' => '139' , 'alt' => 'Logo' ]);
}
echo '</a>' ;
?>
</ td >
-->
</ tr >
2009-07-22 17:26:31 +02:00
</ table >
2013-02-11 13:40:43 +01:00
2012-03-05 Miguel de Dios <miguel.dedios@artica.es>
* extensions/update_manager/main.php, general/shortcut_bar.php,
godmode/reporting/reporting_builder.item_editor.php,
godmode/reporting/reporting_builder.php,
godmode/reporting/reporting_builder.preview.php, include/functions_api.php,
include/functions_html.php, include/htmlawed.php, include/pchart_graph.php,
operation/events/events_list.php, operation/netflow/nf_live_view.php:
cleaned source code style.
* godmode/menu.php, godmode/agentes/manage_config_remote.php: removed the
enterprise feature that have been wrong for years.
* general/header.php: changed to load the jquery-ui and jquery javascript
library to last version.
* extensions/insert_data.php, extensions/snmp_explorer.php,
godmode/agentes/agent_manager.php, include/ajax/agent.php,
include/javascript/pandora.js, operation/agentes/exportdata.php,
operation/events/events.php: changed the unknow plugin autocomplete for
the autocomple from jquery-ui.
* include/functions_ui.php: cleaned source code style and into the function
"ui_process_page_head" added the blacklist hardwrote for to use old jquery.
* include/styles/jquery-ui-1.8.17.custom.css,
include/javascript/jquery-1.7.1.min.js,
include/javascript/jquery.jquery-ui-1.8.17.custom.min.js: added the last
version of Jquery and Jquery-ui.
Merge from the branch "pandora_4.0"
* godmode/reporting/visual_console_builder.constans.php,
godmode/reporting/visual_console_builder.editor.js,
godmode/reporting/visual_console_builder.editor.php,
include/functions_visual_map.php,
include/ajax/visual_console_builder.ajax.php,
include/javascript/pandora_visual_console.js: changed the unknow
plugin autocomplete for the autocomple from jquery-ui and added function to
paint a Bubble Chart (http://en.wikipedia.org/wiki/Bubble_chart) with the
name "progress_bubble".
* images/percentile_item.disabled.png, images/percentile_item.png: added
images for button of percentile item (new item in visual map).
* include/styles/pandora.css: added the style for the new button percentile
item.
* include/functions_graph.php, include/graphs/fgraph.php,
include/graphs/functions_gd.php: cleaned source code style, and added the
params to set text and color in the function "progress_bar" and added
function to paint a Bubble Chart (http://en.wikipedia.org/wiki/Bubble_chart)
with the name "progress_bubble".
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@5693 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2012-03-05 18:56:56 +01:00
< script type = " text/javascript " >
2019-02-08 14:23:05 +01:00
/* <![CDATA[ */
< ? php
$config_fixed_header = false ;
if ( isset ( $config [ 'fixed_header' ])) {
$config_fixed_header = $config [ 'fixed_header' ];
}
?>
function addNotifications ( event ) {
2019-02-08 18:53:28 +01:00
var element = document . getElementById ( " notification-content " );
if ( ! element ) return ;
element . style . display = " block " ;
2019-02-08 14:23:05 +01:00
attatch_to_image ();
}
function attatch_to_image () {
2019-02-08 18:53:28 +01:00
var notification_elem = document . getElementById ( " notification-wrapper " );
var image_attached =
document . getElementById ( " notification-ball-header " )
. getBoundingClientRect ()
. left
;
notification_elem . style . left = image_attached - 300 + " px " ;
2019-02-08 14:23:05 +01:00
}
2019-02-08 18:53:28 +01:00
function notifications_hide () {
var element = document . getElementById ( " notification-content " );
element . style . display = " none "
2019-02-08 14:23:05 +01:00
}
2019-02-11 13:35:36 +01:00
function check_new_notifications () {
var last_id = document . getElementById ( 'notification-ball-header' )
. getAttribute ( 'last_id' );
if ( last_id === null ) {
console . error ( 'Cannot retrieve notifications ball last_id.' );
return ;
}
jQuery . post ( " ajax.php " ,
{ " page " : " godmode/setup/setup_notifications " ,
" check_new_notifications " : 1 ,
" last_id " : last_id
},
function ( data , status ) {
2019-02-11 14:44:14 +01:00
if ( ! data . has_new_notifications ) return ;
// Substitute the ball
var new_ball = atob ( data . new_ball );
var ball_wrapper = document
. getElementById ( 'notification-ball-header' )
. parentElement ;
if ( ball_wrapper === null ) {
console . error ( 'Cannot update notification ball' );
return ;
}
ball_wrapper . innerHTML = new_ball ;
// Show the toasts
//TODO
2019-02-11 13:35:36 +01:00
},
" json "
)
. fail ( function ( xhr , textStatus , errorThrown ){
console . error (
" Cannot get new notifications. Error: " ,
xhr . responseText
);
});
}
2019-02-08 14:23:05 +01:00
// Resize event
window . addEventListener ( " resize " , function () {
attatch_to_image ();
});
var fixed_header = < ? php echo json_encode (( bool ) $config_fixed_header ); ?> ;
var new_chat = < ? php echo ( int ) $_SESSION [ 'new_chat' ]; ?> ;
$ ( document ) . ready ( function () {
2019-02-11 13:35:36 +01:00
// Check new notifications on a periodic way
setInterval ( check_new_notifications , 10000 );
2019-02-08 14:23:05 +01:00
< ? php
if (( $autorefresh_list !== null ) && ( array_search ( $_GET [ 'sec2' ], $autorefresh_list ) !== false ) && ( ! isset ( $_GET [ 'refr' ]))) {
$do_refresh = true ;
if ( $_GET [ 'sec2' ] == 'operation/agentes/pandora_networkmap' ) {
if (( ! isset ( $_GET [ 'tab' ])) || ( $_GET [ 'tab' ] != 'view' )) {
$do_refresh = false ;
}
}
$new_dashboard = get_parameter ( 'new_dashboard' , 0 );
if ( $_GET [ 'sec2' ] == 'enterprise/dashboard/main_dashboard' && $new_dashboard ) {
$do_refresh = false ;
}
if ( $do_refresh ) {
?>
$ ( " a.autorefresh_txt " ) . toggle ();
$ ( " #combo_refr " ) . toggle ();
$ ( " #combo_refr " ) . css ( 'padding-right' , '9px' );
href = $ ( " a.autorefresh " ) . attr ( " href " );
< ? php
if ( $select [ 0 ][ 'time_autorefresh' ]) {
?>
var refresh = '<?php echo $select[0][' time_autorefresh ']; ?>' ;
$ ( document ) . attr ( " location " , href + refresh );
< ? php
}
?>
< ? php
}
}
?>
if ( fixed_header ) {
$ ( 'div#head' ) . addClass ( 'fixed_header' );
$ ( 'div#page' )
. css ( 'padding-top' , $ ( 'div#head' ) . innerHeight () + 'px' )
. css ( 'position' , 'relative' );
}
check_new_chats_icon ( 'icon_new_messages_chat' );
/* Temporal fix to hide graphics when ui_dialog are displayed */
$ ( " #yougotalert " ) . click ( function () {
$ ( " #agent_access " ) . css ( " display " , " none " );
});
$ ( " #ui_close_dialog_titlebar " ) . click ( function () {
$ ( " #agent_access " ) . css ( " display " , " " );
});
function blinkmail (){
$ ( " #yougotmail " ) . delay ( 100 ) . fadeTo ( 300 , 0.2 ) . delay ( 100 ) . fadeTo ( 300 , 1 , blinkmail );
}
function blinkalert (){
$ ( " #yougotalert " ) . delay ( 100 ) . fadeTo ( 300 , 0.2 ) . delay ( 100 ) . fadeTo ( 300 , 1 , blinkalert );
}
function blinkpubli (){
$ ( " .publienterprise " ) . delay ( 100 ) . fadeTo ( 300 , 0.2 ) . delay ( 100 ) . fadeTo ( 300 , 1 , blinkpubli );
}
< ? php
if ( $msg_cnt > 0 ) {
?>
blinkmail ();
< ? php
}
?>
< ? php
if ( $config [ 'alert_cnt' ] > 0 ) {
?>
blinkalert ();
< ? php
}
?>
blinkpubli ();
< ? php
if ( $_GET [ 'refr' ]) {
?>
var refr_time = < ? php echo ( int ) get_parameter ( 'refr' , 0 ); ?> ;
var t = new Date ();
t . setTime ( t . getTime () +
parseInt ( < ? php echo ( $config [ 'refr' ] * 1000 ); ?> ));
$ ( " #refrcounter " ) . countdown ({ until : t ,
layout : '%M%nn%M:%S%nn%S' ,
labels : [ '' , '' , '' , '' , '' , '' , '' ],
onExpiry : function () {
href = $ ( " a.autorefresh " ) . attr ( " href " );
href = href + refr_time ;
$ ( document ) . attr ( " location " , href );
}
});
< ? php
}
?>
$ ( " a.autorefresh " ) . click ( function () {
$ ( " a.autorefresh_txt " ) . toggle ();
$ ( " #combo_refr " ) . toggle ();
$ ( " #combo_refr " ) . css ( 'padding-right' , '9px' );
$ ( " select#ref " ) . change ( function () {
href = $ ( " a.autorefresh " ) . attr ( " href " );
$ ( document ) . attr ( " location " , href + this . value );
});
return false ;
});
});
2009-02-05 16:36:06 +01:00
/* ]]> */
2013-04-10 09:57:54 +02:00
</ script >
2019-02-08 14:23:05 +01:00
< ? php
echo notifications_print_dropdown ();