From c83b34089bbb370dfb7e4c006f1a1b4ac2d72ce2 Mon Sep 17 00:00:00 2001 From: mdtrooper Date: Thu, 4 Mar 2010 16:50:48 +0000 Subject: [PATCH] 2010-03-04 Miguel de Dios * include/functions_db.php: in function "get_user_groups" add third parameter $returnAllGroup by true for default. Fix in the function "get_group_agents" now if pass the id_group as 0 or 1 (all group) search for all groups. * godmode/agentes/agent_manager.php: use the new parameter for function "get_user_groups" for don't show the all group. git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2470 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f --- pandora_console/ChangeLog | 10 ++++++++++ pandora_console/godmode/agentes/agent_manager.php | 2 +- pandora_console/include/functions_db.php | 14 +++++++++++--- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/pandora_console/ChangeLog b/pandora_console/ChangeLog index 1ea51cd369..3ff511187e 100644 --- a/pandora_console/ChangeLog +++ b/pandora_console/ChangeLog @@ -1,3 +1,13 @@ +2010-03-04 Miguel de Dios + + * include/functions_db.php: in function "get_user_groups" add third + parameter $returnAllGroup by true for default. Fix in the function + "get_group_agents" now if pass the id_group as 0 or 1 (all group) search + for all groups. + + * godmode/agentes/agent_manager.php: use the new parameter for function + "get_user_groups" for don't show the all group. + 2010-03-04 Sancho Lerena * pandoradb_data.sql: Added news, default timezone and other diff --git a/pandora_console/godmode/agentes/agent_manager.php b/pandora_console/godmode/agentes/agent_manager.php index ab2dbcdc07..a67639d0e5 100644 --- a/pandora_console/godmode/agentes/agent_manager.php +++ b/pandora_console/godmode/agentes/agent_manager.php @@ -137,7 +137,7 @@ $table->data[2][1] = print_input_text_extended ('id_parent', get_agent_name ($id $table->data[2][1] .= print_checkbox ("cascade_protection", 1, $cascade_protection, true).__('Cascade protection'). " " . print_help_icon("cascade_protection", true); $table->data[3][0] = __('Group'); -$groups = get_user_groups (); +$groups = get_user_groups (false, "AR", false); $table->data[3][1] = print_select ($groups, 'grupo', $grupo, '', '', 0, true); $table->data[4][0] = __('Interval'); diff --git a/pandora_console/include/functions_db.php b/pandora_console/include/functions_db.php index 9ff4c6f69f..e7da75ff54 100644 --- a/pandora_console/include/functions_db.php +++ b/pandora_console/include/functions_db.php @@ -397,10 +397,15 @@ function get_group_agents ($id_group = 0, $search = false, $case = "lower", $noA } } - if (is_array($id_group)) + if (is_array($id_group)) { $search_sql = sprintf ('WHERE id_grupo IN (%s)', implode (",", $id_group)); - else + } + else if (($id_group == 1) || ($id_group == 0)) { //All group + $search_sql = 'WHERE 1 = 1'; + } + else { $search_sql = sprintf ('WHERE id_grupo = %d', $id_group); + } if ($search === true) { //No added search. Show both disabled and non-disabled @@ -1351,10 +1356,11 @@ function get_all_model_groups () { * * @param string User id * @param string The privilege to evaluate + * @param boolean $returnAllGroup Flag the return group, by default true. * * @return array A list of the groups the user has certain privileges. */ -function get_user_groups ($id_user = false, $privilege = "AR") { +function get_user_groups ($id_user = false, $privilege = "AR", $returnAllGroup = true) { if (empty ($id_user)) { global $config; $id_user = $config['id_user']; @@ -1369,6 +1375,8 @@ function get_user_groups ($id_user = false, $privilege = "AR") { foreach ($groups as $group) { if (! give_acl ($id_user, $group["id_grupo"], $privilege)) continue; + if ((!$returnAllGroup) && ($group["id_grupo"] == 1)) //All group + continue; $user_groups[$group['id_grupo']] = $group['nombre']; }