2006-03-27 05:37:27 +02:00
< ? php
2019-02-19 14:55:44 +01:00
/**
* Extension to manage a list of gateways and the node address where they should
* point to .
*
* @ category Extensions
* @ package Pandora FMS
* @ subpackage Community
* @ version 1.0 . 0
* @ license See below
*
* ______ ___ _______ _______ ________
* | __ \ .-----.--.--.--| |.-----.----.-----. | ___ | | | __ |
* | __ /| _ | | _ || _ | _ | _ | | ___ | | __ |
* | ___ | | ___ . _ | __ | __ | _____ || _____ | __ | | ___ . _ | | ___ | | __ | _ | __ | _______ |
*
* ============================================================================
* Copyright ( c ) 2005 - 2019 Artica Soluciones Tecnologicas
* Please see http :// pandorafms . org for full contribution list
* This program is free software ; you can redistribute it and / or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation for version 2.
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
* ============================================================================
*/
2009-06-08 20:18:20 +02:00
2010-03-02 20:25:51 +01:00
global $config ;
2006-07-11 16:48:04 +02:00
2019-02-18 15:14:24 +01:00
// Load the header
require $config [ 'homedir' ] . '/operation/users/user_edit_header.php' ;
2013-05-20 10:42:02 +02:00
2012-02-01 11:57:43 +01:00
// Update user info
2019-01-30 16:18:44 +01:00
if ( isset ( $_GET [ 'modified' ]) && ! $view_mode ) {
if ( html_print_csrf_error ()) {
return ;
}
$upd_info = [];
$upd_info [ 'fullname' ] = get_parameter_post ( 'fullname' , $user_info [ 'fullname' ]);
$upd_info [ 'firstname' ] = get_parameter_post ( 'firstname' , $user_info [ 'firstname' ]);
$upd_info [ 'lastname' ] = get_parameter_post ( 'lastname' , $user_info [ 'lastname' ]);
$password_new = get_parameter_post ( 'password_new' , '' );
$password_confirm = get_parameter_post ( 'password_conf' , '' );
$upd_info [ 'email' ] = get_parameter_post ( 'email' , '' );
$upd_info [ 'phone' ] = get_parameter_post ( 'phone' , '' );
$upd_info [ 'comments' ] = get_parameter_post ( 'comments' , '' );
$upd_info [ 'language' ] = get_parameter_post ( 'language' , $user_info [ 'language' ]);
$upd_info [ 'timezone' ] = get_parameter_post ( 'timezone' , '' );
$upd_info [ 'id_skin' ] = get_parameter ( 'skin' , $user_info [ 'id_skin' ]);
2019-02-19 14:55:44 +01:00
$upd_info [ 'default_event_filter' ] = get_parameter ( 'event_filter' , null );
2019-01-30 16:18:44 +01:00
$upd_info [ 'block_size' ] = get_parameter ( 'block_size' , $config [ 'block_size' ]);
$upd_info [ 'firstname' ] = get_parameter ( 'newsletter_reminder' , $user_info [ 'first_name' ]);
$default_block_size = get_parameter ( 'default_block_size' , 0 );
if ( $default_block_size ) {
$upd_info [ 'block_size' ] = 0 ;
}
$upd_info [ 'section' ] = get_parameter ( 'section' , $user_info [ 'section' ]);
$upd_info [ 'data_section' ] = get_parameter ( 'data_section' , '' );
$dashboard = get_parameter ( 'dashboard' , '' );
$visual_console = get_parameter ( 'visual_console' , '' );
2019-02-19 14:55:44 +01:00
// Save autorefresh list.
2019-01-30 16:18:44 +01:00
$autorefresh_list = get_parameter_post ( 'autorefresh_list' );
if (( $autorefresh_list [ 0 ] === '' ) || ( $autorefresh_list [ 0 ] === '0' )) {
$upd_info [ 'autorefresh_white_list' ] = '' ;
} else {
$upd_info [ 'autorefresh_white_list' ] = json_encode ( $autorefresh_list );
}
$upd_info [ 'time_autorefresh' ] = ( int ) get_parameter ( 'time_autorefresh' , 0 );
$is_admin = db_get_value ( 'is_admin' , 'tusuario' , 'id_user' , $id );
$section = io_safe_output ( $upd_info [ 'section' ]);
2019-02-19 14:55:44 +01:00
if (( $section == 'Event list' ) || ( $section == 'Group view' )
|| ( $section == 'Alert detail' ) || ( $section == 'Tactical view' )
|| ( $section == 'Default' )
) {
2019-01-30 16:18:44 +01:00
$upd_info [ 'data_section' ] = '' ;
} else if ( $section == 'Dashboard' ) {
$upd_info [ 'data_section' ] = $dashboard ;
} else if ( $section == 'Visual console' ) {
$upd_info [ 'data_section' ] = $visual_console ;
}
if ( ! empty ( $password_new )) {
if ( $config [ 'user_can_update_password' ] && $password_confirm == $password_new ) {
2019-02-19 14:55:44 +01:00
if (( ! $is_admin || $config [ 'enable_pass_policy_admin' ])
&& $config [ 'enable_pass_policy' ]
) {
2019-01-30 16:18:44 +01:00
$pass_ok = login_validate_pass ( $password_new , $id , true );
if ( $pass_ok != 1 ) {
ui_print_error_message ( $pass_ok );
} else {
$return = update_user_password ( $id , $password_new );
if ( $return ) {
$return2 = save_pass_history ( $id , $password_new );
}
}
} else {
$return = update_user_password ( $id , $password_new );
}
} else if ( $password_new !== 'NON-INIT' ) {
$error_msg = __ ( 'Passwords didn\'t match or other problem encountered while updating passwords' );
}
} else if ( empty ( $password_new ) && empty ( $password_confirm )) {
$return = true ;
} else if ( empty ( $password_new ) || empty ( $password_confirm )) {
$return = false ;
}
2019-02-19 14:55:44 +01:00
// No need to display "error" here, because when no update is needed
// (no changes in data) SQL function returns 0 (FALSE), but is not an error,
// just no change. Previous error message could be confussing to the user.
2019-01-30 16:18:44 +01:00
if ( $return ) {
if ( ! empty ( $password_new ) && ! empty ( $password_confirm )) {
$success_msg = __ ( 'Password successfully updated' );
}
2019-02-19 14:55:44 +01:00
// If info is valid then proceed with update.
if (( filter_var ( $upd_info [ 'email' ], FILTER_VALIDATE_EMAIL ) || $upd_info [ 'email' ] == '' )
&& ( preg_match ( '/^[0-9- ]+$/D' , $upd_info [ 'phone' ]) || $upd_info [ 'phone' ] == '' )
) {
2019-01-30 16:18:44 +01:00
$return_update_user = update_user ( $id , $upd_info );
if ( $return_update_user === false ) {
$error_msg = __ ( 'Error updating user info' );
} else if ( $return_update_user == true ) {
$success_msg = __ ( 'User info successfully updated' );
} else {
if ( ! empty ( $password_new ) && ! empty ( $password_confirm )) {
$success_msg = __ ( 'Password successfully updated' );
} else {
$return = false ;
$error_msg = __ ( 'No changes have been made' );
}
}
2019-02-19 14:55:44 +01:00
ui_print_result_message (
$return ,
$success_msg ,
$error_msg ,
$user_auth_error
);
2019-01-30 16:18:44 +01:00
} else if ( ! filter_var ( $upd_info [ 'email' ], FILTER_VALIDATE_EMAIL )) {
ui_print_error_message ( __ ( 'Please enter a valid email' ));
} else if ( ! preg_match ( '/^[0-9- ]+$/D' , $upd_info [ 'phone' ])) {
ui_print_error_message ( __ ( 'Please enter a valid phone number' ));
}
$user_info = $upd_info ;
} else {
if ( ! $error_msg ) {
$error_msg = __ ( 'Error updating passwords: ' );
}
$user_auth_error = $config [ 'auth_error' ];
2019-02-19 14:55:44 +01:00
ui_print_result_message (
$return ,
$success_msg ,
$error_msg ,
$user_auth_error
);
2019-01-30 16:18:44 +01:00
}
}
2019-02-19 14:55:44 +01:00
// Prints action status for current message.
2012-07-10 Miguel de Dios <miguel.dedios@artica.es>
* install.php, operation/reporting/reporting_xml.php,
operation/netflow/nf_live_view.php, operation/netflow/nf_view.php,
operation/tree.php, operation/agentes/gis_view.php,
operation/agentes/estado_monitores.php,
operation/agentes/networkmap.php,
operation/agentes/datos_agente.php,
operation/agentes/alerts_status.php, operation/menu.php,
operation/snmpconsole/snmp_view.php, operation/users/user_edit.php,
godmode/groups/configure_group.php,
godmode/groups/configure_modu_group.php,
godmode/agentes/module_manager_editor_prediction.php,
godmode/servers/manage_recontask.php,
godmode/alerts/alert_compounds.php,
godmode/alerts/configure_alert_template.php,
godmode/alerts/alert_special_days.php, godmode/setup/links.php,
godmode/setup/os.php, godmode/users/configure_profile.php,
godmode/events/events.php,
godmode/massive/massive_delete_modules.php,
godmode/massive/massive_edit_modules.php,
godmode/massive/massive_standby_alerts.php,
godmode/massive/massive_add_action_alerts.php,
godmode/massive/massive_enable_disable_alerts.php,
godmode/massive/massive_operations.php,
godmode/massive/massive_delete_profiles.php,
godmode/modules/manage_network_components.php,
godmode/modules/manage_nc_groups.php,
godmode/reporting/graph_builder.php,
godmode/reporting/reporting_builder.item_editor.php,
include/functions_menu.php, include/functions_visual_map.php,
include/functions_db.php: cleaned source code style.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@6759 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2012-07-10 12:38:02 +02:00
if ( $status != - 1 ) {
2019-01-30 16:18:44 +01:00
ui_print_result_message (
$status ,
__ ( 'User info successfully updated' ),
__ ( 'Error updating user info' )
);
2011-08-31 09:21:18 +02:00
}
2019-01-30 16:18:44 +01:00
$jump = ' ' ;
2015-06-25 10:07:53 +02:00
$table = new stdClass ();
2013-04-10 09:57:54 +02:00
$table -> id = 'user_form' ;
2015-06-12 15:50:46 +02:00
$table -> width = '100%' ;
2013-04-10 09:57:54 +02:00
$table -> cellspacing = 4 ;
$table -> cellpadding = 4 ;
2015-06-12 15:50:46 +02:00
$table -> class = 'databox filters' ;
2015-06-08 11:05:19 +02:00
if ( defined ( 'METACONSOLE' )) {
2019-01-30 16:18:44 +01:00
$table -> head [ 0 ] = __ ( 'Edit my User' );
$table -> head_colspan [ 0 ] = 5 ;
$table -> headstyle [ 0 ] = 'text-align: center' ;
2015-03-06 12:28:05 +01:00
}
2019-01-30 16:18:44 +01:00
2016-10-28 16:35:54 +02:00
$table -> style [ 0 ] = 'min-width: 320px;width: 320px;margin-right:0px;padding-right:0px;' ;
$table -> style [ 1 ] = 'min-width: 280px;width: 280px;margin-right:0px;padding-right:0px;' ;
$table -> style [ 2 ] = 'min-width: 150px;width: 150px;margin-right:0px;margin-left:0px;padding-left:0px;padding-right:0px;' ;
2011-08-31 09:21:18 +02:00
2019-01-30 16:18:44 +01:00
$data = [];
$data [ 0 ] = '<span style="width:50%;float:left;"><b>' . __ ( 'User ID' ) . '</b></span>' ;
$data [ 0 ] .= $jump . '<span style="font-weight: normal;width:20%;float:left;">' . $id . '</span>' ;
$data [ 1 ] = '<span style="width:40%;float:left;line-height:20px;"><b>' . __ ( 'Full (display) name' ) . '</b></span>' ;
2019-02-19 14:55:44 +01:00
$data [ 1 ] .= $jump . '<span style="width:20%;float:left;line-height:20px;">' ;
$data [ 1 ] .= html_print_input_text_extended (
'fullname' ,
$user_info [ 'fullname' ],
'fullname' ,
'' ,
20 ,
100 ,
$view_mode ,
'' ,
'class="input"' ,
true
) . '</span>' ;
2009-11-27 Sancho lerena <slerena@artica.es>
* operation/menu.php: User section has no ACL check, always can be seen.
* index.php: Added suppor for user-defined custom language (this code was
on my disk for 3 months, pending to be commited!).
* include/functions_db.php,
* include/functions_agents.php,
* godmode/alerts/alert_list.php,
* godmode/agentes/modificar_agente.php,
* godmode/agentes/configurar_agente.php: Added audit calls to several
management operations who don't have or have insufficient audit info.
* godmode/users/configure_user.php: Fixed several annoyings bugs. Added
custom language support, and added more audit info on management operations.
* godmode/users/user_list.php: More audit info.
* include/config_process.php: Add new debug option to render error log to
/pandora_console.log. Also set timezone if not defined (this makes warnings
on several PHP 5.x setups). Added user custom language support.
* include/functions_events.php: More audit info. Fixed problems with HTML
encoding render.
* functions_io.php: Some cleaning.
* include/functions_messages.php: Fixed problems with HTML
encoding render.
* functions_ui.php: Fixed problems with HTML encoding render in
print_string_substr() function.
* auth/mysql.php: is_user_admin() functions seems to be broken ¿?¿!. Fixed.
* styles/pandora.css: removed green colored left border in default style.
* message.php, incident*: Fixed problems with HTML encoding render.
* user.php: Better ACL check before let user to view/edit another user.
* user_edit: Removed some un-used form fields, some arrangements in layout,
and FIXED forever problems with password change (new code written).
* users/user_statistics.php: Now user can see its own audit records.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2139 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2009-11-27 21:02:12 +01:00
// Show "Picture" (in future versions, why not, allow users to upload it's own avatar here.
2019-01-30 16:18:44 +01:00
if ( is_user_admin ( $id )) {
$data [ 2 ] = html_print_image ( 'images/people_1.png' , true );
} else {
$data [ 2 ] = html_print_image ( 'images/people_2.png' , true );
2013-04-10 09:57:54 +02:00
}
2013-05-23 17:42:32 +02:00
2013-04-10 09:57:54 +02:00
if ( $view_mode === false ) {
2019-01-30 16:18:44 +01:00
$table -> rowspan [ 0 ][ 2 ] = 3 ;
} else {
$table -> rowspan [ 0 ][ 2 ] = 2 ;
2009-11-27 Sancho lerena <slerena@artica.es>
* operation/menu.php: User section has no ACL check, always can be seen.
* index.php: Added suppor for user-defined custom language (this code was
on my disk for 3 months, pending to be commited!).
* include/functions_db.php,
* include/functions_agents.php,
* godmode/alerts/alert_list.php,
* godmode/agentes/modificar_agente.php,
* godmode/agentes/configurar_agente.php: Added audit calls to several
management operations who don't have or have insufficient audit info.
* godmode/users/configure_user.php: Fixed several annoyings bugs. Added
custom language support, and added more audit info on management operations.
* godmode/users/user_list.php: More audit info.
* include/config_process.php: Add new debug option to render error log to
/pandora_console.log. Also set timezone if not defined (this makes warnings
on several PHP 5.x setups). Added user custom language support.
* include/functions_events.php: More audit info. Fixed problems with HTML
encoding render.
* functions_io.php: Some cleaning.
* include/functions_messages.php: Fixed problems with HTML
encoding render.
* functions_ui.php: Fixed problems with HTML encoding render in
print_string_substr() function.
* auth/mysql.php: is_user_admin() functions seems to be broken ¿?¿!. Fixed.
* styles/pandora.css: removed green colored left border in default style.
* message.php, incident*: Fixed problems with HTML encoding render.
* user.php: Better ACL check before let user to view/edit another user.
* user_edit: Removed some un-used form fields, some arrangements in layout,
and FIXED forever problems with password change (new code written).
* users/user_statistics.php: Now user can see its own audit records.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2139 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2009-11-27 21:02:12 +01:00
}
2019-01-30 16:18:44 +01:00
2013-04-10 09:57:54 +02:00
$table -> rowclass [] = '' ;
$table -> rowstyle [] = 'font-weight: bold;' ;
$table -> data [] = $data ;
2019-01-30 16:18:44 +01:00
$data = [];
2016-10-28 16:35:54 +02:00
$data [ 0 ] = '<span style="width:50%;float:left;">' . __ ( 'E-mail' ) . '</span>' ;
2019-01-30 16:18:44 +01:00
$data [ 0 ] .= $jump . '<span style="width:20%;float:left;line-height:20px;">' . html_print_input_text_extended ( 'email' , $user_info [ 'email' ], 'email' , '' , '25' , '100' , $view_mode , '' , 'class="input"' , true ) . '</span>' ;
2016-10-28 16:35:54 +02:00
$data [ 1 ] = '<span style="width:40%;float:left;">' . __ ( 'Phone number' ) . '</span>' ;
2019-01-30 16:18:44 +01:00
$data [ 1 ] .= $jump . '<div style="width:20%;float:left;line-height:50px;">' . html_print_input_text_extended ( 'phone' , $user_info [ 'phone' ], 'phone' , '' , '20' , '30' , $view_mode , '' , 'class="input"' , true ) . '</div>' ;
2013-04-10 09:57:54 +02:00
$table -> rowclass [] = '' ;
$table -> rowstyle [] = 'font-weight: bold;' ;
$table -> data [] = $data ;
2009-01-22 18:44:33 +01:00
if ( $view_mode === false ) {
2019-01-30 16:18:44 +01:00
if ( $config [ 'user_can_update_password' ]) {
$data = [];
$data [ 0 ] = '<span style="width:50%;float:left;">' . __ ( 'New Password' ) . '</span>' ;
$data [ 0 ] .= $jump . '<span style="width:20%;float:left;line-height:20px;">' . html_print_input_text_extended ( 'password_new' , '' , 'password_new' , '' , '25' , '45' , $view_mode , '' , 'class="input"' , true , true ) . '</span>' ;
$data [ 1 ] = '<span style="width:40%;float:left;">' . __ ( 'Password confirmation' ) . '</span>' ;
$data [ 1 ] .= $jump . '<span style="width:20%;float:left;line-height:20px;">' . html_print_input_text_extended ( 'password_conf' , '' , 'password_conf' , '' , '20' , '45' , $view_mode , '' , 'class="input"' , true , true ) . '</span>' ;
$table -> rowclass [] = '' ;
$table -> rowstyle [] = 'font-weight: bold;' ;
$table -> data [] = $data ;
} else {
$data = [];
$data [ 0 ] = '<i>' . __ ( 'You cannot change your password under the current authentication scheme' ) . '</i>' ;
$table -> rowclass [] = '' ;
$table -> rowstyle [] = '' ;
$table -> colspan [ count ( $table - data )][ 0 ] = 2 ;
$table -> data [] = $data ;
}
}
$data = [];
$data [ 0 ] = '<span style="width:50%;float:left;">' . __ ( 'Block size for pagination' ) . ui_print_help_tip ( __ ( 'If checkbox is clicked then block size global configuration is used' ), true ) . '</span>' ;
if ( $user_info [ 'block_size' ] == 0 ) {
$block_size = $config [ 'global_block_size' ];
} else {
$block_size = $user_info [ 'block_size' ];
2008-08-11 Esteban Sanchez <estebans@artica.es>
* include/functions_db.php: Added __ as an alias of lang_string().
* include/functions_reporting_pdf.php,
include/functions_reporting.php, include/functions.php,
include/functions_visual_map.php, index.php,
operation/incidents/incident.php,
operation/incidents/incident_detail.php,
operation/incidents/incident_note.php,
operation/incidents/incident_search.php,
operation/incidents/incident_statistics.php,
operation/snmpconsole/snmp_alert.php,
operation/snmpconsole/snmp_view.php, operation/users/user.php,
operation/users/user_edit.php, operation/users/user_statistics.php,
operation/events/event_statistics.php, operation/events/events.php,
operation/visual_console/render_view.php,
operation/visual_console/index.php, operation/extensions.php,
operation/agentes/estado_alertas.php,
operation/agentes/status_monitor.php,
operation/agentes/estado_grupo.php, operation/agentes/export_csv.php,
operation/agentes/datos_agente.php,
operation/agentes/estado_ultimopaquete.php,
operation/agentes/estado_generalagente.php,
operation/agentes/estado_agente.php, operation/agentes/bulbs.php,
operation/agentes/status_events.php, operation/agentes/sla_view.php,
operation/agentes/exportdata.php,
operation/agentes/estado_monitores.php,
operation/agentes/ver_agente.php, operation/agentes/estadisticas.php,
operation/agentes/tactical.php, operation/agentes/networkmap.php,
operation/messages/message.php,
operation/reporting/reporting_viewer.php,
operation/reporting/graph_viewer.php,
operation/reporting/custom_reporting.php,
operation/servers/view_server.php,
operation/servers/view_server_detail.php, operation/menu.php,
reporting/fgraph.php, reporting/stat_win.php, ajax.php,
general/logoff.php, general/pandora_help.php, general/footer.php,
general/noaccess.php, general/logon_failed.php,
general/links_menu.php, general/login_page.php, general/logon_ok.php,
general/header.php, general/main_menu.php,
godmode/groups/configure_group.php, godmode/groups/group_list.php,
godmode/setup/news.php, godmode/setup/links.php,
godmode/setup/setup.php, godmode/users/user_list.php,
godmode/users/configure_user.php, godmode/profiles/profile_list.php,
godmode/admin_access_logs.php, godmode/db/db_info_data.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_network.php,
godmode/agentes/module_manager_editor_wmi.php,
godmode/agentes/alert_manager.php,
godmode/agentes/module_manager_editor_plugin.php,
godmode/agentes/module_manager_editor_prediction.php,
godmode/agentes/alert_manager_editor.php,
godmode/agentes/manage_config.php,
godmode/agentes/module_manager_editor_data.php,
godmode/agentes/module_manager.php,
godmode/agentes/modificar_agente.php,
godmode/agentes/configurar_agente.php,
godmode/agentes/agent_disk_conf_editor.php,
godmode/agentes/planned_downtime.php,
godmode/agentes/manage_config_remote.php,
godmode/agentes/agent_manager.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_templates_form.php,
godmode/modules/manage_network_components_form_network.php,
godmode/modules/manage_network_components_form_wmi.php,
godmode/modules/manage_network_components.php,
godmode/modules/manage_nc_groups.php,
godmode/reporting/reporting_builder.php,
godmode/reporting/map_builder.php,
godmode/reporting/graph_builder.php, godmode/servers/plugin.php,
godmode/servers/manage_recontask.php,
godmode/servers/modificar_server.php,
godmode/servers/manage_recontask_form.php,
godmode/alerts/modify_alert.php, godmode/alerts/configure_alert.php,
godmode/menu.php: Replaced $id_user with $config['id_user']. Use __a
instead of $lang_label to future use of gettext. Style
corrections.
* godmode/agentes/planned_downtime.php: Rewritten to use Pandora
functions and adopt the UI style. Replaced lang_string with __().
* pandoradb.sql: Fields in tplanned_downtime renamed to fit
guidelines.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1005 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-08-11 12:59:07 +02:00
}
2009-01-22 18:44:33 +01:00
2019-01-30 16:18:44 +01:00
$data [ 0 ] .= $jump . '<span style="font-weight: normal;width:15%;float:left;line-height:20px;">' . html_print_input_text ( 'block_size' , $block_size , '' , 5 , 5 , true ) . '</span>' ;
$data [ 0 ] .= $jump . '<span style="width:2%;float:left;line-height:20px;">' . html_print_checkbox ( 'default_block_size' , 1 , $user_info [ 'block_size' ] == 0 , true ) . '</span>' ;
$data [ 0 ] .= __ ( 'Default' ) . ' (' . $config [ 'global_block_size' ] . ')' ;
2013-05-23 17:42:32 +02:00
2019-01-30 16:18:44 +01:00
$values = [
- 1 => __ ( 'Default' ),
1 => __ ( 'Yes' ),
0 => __ ( 'No' ),
];
2013-05-23 17:42:32 +02:00
2016-10-28 16:35:54 +02:00
$data [ 2 ] = '<span style="width:30%;float:left;">' . __ ( 'Language' ) . '</span>' ;
2019-01-30 16:18:44 +01:00
$data [ 2 ] .= $jump . html_print_select_from_sql (
'SELECT id_language, name FROM tlanguage' ,
'language' ,
$user_info [ 'language' ],
'' ,
__ ( 'Default' ),
'default' ,
true ,
'' ,
'' ,
'' ,
'' ,
'' ,
10
);
2013-06-25 13:20:13 +02:00
2013-04-10 09:57:54 +02:00
$table -> rowclass [] = '' ;
2013-05-23 17:42:32 +02:00
$table -> rowstyle [] = 'font-weight: bold;' ;
2013-04-10 09:57:54 +02:00
$table -> data [] = $data ;
2019-01-30 16:18:44 +01:00
$own_info = get_user_info ( $config [ 'id_user' ]);
if ( $own_info [ 'is_admin' ] || check_acl ( $config [ 'id_user' ], 0 , 'PM' )) {
$display_all_group = true ;
} else {
$display_all_group = false ;
}
2013-04-11 17:41:51 +02:00
$usr_groups = ( users_get_groups ( $config [ 'id_user' ], 'AR' , $display_all_group ));
$id_usr = $config [ 'id_user' ];
2018-04-30 15:34:46 +02:00
2019-01-30 16:18:44 +01:00
$data = [];
2018-04-30 15:34:46 +02:00
2013-04-22 19:43:28 +02:00
if ( ! $meta ) {
2019-01-30 16:18:44 +01:00
$data [ 0 ] = '<span style="width:50%;float:left;">' . __ ( 'Home screen' ) . ui_print_help_tip ( __ ( 'User can customize the home page. By default, will display \'Agent Detail\'. Example: Select \'Other\' and type sec=estado&sec2=operation/agentes/estado_agente to show agent detail view' ), true ) . '</span>' ;
$values = [
'Default' => __ ( 'Default' ),
'Visual console' => __ ( 'Visual console' ),
'Event list' => __ ( 'Event list' ),
'Group view' => __ ( 'Group view' ),
'Tactical view' => __ ( 'Tactical view' ),
'Alert detail' => __ ( 'Alert detail' ),
'Other' => __ ( 'Other' ),
];
if ( enterprise_installed ()) {
$values [ 'Dashboard' ] = __ ( 'Dashboard' );
}
$data [ 0 ] .= $jump . '<span style="width:20%;float:left;line-height:20px;">' . html_print_select ( $values , 'section' , io_safe_output ( $user_info [ 'section' ]), 'show_data_section();' , '' , - 1 , true , false , false ) . '</span>' ;
if ( enterprise_installed ()) {
$dashboards = get_user_dashboards ( $config [ 'id_user' ]);
$dashboards_aux = [];
if ( $dashboards === false ) {
$dashboards = [ 'None' => 'None' ];
} else {
foreach ( $dashboards as $key => $dashboard ) {
$dashboards_aux [ $dashboard [ 'name' ]] = $dashboard [ 'name' ];
}
}
$data [ 0 ] .= html_print_select ( $dashboards_aux , 'dashboard' , $user_info [ 'data_section' ], '' , '' , '' , true );
}
$layouts = visual_map_get_user_layouts ( $config [ 'id_user' ], true );
$layouts_aux = [];
if ( $layouts === false ) {
$layouts_aux = [ 'None' => 'None' ];
} else {
foreach ( $layouts as $layout ) {
$layouts_aux [ $layout ] = $layout ;
}
}
$data [ 0 ] .= html_print_select ( $layouts_aux , 'visual_console' , $user_info [ 'data_section' ], '' , '' , '' , true );
$data [ 0 ] .= html_print_input_text ( 'data_section' , $user_info [ 'data_section' ], '' , 60 , 255 , true , false );
2019-02-19 14:55:44 +01:00
// User only can change skins if has more than one group.
2019-01-30 16:18:44 +01:00
$data [ 1 ] = '' ;
if ( function_exists ( 'skins_print_select' )) {
if ( count ( $usr_groups ) > 1 ) {
$data [ 1 ] = '<span style="width:40%;float:left;">' . __ ( 'Skin' ) . '</span>' ;
$data [ 1 ] .= $jump . '<span style="width:20%;float:left;">' . skins_print_select ( $id_usr , 'skin' , $user_info [ 'id_skin' ], '' , __ ( 'None' ), 0 , true ) . '</span>' ;
}
}
} else {
$data [ 0 ] = '' ;
$data [ 1 ] = '' ;
2018-04-30 15:34:46 +02:00
}
$data [ 2 ] = '<span style="width:30%;float:left;">' . __ ( 'Timezone' ) . '</span>' ;
2019-01-30 16:18:44 +01:00
$data [ 2 ] .= $jump . html_print_timezone_select ( 'timezone' , $user_info [ 'timezone' ]);
2018-04-30 15:34:46 +02:00
$table -> rowclass [] = '' ;
$table -> rowstyle [] = 'font-weight: bold;' ;
$table -> data [] = $data ;
2013-04-10 09:57:54 +02:00
2019-02-19 14:55:44 +01:00
// Double auth.
2014-12-11 16:17:35 +01:00
$double_auth_enabled = ( bool ) db_get_value ( 'id' , 'tuser_double_auth' , 'id_user' , $config [ 'id_user' ]);
2019-01-30 16:18:44 +01:00
$data = [];
2018-12-10 11:04:21 +01:00
if ( $config [ 'double_auth_enabled' ]) {
2019-02-22 12:30:27 +01:00
$data [ 0 ] = '<span style="width:50%;float:left;">' . __ ( 'Double authentication' ) . '</span>' ;
$data [ 0 ] .= $jump ;
$data [ 0 ] .= '<span style="width:20%;float:left;line-height:20px;">' . html_print_checkbox ( 'double_auth' , 1 , $double_auth_enabled , true ) . '</span>' ;
2018-12-10 11:04:21 +01:00
}
2014-12-11 16:17:35 +01:00
if ( $double_auth_enabled ) {
2019-01-30 16:18:44 +01:00
$data [ 0 ] .= $jump ;
$data [ 0 ] .= html_print_button ( __ ( 'Show information' ), 'show_info' , false , 'javascript:show_double_auth_info();' , '' , true );
2014-12-11 16:17:35 +01:00
}
2019-01-30 16:18:44 +01:00
2019-02-19 14:55:44 +01:00
// Dialog.
2016-10-28 16:35:54 +02:00
$data [ 0 ] .= '<div id="dialog-double_auth"><div id="dialog-double_auth-container"></div></div>' ;
2016-05-25 12:43:49 +02:00
2019-01-30 16:18:44 +01:00
if ( check_acl ( $config [ 'id_user' ], 0 , 'ER' )) {
$data [ 1 ] = '<span style="width:40%;float:left;">' . __ ( 'Event filter' ) . '</span>' ;
$data [ 1 ] .= $jump . '<span style="width:20%;float:left;line-height:20px;">' . html_print_select_from_sql (
'SELECT id_filter, id_name FROM tevent_filter' ,
'event_filter' ,
2019-02-19 14:55:44 +01:00
$user_info [ 'default_event_filter' ],
2019-01-30 16:18:44 +01:00
'' ,
__ ( 'None' ),
null ,
true
) . '</span>' ;
2019-02-19 14:55:44 +01:00
} else if ( license_free ()) {
2019-01-30 16:18:44 +01:00
$data [ 1 ] = __ ( 'Newsletter Subscribed' ) . ':' ;
if ( $user_info [ 'middlename' ]) {
$data [ 1 ] .= $jump . '<span style="font-weight:initial;">' . __ ( 'Already subscribed to %s newsletter' , get_product_name ()) . '</span>' ;
} else {
$data [ 1 ] .= $jump . '<span style="font-weight:initial;"><a style="text-decoration:underline;" href="javascript: force_run_newsletter();">' . __ ( 'Subscribe to our newsletter' ) . '</a></span>' ;
}
$data [ 2 ] = __ ( 'Newsletter Reminder' ) . ' ' ;
if ( $user_info [ 'firstname' ] != 0 ) {
$user_info [ 'firstname' ] = 1 ;
}
$data [ 2 ] .= html_print_checkbox ( 'newsletter_reminder' , 1 , $user_info [ 'firstname' ], true );
2016-05-25 12:43:49 +02:00
} else {
2019-01-30 16:18:44 +01:00
$table -> colspan [ count ( $table -> data )][ 0 ] = 3 ;
2016-05-25 12:43:49 +02:00
}
2019-01-30 16:18:44 +01:00
2014-12-11 16:17:35 +01:00
$table -> rowclass [] = '' ;
$table -> rowstyle [] = 'font-weight: bold;' ;
$table -> data [] = $data ;
2019-01-30 16:18:44 +01:00
$data = [];
2016-09-05 10:31:43 +02:00
2019-01-30 16:18:44 +01:00
$autorefresh_list_out = [];
if ( is_metaconsole ()) {
$autorefresh_list_out [ 'monitoring/tactical' ] = 'tactical' ;
$autorefresh_list_out [ 'monitoring/group_view' ] = 'group_view' ;
2018-03-06 13:13:40 +01:00
} else {
2019-01-30 16:18:44 +01:00
$autorefresh_list_out [ 'operation/agentes/tactical' ] = 'tactical' ;
$autorefresh_list_out [ 'operation/agentes/group_view' ] = 'group_view' ;
}
$autorefresh_list_out [ 'operation/agentes/estado_agente' ] = 'agent_status' ;
$autorefresh_list_out [ 'operation/agentes/alerts_status' ] = 'alerts_status' ;
$autorefresh_list_out [ 'operation/agentes/status_monitor' ] = 'status_monitor' ;
$autorefresh_list_out [ 'enterprise/operation/services/services' ] = 'services' ;
$autorefresh_list_out [ 'enterprise/dashboard/main_dashboard' ] = 'main_dashboard' ;
$autorefresh_list_out [ 'operation/reporting/graph_viewer' ] = 'graph_viewer' ;
$autorefresh_list_out [ 'operation/snmpconsole/snmp_view' ] = 'snmp_view' ;
$autorefresh_list_out [ 'operation/agentes/pandora_networkmap' ] = 'networkmap' ;
$autorefresh_list_out [ 'operation/visual_console/render_view' ] = 'render_view' ;
$autorefresh_list_out [ 'operation/events/events' ] = 'events' ;
$autorefresh_list_out [ 'enterprise/godmode/reporting/cluster_view' ] = 'cluster_view' ;
if ( ! isset ( $autorefresh_list )) {
$select = db_process_sql ( " SELECT autorefresh_white_list FROM tusuario WHERE id_user = ' " . $config [ 'id_user' ] . " ' " );
$autorefresh_list = json_decode ( $select [ 0 ][ 'autorefresh_white_list' ]);
if ( $autorefresh_list === null ) {
$autorefresh_list [ 0 ] = __ ( 'None' );
} else {
$aux = [];
2019-02-19 14:55:44 +01:00
$count_autorefresh_list = count ( $autorefresh_list );
for ( $i = 0 ; $i < $count_autorefresh_list ; $i ++ ) {
2019-01-30 16:18:44 +01:00
$aux [ $autorefresh_list [ $i ]] = $autorefresh_list_out [ $autorefresh_list [ $i ]];
unset ( $autorefresh_list_out [ $autorefresh_list [ $i ]]);
$autorefresh_list [ $i ] = $aux ;
}
$autorefresh_list = $aux ;
}
} else {
if (( $autorefresh_list [ 0 ] === '' ) || ( $autorefresh_list [ 0 ] === '0' )) {
$autorefresh_list [ 0 ] = __ ( 'None' );
} else {
$aux = [];
2019-02-19 14:55:44 +01:00
$count_autorefresh_list = count ( $autorefresh_list );
for ( $i = 0 ; $i < $count_autorefresh_list ; $i ++ ) {
2019-01-30 16:18:44 +01:00
$aux [ $autorefresh_list [ $i ]] = $autorefresh_list_out [ $autorefresh_list [ $i ]];
unset ( $autorefresh_list_out [ $autorefresh_list [ $i ]]);
$autorefresh_list [ $i ] = $aux ;
}
2016-09-05 10:31:43 +02:00
2019-01-30 16:18:44 +01:00
$autorefresh_list = $aux ;
}
2016-09-05 10:31:43 +02:00
}
2019-02-19 14:55:44 +01:00
$data [ 0 ] = _ ( 'Autorefresh' ) . ui_print_help_tip (
__ ( 'This will activate autorefresh in selected pages' ),
true
);
$select_out = html_print_select (
$autorefresh_list_out ,
'autorefresh_list_out[]' ,
'' ,
'' ,
'' ,
'' ,
true ,
true ,
true ,
'' ,
false ,
'width:200px'
);
2019-01-30 16:18:44 +01:00
$arrows = ' ' ;
2019-02-19 14:55:44 +01:00
$select_in = html_print_select (
$autorefresh_list ,
'autorefresh_list[]' ,
'' ,
'' ,
'' ,
'' ,
true ,
true ,
true ,
'' ,
false ,
'width:200px'
);
2016-09-05 10:31:43 +02:00
2016-09-22 11:12:19 +02:00
$table_ichanges = ' < table style = " position:relative;left:160px; " >
2016-09-05 10:31:43 +02:00
< tr >
2019-01-30 16:18:44 +01:00
< td > '.__(' Full list of pages ').' </ td >
2016-09-05 10:31:43 +02:00
< td ></ td >
2019-01-30 16:18:44 +01:00
< td > '.__(' List of pages with autorefresh ').' </ td >
2016-09-05 10:31:43 +02:00
</ tr >
< tr >
2019-01-30 16:18:44 +01:00
< td > '.$select_out.' </ td >
2016-09-05 10:31:43 +02:00
< td >
2019-02-19 14:55:44 +01:00
< a href = " javascript: " > ' . html_print_image (
'images/darrowright.png' ,
true ,
[
'id' => 'right_autorefreshlist' ,
'alt' => __ ( 'Push selected pages into autorefresh list' ),
'title' => __ ( 'Push selected pages into autorefresh list' ),
]
) . ' </ a >
2016-09-05 10:31:43 +02:00
< br >< br >
2019-02-19 14:55:44 +01:00
< a href = " javascript: " > ' . html_print_image (
'images/darrowleft.png' ,
true ,
[
'id' => 'left_autorefreshlist' ,
'alt' => __ ( 'Pop selected pages out of autorefresh list' ),
'title' => __ ( 'Pop selected pages out of autorefresh list' ),
]
) . ' </ a >
2016-09-05 10:31:43 +02:00
</ td >
2019-01-30 16:18:44 +01:00
< td > '.$select_in.' </ td >
2016-09-05 10:31:43 +02:00
</ tr >
</ table > ' ;
$data [ 0 ] .= $table_ichanges ;
2019-02-19 14:55:44 +01:00
// Time autorefresh.
2017-10-23 13:17:06 +02:00
$times = get_refresh_time_array ();
2019-02-19 14:55:44 +01:00
$data [ 1 ] = '<span style="width:40%;float:left;">' . __ ( 'Time autorefresh' );
$data [ 1 ] .= ui_print_help_tip (
__ ( 'Interval of autorefresh of the elements, by default they are 30 seconds, needing to enable the autorefresh first' ),
true
) . '</span>' ;
$data [ 1 ] .= $jump . '<span style="width:20%;float:left;">' ;
$data [ 1 ] .= html_print_select (
$times ,
'time_autorefresh' ,
$user_info [ 'time_autorefresh' ],
'' ,
'' ,
'' ,
true ,
false ,
false
) . '</span>' ;
2016-09-05 10:31:43 +02:00
$table -> rowclass [] = '' ;
2017-10-23 13:17:06 +02:00
$table -> rowstyle [] = 'font-weight: bold;vertical-align: top' ;
2016-09-05 10:31:43 +02:00
$table -> data [] = $data ;
2014-12-11 16:17:35 +01:00
2019-01-30 16:18:44 +01:00
$data = [];
2013-04-10 09:57:54 +02:00
$data [ 0 ] = __ ( 'Comments' );
$table -> colspan [ count ( $table -> data )][ 0 ] = 3 ;
$table -> rowclass [] = '' ;
$table -> rowstyle [] = 'font-weight: bold;' ;
$table -> data [] = $data ;
2019-01-30 16:18:44 +01:00
$data = [];
2019-02-19 14:55:44 +01:00
$data [ 0 ] = '<div style="width:98%">' ;
$data [ 0 ] .= html_print_textarea (
'comments' ,
2 ,
60 ,
$user_info [ 'comments' ],
(( $view_mode ) ? 'readonly="readonly"' : '' ),
true
);
$data [ 0 ] .= '</div>' ;
2013-04-10 09:57:54 +02:00
$data [ 0 ] .= html_print_input_hidden ( 'quick_language_change' , 1 , true );
$table -> colspan [ count ( $table -> data )][ 0 ] = 3 ;
$table -> rowclass [] = '' ;
$table -> rowstyle [] = '' ;
$table -> data [] = $data ;
2012-03-08 17:42:31 +01:00
2019-02-25 14:41:27 +01:00
echo '<form name="user_mod" method="post" action="' . ui_get_full_url () . '&modified=1&id=' . $id . '&pure=' . $config [ 'pure' ] . '">' ;
2012-03-08 17:42:31 +01:00
2013-04-10 09:57:54 +02:00
html_print_table ( $table );
2012-03-08 17:42:31 +01:00
2019-01-30 16:18:44 +01:00
echo '<div style="width:' . $table -> width . '; text-align:right;">' ;
if ( ! $config [ 'user_can_update_info' ]) {
echo '<i>' . __ ( 'You can not change your user info under the current authentication scheme' ) . '</i>' ;
} else {
html_print_csrf_hidden ();
html_print_submit_button ( __ ( 'Update' ), 'uptbutton' , $view_mode , 'class="sub upd"' );
2009-01-22 18:44:33 +01:00
}
2019-01-30 16:18:44 +01:00
2009-11-27 Sancho lerena <slerena@artica.es>
* operation/menu.php: User section has no ACL check, always can be seen.
* index.php: Added suppor for user-defined custom language (this code was
on my disk for 3 months, pending to be commited!).
* include/functions_db.php,
* include/functions_agents.php,
* godmode/alerts/alert_list.php,
* godmode/agentes/modificar_agente.php,
* godmode/agentes/configurar_agente.php: Added audit calls to several
management operations who don't have or have insufficient audit info.
* godmode/users/configure_user.php: Fixed several annoyings bugs. Added
custom language support, and added more audit info on management operations.
* godmode/users/user_list.php: More audit info.
* include/config_process.php: Add new debug option to render error log to
/pandora_console.log. Also set timezone if not defined (this makes warnings
on several PHP 5.x setups). Added user custom language support.
* include/functions_events.php: More audit info. Fixed problems with HTML
encoding render.
* functions_io.php: Some cleaning.
* include/functions_messages.php: Fixed problems with HTML
encoding render.
* functions_ui.php: Fixed problems with HTML encoding render in
print_string_substr() function.
* auth/mysql.php: is_user_admin() functions seems to be broken ¿?¿!. Fixed.
* styles/pandora.css: removed green colored left border in default style.
* message.php, incident*: Fixed problems with HTML encoding render.
* user.php: Better ACL check before let user to view/edit another user.
* user_edit: Removed some un-used form fields, some arrangements in layout,
and FIXED forever problems with password change (new code written).
* users/user_statistics.php: Now user can see its own audit records.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2139 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2009-11-27 21:02:12 +01:00
echo '</div></form>' ;
2009-01-22 18:44:33 +01:00
2013-04-10 09:57:54 +02:00
unset ( $table );
2019-01-30 16:18:44 +01:00
if ( ! defined ( 'METACONSOLE' )) {
echo '<h4>' . __ ( 'Profiles/Groups assigned to this user' ) . '</h4>' ;
}
2009-01-22 18:44:33 +01:00
2017-02-03 12:23:58 +01:00
$table = new stdClass ();
2015-06-12 15:50:46 +02:00
$table -> width = '100%' ;
$table -> class = 'databox data' ;
2015-06-08 11:05:19 +02:00
if ( defined ( 'METACONSOLE' )) {
2019-01-30 16:18:44 +01:00
$table -> width = '100%' ;
$table -> class = 'databox data' ;
$table -> title = __ ( 'Profiles/Groups assigned to this user' );
$table -> head_colspan [ 0 ] = 0 ;
$table -> headstyle [] = 'background-color: #82B93C' ;
$table -> headstyle [] = 'background-color: #82B93C' ;
$table -> headstyle [] = 'background-color: #82B93C' ;
2015-03-06 12:28:05 +01:00
}
2019-01-30 16:18:44 +01:00
$table -> data = [];
$table -> head = [];
$table -> align = [];
$table -> style = [];
2015-07-14 15:59:39 +02:00
2015-06-08 11:05:19 +02:00
if ( ! defined ( 'METACONSOLE' )) {
2019-01-30 16:18:44 +01:00
$table -> style [ 0 ] = 'font-weight: bold' ;
$table -> style [ 1 ] = 'font-weight: bold' ;
2015-03-06 12:28:05 +01:00
}
2015-07-14 15:59:39 +02:00
2010-05-20 14:07:19 +02:00
$table -> head [ 0 ] = __ ( 'Profile name' );
2010-07-19 18:20:11 +02:00
$table -> head [ 1 ] = __ ( 'Group' );
2013-01-09 10:25:07 +01:00
$table -> head [ 2 ] = __ ( 'Tags' );
2019-01-30 16:18:44 +01:00
$table -> align = [];
2015-06-12 15:50:46 +02:00
$table -> align [ 1 ] = 'left' ;
2009-01-22 18:44:33 +01:00
2019-01-30 16:18:44 +01:00
$table -> data = [];
2009-01-22 18:44:33 +01:00
2019-01-30 16:18:44 +01:00
$result = db_get_all_rows_field_filter ( 'tusuario_perfil' , 'id_usuario' , $id );
2009-01-22 18:44:33 +01:00
if ( $result === false ) {
2019-01-30 16:18:44 +01:00
$result = [];
2009-01-22 18:44:33 +01:00
}
foreach ( $result as $profile ) {
2019-01-30 16:18:44 +01:00
$data [ 0 ] = '<b>' . profile_get_name ( $profile [ 'id_perfil' ]) . '</b>' ;
if ( $config [ 'show_group_name' ]) {
2019-02-19 14:55:44 +01:00
$data [ 1 ] = ui_print_group_icon (
$profile [ 'id_grupo' ],
true
) . '<a href="index.php?sec=estado&sec2=operation/agentes/estado_agente&refr=60&group_id=' . $profile [ 'id_grupo' ] . '"> </a>' ;
2019-01-30 16:18:44 +01:00
} else {
2019-02-19 14:55:44 +01:00
$data [ 1 ] = ui_print_group_icon (
$profile [ 'id_grupo' ],
true
) . '<a href="index.php?sec=estado&sec2=operation/agentes/estado_agente&refr=60&group_id=' . $profile [ 'id_grupo' ] . '"> ' . ui_print_truncate_text ( groups_get_name ( $profile [ 'id_grupo' ], true ), GENERIC_SIZE_TEXT ) . '</a>' ;
2019-01-30 16:18:44 +01:00
}
$tags_ids = explode ( ',' , $profile [ 'tags' ]);
$tags = tags_get_tags ( $tags_ids );
$data [ 2 ] = tags_get_tags_formatted ( $tags );
2006-03-27 05:37:27 +02:00
2019-01-30 16:18:44 +01:00
array_push ( $table -> data , $data );
2012-07-24 Miguel de Dios <miguel.dedios@artica.es>
* godmode/setup/file_manager.php, godmode/setup/news.php,
godmode/users/configure_user.php, godmode/users/user_list.php,
godmode/massive/massive_copy_modules.php,
godmode/massive/massive_enable_disable_alerts.php,
godmode/massive/massive_delete_action_alerts.php,
godmode/massive/massive_delete_alerts.php,
godmode/modules/manage_network_templates_form.php,
godmode/modules/manage_nc_groups.php,
godmode/modules/manage_nc_groups_form.php,
godmode/modules/manage_network_templates.php,
godmode/netflow/nf_edit.php, godmode/netflow/nf_edit_form.php,
godmode/netflow/nf_item_list.php,
godmode/netflow/nf_report_item.php, godmode/netflow/nf.php,
operation/incidents/incident.php,
operation/incidents/incident_detail.php,
operation/agentes/estado_agente.php, operation/agentes/sla_view.php,
operation/agentes/tactical.php,
operation/agentes/estado_generalagente.php,
operation/snmpconsole/snmp_view.php, operation/users/user_edit.php,
operation/integria_incidents/incident_detail.php,
operation/gis_maps/index.php, operation/events/events_list.php,
operation/events/events.php, operation/messages/message_edit.php,
operation/messages/message_list.php,
operation/reporting/graph_viewer.php, operation/search_reports.php,
operation/netflow/nf_view.php: cleaned source code.
* godmode/massive/massive_operations.php,
godmode/massive/massive_edit_modules.php: fixed the massive edition
of "any" module in agents.
Fixes: #3543484
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@6806 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2012-07-24 18:38:48 +02:00
}
2019-01-30 16:18:44 +01:00
if ( ! empty ( $table -> data )) {
html_print_table ( $table );
} else {
ui_print_info_message ([ 'no_close' => true , 'message' => __ ( 'This user doesn\'t have any assigned profile/group.' ) ]);
2009-01-22 18:44:33 +01:00
}
2013-05-20 10:42:02 +02:00
enterprise_hook ( 'close_meta_frame' );
2008-06-18 Esteban Sanchez <estebans@artica.es>
* functions.php: Added documentation to all the functions in JavaDoc
format, which is an facto-standard. Deleted unused functions. Improved
the code of some functions. Tab and blankspaces style correction.
Replaced old lang_label with lang_string(). Some functions to print
selects were replaced with a functio to get an array with all the
possible values so the caller will use print_select() with them.
* godmode/agentes/agent_manager.php: Use print_select() instead of
deleted function.
* godmode/agentes/alert_manager_editor.php: Use print_select() instead
of deleted function. Use print_checkbox(). Style correction
* godmode/reporting/map_builder.php, operation/agentes/ver_agente.php,
operation/messages/message.php,
operation/reporting/reporting_viewer_pdf.php:
Replaced deleted functions with their equivalents.
* include/functions_db.php: Documented some functions, some work is
still required. Added get_reports() to get all the reports a user can
see. Deleted unused functions. Replaced deleted functions with their
equivalents. Added get_db_row_sql(), get_previous_data(). Fixed errors
when calculating average, max, min and sum values of an agent module.
* include/functions_reporting.php: Fixed errors when calculating SLA.
* operation/events/events.php: Tab and blankspaces correction.
Replaced form_priority with print_select(). Style correction.
* operation/reporting/custom_reporting.php: Show all the reports a
user can see. Use Pandora functions.
* operation/reporting/reporting_viewer.php: Show unknown label if SLA
can not be calculated.
* operation/snmpconsole/snmp_alert.php: Avoid an extra indentation
level by using check_login() properly. Tab and blankspaces correction.
* index.php, operation/users/user_edit.php: Adopted to renamed
function.
* godmode/db/db_sanity.php, reporting/fgraph.php: Style correction.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@881 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-06-19 11:01:12 +02:00
?>
2011-08-08 13:20:56 +02:00
< script language = " javascript " type = " text/javascript " >
$ ( document ) . ready ( function () {
2016-09-05 10:31:43 +02:00
2019-01-30 16:18:44 +01:00
$ ( " #right_autorefreshlist " ) . click ( function () {
jQuery . each ( $ ( " select[name='autorefresh_list_out[]'] option:selected " ), function ( key , value ) {
imodule_name = $ ( value ) . html ();
if ( imodule_name != < ? php echo " ' " . __ ( 'None' ) . " ' " ; ?> ) {
id_imodule = $ ( value ) . attr ( 'value' );
$ ( " select[name='autorefresh_list[]'] " ) . append ( $ ( " <option></option> " ) . val ( id_imodule ) . html ( '<i>' + imodule_name + '</i>' ));
$ ( " #autorefresh_list_out " ) . find ( " option[value=' " + id_imodule + " '] " ) . remove ();
$ ( " #autorefresh_list " ) . find ( " option[value=''] " ) . remove ();
$ ( " #autorefresh_list " ) . find ( " option[value='0'] " ) . remove ();
if ( $ ( " #autorefresh_list_out option " ) . length == 0 ) {
$ ( " select[name='autorefresh_list_out[]'] " ) . append ( $ ( " <option></option> " ) . val ( '' ) . html ( '<i><?php echo __(' None '); ?></i>' ));
}
}
});
});
$ ( " #left_autorefreshlist " ) . click ( function () {
jQuery . each ( $ ( " select[name='autorefresh_list[]'] option:selected " ), function ( key , value ) {
imodule_name = $ ( value ) . html ();
if ( imodule_name != < ? php echo " ' " . __ ( 'None' ) . " ' " ; ?> ) {
id_imodule = $ ( value ) . attr ( 'value' );
$ ( " #autorefresh_list " ) . find ( " option[value=' " + id_imodule + " '] " ) . remove ();
$ ( " #autorefresh_list_out " ) . find ( " option[value=''] " ) . remove ();
$ ( " select[name='autorefresh_list_out[]'] " ) . append ( $ ( " <option><option> " ) . val ( id_imodule ) . html ( '<i>' + imodule_name + '</i>' ));
$ ( " #autorefresh_list_out option " ) . last () . remove ();
if ( $ ( " #autorefresh_list option " ) . length == 0 ) {
$ ( " select[name='autorefresh_list[]'] " ) . append ( $ ( " <option></option> " ) . val ( '' ) . html ( '<i><?php echo __(' None '); ?></i>' ));
}
}
});
});
$ ( " #submit-uptbutton " ) . click ( function () {
if ( $ ( " #autorefresh_list option " ) . length > 0 ) {
$ ( '#autorefresh_list option' ) . prop ( 'selected' , true );
}
});
check_default_block_size ()
$ ( " #checkbox-default_block_size " ) . change ( function () {
check_default_block_size ();
});
function check_default_block_size () {
if ( $ ( " #checkbox-default_block_size " ) . is ( ':checked' )) {
$ ( " #text-block_size " ) . attr ( 'disabled' , true );
}
else {
$ ( " #text-block_size " ) . removeAttr ( 'disabled' );
}
}
$ ( " input#checkbox-double_auth " ) . change ( function ( e ) {
e . preventDefault ();
if ( this . checked ) {
show_double_auth_activation ();
}
else {
show_double_auth_deactivation ();
}
});
show_data_section ();
2011-08-08 13:20:56 +02:00
});
2012-03-08 17:42:31 +01:00
function show_data_section () {
2019-01-30 16:18:44 +01:00
section = $ ( " #section " ) . val ();
switch ( section ) {
case < ? php echo " ' " . 'Dashboard' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
case < ? php echo " ' " . 'Visual console' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " " );
break ;
case < ? php echo " ' " . 'Event list' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
case < ? php echo " ' " . 'Group view' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
case < ? php echo " ' " . 'Tactical view' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
case < ? php echo " ' " . 'Alert detail' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
case < ? php echo " ' " . 'Other' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
case < ? php echo " ' " . 'Default' . " ' " ; ?> :
$ ( " #text-data_section " ) . css ( " display " , " none " );
$ ( " #dashboard " ) . css ( " display " , " none " );
$ ( " #visual_console " ) . css ( " display " , " none " );
break ;
}
2012-03-08 17:42:31 +01:00
}
2014-12-11 16:17:35 +01:00
function show_double_auth_info () {
2019-01-30 16:18:44 +01:00
var userID = " <?php echo $config['id_user'] ; ?> " ;
var $loadingSpinner = $ ( " <img src= \" <?php echo $config['homeurl'] ; ?>/images/spinner.gif \" /> " );
var $dialogContainer = $ ( " div#dialog-double_auth-container " );
$dialogContainer . html ( $loadingSpinner );
// Load the info page
var request = $ . ajax ({
url : " <?php echo ui_get_full_url('ajax.php', false, false, false); ?> " ,
type : 'POST' ,
dataType : 'html' ,
data : {
page : 'include/ajax/double_auth.ajax' ,
id_user : userID ,
get_double_auth_data_page : 1 ,
containerID : $dialogContainer . prop ( 'id' )
},
complete : function ( xhr , textStatus ) {
},
success : function ( data , textStatus , xhr ) {
// isNaN = is not a number
if ( isNaN ( data )) {
$dialogContainer . html ( data );
}
// data is a number, convert it to integer to do the compare
else if ( Number ( data ) === - 1 ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('Authentication error').'</div></b>'; ?> " );
}
else {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('Error').'</div></b>'; ?> " );
}
},
error : function ( xhr , textStatus , errorThrown ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('There was an error loading the data').'</div></b>'; ?> " );
}
});
$ ( " div#dialog-double_auth " )
. append ( $dialogContainer )
. dialog ({
resizable : true ,
draggable : true ,
modal : true ,
title : " <?php echo __('Double autentication information'); ?> " ,
overlay : {
opacity : 0.5 ,
background : " black "
},
width : 400 ,
height : 375 ,
close : function ( event , ui ) {
// Abort the ajax request
if ( typeof request != 'undefined' )
request . abort ();
// Remove the contained html
$dialogContainer . empty ();
}
})
. show ();
2014-12-11 16:17:35 +01:00
}
function show_double_auth_activation () {
2019-01-30 16:18:44 +01:00
var userID = " <?php echo $config['id_user'] ; ?> " ;
var $loadingSpinner = $ ( " <img src= \" <?php echo $config['homeurl'] ; ?>/images/spinner.gif \" /> " );
var $dialogContainer = $ ( " div#dialog-double_auth-container " );
$dialogContainer . html ( $loadingSpinner );
// Load the info page
var request = $ . ajax ({
url : " <?php echo ui_get_full_url('ajax.php', false, false, false); ?> " ,
type : 'POST' ,
dataType : 'html' ,
data : {
page : 'include/ajax/double_auth.ajax' ,
id_user : userID ,
get_double_auth_info_page : 1 ,
containerID : $dialogContainer . prop ( 'id' )
},
complete : function ( xhr , textStatus ) {
},
success : function ( data , textStatus , xhr ) {
// isNaN = is not a number
if ( isNaN ( data )) {
$dialogContainer . html ( data );
}
// data is a number, convert it to integer to do the compare
else if ( Number ( data ) === - 1 ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('Authentication error').'</div></b>'; ?> " );
}
else {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('Error').'</div></b>'; ?> " );
}
},
error : function ( xhr , textStatus , errorThrown ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('There was an error loading the data').'</div></b>'; ?> " );
}
});
$ ( " div#dialog-double_auth " ) . dialog ({
resizable : true ,
draggable : true ,
modal : true ,
title : " <?php echo __('Double autentication activation'); ?> " ,
overlay : {
opacity : 0.5 ,
background : " black "
},
width : 500 ,
height : 400 ,
close : function ( event , ui ) {
// Abort the ajax request
if ( typeof request != 'undefined' )
request . abort ();
// Remove the contained html
$dialogContainer . empty ();
document . location . reload ();
}
})
. show ();
2014-12-11 16:17:35 +01:00
}
function show_double_auth_deactivation () {
2019-01-30 16:18:44 +01:00
var userID = " <?php echo $config['id_user'] ; ?> " ;
var $loadingSpinner = $ ( " <img src= \" <?php echo $config['homeurl'] ; ?>/images/spinner.gif \" /> " );
var $dialogContainer = $ ( " div#dialog-double_auth-container " );
var message = " <p><?php echo __('Are you sure?').'<br>'.__('The double authentication will be deactivated'); ?></p> " ;
var $button = $ ( " <input type= \" button \" value= \" <?php echo __('Deactivate'); ?> \" /> " );
$dialogContainer
. empty ()
. append ( message )
. append ( $button );
var request ;
$button . click ( function ( e ) {
e . preventDefault ();
$dialogContainer . html ( $loadingSpinner );
// Deactivate the double auth
request = $ . ajax ({
url : " <?php echo ui_get_full_url('ajax.php', false, false, false); ?> " ,
type : 'POST' ,
dataType : 'json' ,
data : {
page : 'include/ajax/double_auth.ajax' ,
id_user : userID ,
deactivate_double_auth : 1
},
complete : function ( xhr , textStatus ) {
},
success : function ( data , textStatus , xhr ) {
if ( data === - 1 ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('Authentication error').'</div></b>'; ?> " );
}
else if ( data ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" green \" >'.__('The double autentication was deactivated successfully').'</div></b>'; ?> " );
}
else {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('There was an error deactivating the double autentication').'</div></b>'; ?> " );
}
},
error : function ( xhr , textStatus , errorThrown ) {
$dialogContainer . html ( " <?php echo '<b><div class= \" red \" >'.__('There was an error deactivating the double autentication').'</div></b>'; ?> " );
}
});
});
$ ( " div#dialog-double_auth " ) . dialog ({
resizable : true ,
draggable : true ,
modal : true ,
title : " <?php echo __('Double autentication activation'); ?> " ,
overlay : {
opacity : 0.5 ,
background : " black "
},
width : 300 ,
height : 150 ,
close : function ( event , ui ) {
// Abort the ajax request
if ( typeof request != 'undefined' )
request . abort ();
// Remove the contained html
$dialogContainer . empty ();
document . location . reload ();
}
})
. show ();
2014-12-11 16:17:35 +01:00
}
2013-03-14 17:52:05 +01:00
</ script >