From 0808b2bf075f53fe6705a6d1ef5eb46e85456c4b Mon Sep 17 00:00:00 2001 From: enriquecd Date: Thu, 25 Jan 2018 13:46:45 +0100 Subject: [PATCH] Cluster view, change creation and delete agent module method - #1748 --- .../godmode/reporting/cluster_builder.php | 33 ++++++- .../godmode/reporting/cluster_list.php | 22 ++++- .../godmode/reporting/cluster_view_2.php | 91 +++++++++++++++++++ 3 files changed, 138 insertions(+), 8 deletions(-) create mode 100644 pandora_console/godmode/reporting/cluster_view_2.php diff --git a/pandora_console/godmode/reporting/cluster_builder.php b/pandora_console/godmode/reporting/cluster_builder.php index d4ddef0a4d..11fc7376c8 100644 --- a/pandora_console/godmode/reporting/cluster_builder.php +++ b/pandora_console/godmode/reporting/cluster_builder.php @@ -24,6 +24,7 @@ if (! check_acl ($config['id_user'], 0, "RW") && ! check_acl ($config['id_user'] } require_once ('include/functions_agents.php'); +require_once ('include/functions_modules.php'); require_once('include/functions_clusters.php'); $step = get_parameter('step',0); @@ -53,7 +54,9 @@ if ($add_cluster) { if (trim($name) != "") { - $id_agent = db_process_sql_insert('tagente',$values_agent); + // $id_agent = db_process_sql_insert('tagente',$values_agent); + + $id_agent = agents_create_agent($values_agent['nombre'],$values_agent['id_grupo'],300,'127.0.0.1',$values_agent); // Create cluster $values_cluster = array( @@ -75,6 +78,8 @@ if ($add_cluster) { 'custom_integer_1' =>$id_cluster ); + $id_module = modules_create_agent_module($values_module['id_agente'],$values_module['nombre'],$values_module); + $id_module = db_process_sql_insert('tagente_modulo', $values_module); if ($id_cluster !== false) @@ -177,8 +182,11 @@ elseif ($step == 3) { 'custom_integer_2' =>$tcluster_module ); - $id_module = db_process_sql_insert('tagente_modulo', $values_module); + + $id_module = modules_create_agent_module($values_module['id_agente'],$values_module['nombre'],$values_module); + // $id_module = db_process_sql_insert('tagente_modulo', $values_module); + if ($tcluster_module !== false){ db_pandora_audit("Report management", "Module #$value assigned to cluster #$id_cluster"); } @@ -191,7 +199,15 @@ elseif ($step == 3) { foreach ($modules_preasigned as $key => $value) { if(!in_array($value['name'],$cluster_modules)){ - $tcluster_module_delete = db_process_sql('delete from tcluster_item where name = "'.$value['name'].'" and id_cluster = '.$id_cluster); + + $tcluster_agent_module_delete_id = db_process_sql('select id_agente_modulo from tagente_modulo where nombre = "'.$value['name'].'" and custom_integer_1 = '.$id_cluster.' and prediction_module = 6'); + + $tcluster_agent_module_delete_id_value = $tcluster_agent_module_delete_id[0]['id_agente_modulo']; + + $tcluster_agent_module_delete_result = modules_delete_agent_module($tcluster_agent_module_delete_id_value); + + $tcluster_module_delete = db_process_sql('delete from tcluster_item where name = "'.$value['name'].'" and id_cluster = '.$id_cluster.' and item_type = "AA"'); + } } @@ -286,7 +302,9 @@ elseif ($step == 3) { 'custom_integer_2' => $tcluster_balanced_module ); - $id_module = db_process_sql_insert('tagente_modulo', $values_module); + // $id_module = db_process_sql_insert('tagente_modulo', $values_module); + + $id_module = modules_create_agent_module($values_module['id_agente'],$values_module['nombre'],$values_module); if ($tcluster_balanced_module !== false){ db_pandora_audit("Report management", "Module #$value assigned to cluster #$id_cluster"); @@ -300,6 +318,13 @@ elseif ($step == 3) { foreach ($balanced_modules_preasigned as $key => $value) { if(!in_array($value['name'],$balanced_modules)){ + + $tcluster_agent_module_delete_id = db_process_sql('select id_agente_modulo from tagente_modulo where nombre = "'.$value['name'].'" and custom_integer_1 = '.$id_cluster.' and prediction_module = 7'); + + $tcluster_agent_module_delete_id_value = $tcluster_agent_module_delete_id[0]['id_agente_modulo']; + + $tcluster_agent_module_delete_result = modules_delete_agent_module($tcluster_agent_module_delete_id_value); + $tcluster_balanced_module_delete = db_process_sql('delete from tcluster_item where name = "'.$value['name'].'" and id_cluster = '.$id_cluster.' and item_type = "AP"'); } diff --git a/pandora_console/godmode/reporting/cluster_list.php b/pandora_console/godmode/reporting/cluster_list.php index 12f7195d69..25a248408a 100644 --- a/pandora_console/godmode/reporting/cluster_list.php +++ b/pandora_console/godmode/reporting/cluster_list.php @@ -77,7 +77,8 @@ ui_pagination (count($clusters)); foreach ($clusters as $cluster) { $data = array (); - $data[0] = ''.$cluster["name"].''; + $data[0] = ''.$cluster["name"].' - Enlace Map Dani (Mapa de red)

'. + ''.$cluster["name"].' - Enlace Enrique (pantalla informativa)'; $data[1] = ui_print_truncate_text($cluster["description"], 70); $data[2] = ui_print_group_icon($cluster['group'],true); @@ -88,19 +89,32 @@ ui_pagination (count($clusters)); $data[4] = $nodes_cluster[0]['number']; + //agent status - open + $cluster_agent = db_process_sql('select id_agente from tagente where id_agente = (select id_agent from tcluster where id = '.$cluster['id'].')'); $cluster_agent_status = agents_get_status($cluster_agent[0]['id_agente']); - switch ($cluster_agent_status) { + //agent status - close + + + //cluster module status - open + + $cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where id_agente = (select id_agent from tcluster where id = '.$cluster['id'].') and nombre = "Cluster status"'); + + $cluster_module_status = modules_get_status($cluster_module[0]['id_agente_modulo']); + + //cluster module status - close + + switch ($cluster_module_status) { case 1: $data[5] = '
'; break; - case 1: + case 2: - $data[5] = '
'; + $data[5] = '
'; break; case 3: diff --git a/pandora_console/godmode/reporting/cluster_view_2.php b/pandora_console/godmode/reporting/cluster_view_2.php new file mode 100644 index 0000000000..e1c9846f5b --- /dev/null +++ b/pandora_console/godmode/reporting/cluster_view_2.php @@ -0,0 +1,91 @@ + false, + 'text' => '' . + html_print_image("images/list.png", true, array ("title" => __('Clusters list'))) .''); + + +$buttons['editor'] = array('active' => false, + 'text' => '' . + html_print_image("images/gm_setup.png", true, array ("title" => __('Cluster editor'))) .''); + + +ui_print_page_header ( __("Cluster detail").' ยป '.clusters_get_name($id_cluster), "images/agent_mc.png", false, "agent_status", false, $buttons); + + + +echo ""; + echo ""; + + echo ""; + + + + + echo ""; + + echo ""; + + echo ""; + echo ""; + echo ""; +echo "
"; + echo "
"; + echo "
"; + + echo "
"; + + echo "
".__('CLUSTER STATUS')."
"; + echo "
"; + + echo "
"; + + echo "
".__('Balanced modules')."
"; + + echo "
"; + + $balanced_modules_in = items_get_cluster_items_id_name($id_cluster,'AP'); + + html_debug($balanced_modules_in); + + echo "
"; + + echo "
"; + + echo "
"; + + echo "
"; + // + // echo "
".__('LAST UPDATE')."
"; + // echo "
88 Hours 88 Min 88 sec ago
"; + + echo "
"; + + + + + + echo "
+
+
"; + + +echo 'El estado del modulo del cluster '.clusters_get_name($id_cluster).' es '.agents_get_status(40); + +?> \ No newline at end of file