2013-01-11 Juan Manuel Ramon <juanmanuel.ramon@artica.es>
* include/functions_component_groups.php godmode/modules/manage_network_components.php godmode/modules/manage_nc_groups.php: Added tree format for component groups and make more restrictive filters in local/network components. Merged from branches. git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@7440 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This commit is contained in:
parent
16b3467e5d
commit
7677661126
|
@ -1,3 +1,13 @@
|
||||||
|
2013-01-11 Juan Manuel Ramon <juanmanuel.ramon@artica.es>
|
||||||
|
|
||||||
|
* include/functions_component_groups.php
|
||||||
|
godmode/modules/manage_network_components.php
|
||||||
|
godmode/modules/manage_nc_groups.php: Added tree format for
|
||||||
|
component groups and make more restrictive filters in local/network
|
||||||
|
components.
|
||||||
|
|
||||||
|
Merged from branches.
|
||||||
|
|
||||||
2013-01-11 Sergio Martin <sergio.martin@artica.es>
|
2013-01-11 Sergio Martin <sergio.martin@artica.es>
|
||||||
|
|
||||||
* pandoradb_data.sql
|
* pandoradb_data.sql
|
||||||
|
|
|
@ -27,6 +27,7 @@ if (! check_acl ($config['id_user'], 0, "PM")) {
|
||||||
|
|
||||||
enterprise_include_once ('meta/include/functions_components_meta.php');
|
enterprise_include_once ('meta/include/functions_components_meta.php');
|
||||||
require_once ($config['homedir'] . '/include/functions_network_components.php');
|
require_once ($config['homedir'] . '/include/functions_network_components.php');
|
||||||
|
require_once ($config['homedir'] . '/include/functions_component_groups.php');
|
||||||
|
|
||||||
// Header
|
// Header
|
||||||
if (defined('METACONSOLE')) {
|
if (defined('METACONSOLE')) {
|
||||||
|
@ -97,12 +98,13 @@ if ($update) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($delete) {
|
if ($delete) {
|
||||||
|
$parent_id = db_get_value_filter('parent', 'tnetwork_component_group', array('id_sg' => $id));
|
||||||
|
|
||||||
|
$result1 = db_process_sql_update('tnetwork_component_group', array('parent' => $parent_id), array('parent' => $id));
|
||||||
|
|
||||||
$result = db_process_sql_delete ('tnetwork_component_group',
|
$result = db_process_sql_delete ('tnetwork_component_group',
|
||||||
array ('id_sg' => $id));
|
array ('id_sg' => $id));
|
||||||
|
|
||||||
$result1 = db_process_sql_update('tnetwork_component_group', array('parent' => 0), array('parent' => $id));
|
|
||||||
|
|
||||||
|
|
||||||
if (($result !== false) and ($result1 !== false)) $result = true;
|
if (($result !== false) and ($result1 !== false)) $result = true;
|
||||||
else $result = false;
|
else $result = false;
|
||||||
|
|
||||||
|
@ -170,13 +172,22 @@ $url = ui_get_url_refresh (array ('offset' => false,
|
||||||
|
|
||||||
$filter = array ();
|
$filter = array ();
|
||||||
|
|
||||||
$filter['offset'] = (int) get_parameter ('offset');
|
//$filter['offset'] = (int) get_parameter ('offset');
|
||||||
$filter['limit'] = (int) $config['block_size'];
|
//$filter['limit'] = (int) $config['block_size'];
|
||||||
|
$filter['order'] = 'parent';
|
||||||
|
|
||||||
$groups = db_get_all_rows_filter ('tnetwork_component_group', $filter);
|
$groups = db_get_all_rows_filter ('tnetwork_component_group', $filter);
|
||||||
if ($groups === false)
|
if ($groups === false)
|
||||||
$groups = array ();
|
$groups = array ();
|
||||||
|
|
||||||
|
$groups_clean = array();
|
||||||
|
foreach ($groups as $group_key => $group_val) {
|
||||||
|
$groups_clean[$group_val['id_sg']] = $group_val;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Format component groups in tree form
|
||||||
|
$groups = component_groups_get_groups_tree_recursive($groups_clean,0,0);
|
||||||
|
|
||||||
$table->width = '98%';
|
$table->width = '98%';
|
||||||
$table->head = array ();
|
$table->head = array ();
|
||||||
$table->head[0] = __('Name');
|
$table->head[0] = __('Name');
|
||||||
|
@ -196,12 +207,14 @@ $table->data = array ();
|
||||||
$total_groups = db_get_all_rows_filter ('tnetwork_component_group', false, 'COUNT(*) AS total');
|
$total_groups = db_get_all_rows_filter ('tnetwork_component_group', false, 'COUNT(*) AS total');
|
||||||
$total_groups = $total_groups[0]['total'];
|
$total_groups = $total_groups[0]['total'];
|
||||||
|
|
||||||
ui_pagination ($total_groups, $url);
|
//ui_pagination ($total_groups, $url);
|
||||||
|
|
||||||
foreach ($groups as $group) {
|
foreach ($groups as $group) {
|
||||||
$data = array ();
|
$data = array ();
|
||||||
|
|
||||||
$data[0] = '<a href="index.php?sec='.$sec.'&sec2=godmode/modules/manage_nc_groups&id='.$group['id_sg'].'">'.$group['name'].'</a>';
|
$tabulation = str_repeat(' ', $group['deep']);
|
||||||
|
|
||||||
|
$data[0] = $tabulation . '<a href="index.php?sec=gmodules&sec2=godmode/modules/manage_nc_groups&id='.$group['id_sg'].'">'.$group['name'].'</a>';
|
||||||
|
|
||||||
$data[1] = network_components_get_group_name ($group['parent']);
|
$data[1] = network_components_get_group_name ($group['parent']);
|
||||||
|
|
||||||
|
|
|
@ -405,7 +405,23 @@ $table->style[2] = 'font-weight: bold';
|
||||||
$table->data = array ();
|
$table->data = array ();
|
||||||
|
|
||||||
$table->data[0][0] = __('Group');
|
$table->data[0][0] = __('Group');
|
||||||
$table->data[0][1] = html_print_select (network_components_get_groups (),
|
|
||||||
|
$component_groups = network_components_get_groups ();
|
||||||
|
|
||||||
|
if ($component_groups === false)
|
||||||
|
$component_groups = array();
|
||||||
|
|
||||||
|
foreach ($component_groups as $component_group_key => $component_group_val) {
|
||||||
|
$num_components = db_get_num_rows('SELECT id_nc
|
||||||
|
FROM tnetwork_component
|
||||||
|
WHERE id_group = ' . $component_group_key);
|
||||||
|
|
||||||
|
// Only show component groups with local components
|
||||||
|
if ($num_components == 0)
|
||||||
|
unset($component_groups[$component_group_key]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$table->data[0][1] = html_print_select ($component_groups,
|
||||||
'search_id_group', $search_id_group, '', __('All'), 0, true, false, false);
|
'search_id_group', $search_id_group, '', __('All'), 0, true, false, false);
|
||||||
$table->data[0][2] = __('Search');
|
$table->data[0][2] = __('Search');
|
||||||
$table->data[0][3] = html_print_input_text ('search_string', $search_string, '', 25,
|
$table->data[0][3] = html_print_input_text ('search_string', $search_string, '', 25,
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
<?php
|
||||||
|
// Pandora FMS - http://pandorafms.com
|
||||||
|
// ==================================================
|
||||||
|
// Copyright (c) 2005-2009 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 Lesser General Public License
|
||||||
|
// as published by the Free Software Foundation; 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.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @package Include
|
||||||
|
* @subpackage Component groups
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Format components groups in tree way.
|
||||||
|
*
|
||||||
|
* @param array $groups The list of groups to create the treefield list.
|
||||||
|
* @param integer $parent The id_group of parent actual scan branch.
|
||||||
|
* @param integer $deep The level of profundity in the branch.
|
||||||
|
*
|
||||||
|
* @return array The treefield list of components groups.
|
||||||
|
*/
|
||||||
|
function component_groups_get_groups_tree_recursive($groups, $parent = 0, $deep = 0) {
|
||||||
|
$return = array();
|
||||||
|
|
||||||
|
foreach ($groups as $key => $group) {
|
||||||
|
if ($group['parent'] == $parent) {
|
||||||
|
$group['deep'] = $deep;
|
||||||
|
|
||||||
|
$branch = component_groups_get_groups_tree_recursive($groups, $key, $deep + 1);
|
||||||
|
if (empty($branch)) {
|
||||||
|
$group['hash_branch'] = false;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$group['hash_branch'] = true;
|
||||||
|
}
|
||||||
|
$return = $return + array($key => $group) + $branch;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $return;
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
Loading…
Reference in New Issue