From d9999cd12b6f5ba1c105c08154c2703ccc3f16c6 Mon Sep 17 00:00:00 2001 From: Ramon Novoa Date: Thu, 25 Apr 2013 11:34:29 +0000 Subject: [PATCH] 2013-04-25 Ramon Novoa * images/cross_double.png, godmode/users/user_list.php: Added support to delete users from all consoles to the metaconsole. Fixes bug #3607619. git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@8058 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f --- pandora_console/ChangeLog | 6 +++ pandora_console/godmode/users/user_list.php | 43 ++++++++++++++++++-- pandora_console/images/cross_double.png | Bin 0 -> 730 bytes 3 files changed, 45 insertions(+), 4 deletions(-) create mode 100644 pandora_console/images/cross_double.png diff --git a/pandora_console/ChangeLog b/pandora_console/ChangeLog index 57ba14568b..a2983b8841 100644 --- a/pandora_console/ChangeLog +++ b/pandora_console/ChangeLog @@ -1,3 +1,9 @@ +2013-04-25 Ramon Novoa + + * images/cross_double.png, + godmode/users/user_list.php: Added support to delete users from all + consoles to the metaconsole. Fixes bug #3607619. + 2013-04-25 Miguel de Dios * godmode/events/custom_events.php, diff --git a/pandora_console/godmode/users/user_list.php b/pandora_console/godmode/users/user_list.php index 699867dc6e..98770659b7 100644 --- a/pandora_console/godmode/users/user_list.php +++ b/pandora_console/godmode/users/user_list.php @@ -21,6 +21,7 @@ check_login (); include_once($config['homedir'] . "/include/functions_profile.php"); include_once ($config['homedir'].'/include/functions_users.php'); require_once ($config['homedir'] . '/include/functions_groups.php'); +enterprise_include_once ('include/functions_metaconsole.php'); enterprise_include_once ('meta/include/functions_users_meta.php'); if (! check_acl ($config['id_user'], 0, "UM")) { @@ -135,17 +136,48 @@ if (isset ($_GET["user_del"])) { //delete user if ($result) { users_save_logout($user_row, true); - } - db_pandora_audit("User management", - "Deleted user ".io_safe_input($id_user)); + db_pandora_audit("User management", + __("Deleted user %s", io_safe_input($id_user))); + } ui_print_result_message ($result, __('Successfully deleted'), __('There was a problem deleting the user')); + + // Delete the user in all the consoles + if (defined ('METACONSOLE') && isset ($_GET["delete_all"])) { + + $servers = metaconsole_get_servers(); + foreach ($servers as $server) { + + // Connect to the remote console + metaconsole_connect($server); + + // Delete the user + $result = delete_user ($id_user); + if ($result) { + db_pandora_audit("User management", + __("Deleted user %s from metaconsole", io_safe_input($id_user))); + } + + // Restore the db connection + metaconsole_restore_db(); + + // Log to the metaconsole too + if ($result) { + db_pandora_audit("User management", + __("Deleted user %s from %s", io_safe_input($id_user), io_safe_input($server['server_name']))); + } + ui_print_result_message ($result, + __('Successfully deleted from %s', io_safe_input($server['server_name'])), + __('There was a problem deleting the user from %s', io_safe_input($server['server_name']))); + } + } } - else + else { ui_print_error_message (__('There was a problem deleting the user')); + } } elseif (isset ($_GET["profile_del"])) { //delete profile $id_profile = (int) get_parameter_post ("delete_profile"); @@ -307,6 +339,9 @@ foreach ($info as $user_id => $user_info) { $data[5] .= ''.html_print_image('images/config.png', true, array('title' => __('Edit'))).''; if ($config["admin_can_delete_user"] && $user_info['id_user'] != $config['id_user']) { $data[5] .= "".html_print_image('images/cross.png', true, array ('title' => __('Delete'), 'onclick' => "if (! confirm ('" .__('Deleting User'). " ". $user_info['id_user'] . ". " . __('Are you sure?') ."')) return false")).""; + if (defined('METACONSOLE')) { + $data[5] .= "".html_print_image('images/cross_double.png', true, array ('title' => __('Delete from all consoles'), 'onclick' => "if (! confirm ('" .__('Deleting User %s from all consoles', $user_info['id_user']) . ". " . __('Are you sure?') ."')) return false")).""; + } } else { $data[5] .= ''; //Delete button not in this mode diff --git a/pandora_console/images/cross_double.png b/pandora_console/images/cross_double.png new file mode 100644 index 0000000000000000000000000000000000000000..72c50fbd85ff58b88e6f7660e053b390a62c5784 GIT binary patch literal 730 zcmV<00ww*4P))lVKRgf8Vxdo5jb6&|%ggNODCHtQH-_)Qq8{1p^`QG(2?ZAPSD+iy#JF zx<%wcI&9#;)94UG4<14+`95ssq}p0A6{$v_z4bceQwt033q3uqrKKgjeSNNMD&-c?>kR}vxm*sL&Bn__LI>0Y zWE%w}fGO|^h+GZ^J=si#mP!R9m*czLj$M}7$>((m)DcM5yodnm5G41MCc*avw1mqg zrma>X!eKFOvxzBqKUtf7KToW6fqpnqg}H87Z)7@azo&(LZm+w z@~p3~bJFW|f#tH3LfVch7O-T(jq M07*qoM6N<$f~6Ti)Bpeg literal 0 HcmV?d00001