Added clustermap
This commit is contained in:
parent
95ff0e5d2a
commit
13884a44d6
|
@ -12,7 +12,9 @@ if (! check_acl ($config['id_user'], 0, "AR")) {
|
||||||
}
|
}
|
||||||
|
|
||||||
require_once ('include/functions_agents.php');
|
require_once ('include/functions_agents.php');
|
||||||
require_once('include/functions_clusters.php');
|
require_once ('include/functions_modules.php');
|
||||||
|
require_once ('include/functions_clusters.php');
|
||||||
|
require_once ('enterprise/include/functions_clustermap.php');
|
||||||
|
|
||||||
$id_cluster = get_parameter('id',0);
|
$id_cluster = get_parameter('id',0);
|
||||||
|
|
||||||
|
@ -28,49 +30,525 @@ $buttons['editor'] = array('active' => false,
|
||||||
|
|
||||||
ui_print_page_header ( __("Cluster detail").' » '.clusters_get_name($id_cluster), "images/agent_mc.png", false, "agent_status", false, $buttons);
|
ui_print_page_header ( __("Cluster detail").' » '.clusters_get_name($id_cluster), "images/agent_mc.png", false, "agent_status", false, $buttons);
|
||||||
|
|
||||||
|
$font_size = 10;
|
||||||
|
$width = "100%";
|
||||||
|
$height = "600";
|
||||||
|
$node_radius = 40;
|
||||||
|
$baseurl = ui_get_full_url(false, false, false, false);
|
||||||
|
|
||||||
echo "<table style='width:100%;'>";
|
echo "<table style='width:100%;'>";
|
||||||
echo "<tr>";
|
echo "<tr>";
|
||||||
|
|
||||||
echo "<td style='border:1px solid black;min-width:800px;min-height:800px;vertical-align: top;'>";
|
$cluster_type = clusters_get_cluster_id_type($id_cluster);
|
||||||
echo "<div id='cluster_map' style='width:600px;height:600px;'></div>";
|
|
||||||
|
|
||||||
|
if($cluster_type[$id_cluster] == 'AP'){
|
||||||
|
|
||||||
|
echo "<td style='border:1px solid black;min-width:900px;min-height:500px;vertical-align: top;width:55%;'>";
|
||||||
|
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
|
||||||
|
echo "<td style='border:1px solid black;min-width:1200px;min-height:500px;vertical-align: top;width:55%;'>";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "<div id='cluster_map' style='min-width:900px;width:100%;height:500px;'>";
|
||||||
|
echo '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" pointer-events="all" width="' . $width . '" height="' . $height . 'px">';
|
||||||
|
|
||||||
|
echo '</svg></div>';
|
||||||
echo "</td>";
|
echo "</td>";
|
||||||
|
|
||||||
echo "<td style='min-width:600px;min-height:600px;vertical-align: top;'>";
|
echo "<td style='width:45%;min-width:390px;min-height:500px;vertical-align: top;'>";
|
||||||
|
|
||||||
echo "<div style='width:50%;background-color:red;float:left;'>";
|
echo "<div style='width:50%;min-width:390px;float:left;'>";
|
||||||
//
|
|
||||||
// echo "<div style='float:left;width:100px;margin-left:20px;margin-top:20px;font-size:2em;text-align:center;'>".__('CLUSTER STATUS')."</div>";
|
echo "<div style='float:left;width:100px;margin-left:25px;margin-top:25px;font-size:2em;text-align:center;'>".__('CLUSTER STATUS')."</div>";
|
||||||
// echo "<div style='float:left;width:100px;margin-left:50px;margin-top:20px;height:50px;background-color:#82b92e;'></div>";
|
|
||||||
//
|
$cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where id_agente = (select id_agent from tcluster where id = '.$id_cluster.') and nombre = "Cluster status"');
|
||||||
// echo "<div style='float:left;width:300px;margin-left:50px;margin-top:20px;height:400px;background-color:#82b92e;'></div>";
|
|
||||||
|
$cluster_module_status = modules_get_agentmodule_last_status($cluster_module[0]['id_agente_modulo']);
|
||||||
|
|
||||||
|
switch ($cluster_module_status) {
|
||||||
|
case 1:
|
||||||
|
|
||||||
|
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
||||||
|
|
||||||
|
<div class='status_animation' style='position:relative;width:100px;background-color:red;'></div>
|
||||||
|
|
||||||
|
</div>";
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
|
||||||
|
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
||||||
|
|
||||||
|
<div class='status_animation' style='position:relative;width:100px;background-color:yellow;'></div>
|
||||||
|
|
||||||
|
</div>";
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
|
||||||
|
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
||||||
|
|
||||||
|
<div class='status_animation' style='position:relative;width:100px;background-color:blue;'></div>
|
||||||
|
|
||||||
|
</div>";
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
|
||||||
|
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
||||||
|
|
||||||
|
<div class='status_animation' style='position:relative;width:100px;background-color:gray;'></div>
|
||||||
|
|
||||||
|
</div>";
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
|
||||||
|
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
||||||
|
|
||||||
|
<div class='status_animation' style='position:relative;width:100px;background-color:blue;'></div>
|
||||||
|
|
||||||
|
</div>";
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 0:
|
||||||
|
|
||||||
|
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
||||||
|
|
||||||
|
<div class='status_animation' style='position:relative;width:100px;background-color:green;'></div>
|
||||||
|
|
||||||
|
</div>";
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if($cluster_type[$id_cluster] == 'AP'){
|
||||||
|
|
||||||
|
|
||||||
|
echo "<div style='border:1px solid lightgray;float:left;min-width:350px;width:350px;margin-left:20px;margin-right:20px;margin-top:20px;height:200px;margin-bottom:20px;'>";
|
||||||
|
|
||||||
|
echo "<div style='float:left;width:100%;height:25px;background-color:#373737;text-align:center;'><span style='color:#e7e9ea;display:block;margin:5px;font-size:1.5em;'>".__('Balanced modules')."</span></div>";
|
||||||
|
|
||||||
|
echo "<div style='float:left;width:100%;height:175px;text-align:center;overflow-y:auto;overflow-x:hidden;'>";
|
||||||
|
|
||||||
|
$balanced_modules_in = items_get_cluster_items_id_name($id_cluster,'AP');
|
||||||
|
|
||||||
|
foreach ($balanced_modules_in as $key => $value) {
|
||||||
|
$cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where custom_integer_2 = '.$key);
|
||||||
|
|
||||||
|
$cluster_module_status = modules_get_agentmodule_last_status($cluster_module[0]['id_agente_modulo']);
|
||||||
|
|
||||||
|
echo "<div style='float:left;margin-left:20px;margin-top:10px;width:330px;'>";
|
||||||
|
|
||||||
|
if($cluster_module_status == 5){
|
||||||
|
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/exito.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/error_1.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '</div>';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "</div>";
|
||||||
|
|
||||||
|
echo "</div>";
|
||||||
|
|
||||||
echo "</div>";
|
echo "</div>";
|
||||||
|
|
||||||
echo "<div style='width:50%;background-color:blue;float:right;'>";
|
}
|
||||||
//
|
|
||||||
// echo "<div style='float:left;width:100px;px;margin-top:20px;font-size:2em;text-align:center;'>".__('LAST UPDATE')."</div>";
|
|
||||||
// echo "<div style='float:left;width:220px;margin-left:20px;margin-top:30px;font-size:1.5em;text-align:center;'>88 Hours 88 Min 88 sec ago</div>";
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
echo "<div style='width:50%;min-width:390px;max-width:390px;float:left;'>";
|
||||||
|
|
||||||
|
$last_update = db_process_sql('select timestamp from tagente_estado where id_agente_modulo = '.$cluster_module[0]['id_agente_modulo']);
|
||||||
|
|
||||||
|
$last_update_value = $last_update[0]['timestamp'];
|
||||||
|
|
||||||
|
echo "<div style='float:left;width:100px;px;margin-left:20px;margin-top:25px;font-size:2em;text-align:center;'>".__('LAST UPDATE')."</div>";
|
||||||
|
echo "<div style='float:left;width:220px;margin-left:20px;margin-top:40px;font-size:1.5em;text-align:center;'>".$last_update_value."</div>";
|
||||||
|
|
||||||
|
echo "<div style='border:1px solid lightgray;float:left;width:350px;margin-left:20px;margin-right:20px;margin-top:20px;height:200px;margin-bottom:20px;'>";
|
||||||
|
|
||||||
|
echo "<div style='float:left;width:100%;height:25px;background-color:#373737;text-align:center;'><span style='color:#e7e9ea;display:block;margin:5px;font-size:1.5em;'>".__('Common modules')."</span></div>";
|
||||||
|
|
||||||
|
echo "<div style='float:left;width:100%;height:175px;text-align:center;overflow-y:auto;overflow-x:hidden;'>";
|
||||||
|
|
||||||
|
$modules_in = items_get_cluster_items_id_name($id_cluster,'AA');
|
||||||
|
|
||||||
|
foreach ($modules_in as $key => $value) {
|
||||||
|
$cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where custom_integer_2 = '.$key);
|
||||||
|
|
||||||
|
$cluster_module_status = modules_get_agentmodule_last_status($cluster_module[0]['id_agente_modulo']);
|
||||||
|
|
||||||
|
echo "<div style='float:left;margin-left:20px;margin-top:10px;width:330px;'>";
|
||||||
|
|
||||||
|
if($cluster_module_status == 5){
|
||||||
|
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/exito.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/error_1.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '</div>';
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "</div>";
|
||||||
|
|
||||||
|
echo "</div>";
|
||||||
|
|
||||||
|
echo "</div>";
|
||||||
|
|
||||||
|
|
||||||
|
echo "<div style='width:100%;height:140px;min-width:390px;max-width:780px;float:left;margin-top:50px;'>";
|
||||||
|
|
||||||
|
$id_agent = db_process_sql('select id_agent from tcluster where id = '.$id_cluster);
|
||||||
|
|
||||||
|
$id_agent_value = $id_agent[0]['id_agent'];
|
||||||
|
|
||||||
|
$table = new stdClass();
|
||||||
|
$table->id = 'agent_details';
|
||||||
|
$table->width = '100%';
|
||||||
|
$table->cellspacing = 0;
|
||||||
|
$table->cellpadding = 0;
|
||||||
|
$table->class = 'agents';
|
||||||
|
$table->style = array_fill(0, 3, 'vertical-align: top;');
|
||||||
|
|
||||||
|
$data = array();
|
||||||
|
$data[0][0] = html_print_table($table_agent, true);
|
||||||
|
$data[0][0] .=
|
||||||
|
'<br /> <table width=90% class="databox agente" style="margin-left:5%;">
|
||||||
|
<tr><th>' .
|
||||||
|
__('Events (24h)') .
|
||||||
|
'</th></tr>' .
|
||||||
|
'<tr><td style="text-align:center;padding-left:20px;padding-right:20px;"><br />' .
|
||||||
|
graph_graphic_agentevents ($id_agent_value, 450, 40, SECONDS_1DAY, '', true, true) .
|
||||||
|
'<br /></td></tr>' .
|
||||||
|
'</table>';
|
||||||
|
|
||||||
|
$table->style[0] = 'width:100%; vertical-align:top;';
|
||||||
|
$data[0][1] = html_print_table($table_contact, true);
|
||||||
|
$data[0][1] .= empty($table_data->data) ?
|
||||||
|
'' :
|
||||||
|
'<br>' . html_print_table($table_data, true);
|
||||||
|
$data[0][1] .= !isset($table_incident) ?
|
||||||
|
'' :
|
||||||
|
'<br>' . html_print_table($table_incident, true);
|
||||||
|
|
||||||
|
$table->rowspan[1][0] = 0;
|
||||||
|
|
||||||
|
$table->data = $data;
|
||||||
|
$table->rowclass[] = '';
|
||||||
|
|
||||||
|
$table->cellstyle[1][0] = 'text-align:center;';
|
||||||
|
|
||||||
|
html_print_table($table);
|
||||||
|
$data2[1][0] = !isset($table_interface) ?
|
||||||
|
'' :
|
||||||
|
html_print_table($table_interface, true);
|
||||||
|
$table->data = $data2;
|
||||||
|
$table->styleTable = '';
|
||||||
|
html_print_table($table);
|
||||||
|
|
||||||
|
unset($table);
|
||||||
|
|
||||||
|
echo "</div>";
|
||||||
|
|
||||||
|
|
||||||
echo "</td>";
|
echo "</td>";
|
||||||
|
|
||||||
echo "</tr>";
|
echo "</tr>";
|
||||||
|
|
||||||
echo "<tr>";
|
echo "<tr>";
|
||||||
echo "<td colspan='2' style='min-width:600px;min-height:600px;vertical-align: top;'>
|
echo "<td colspan='2' style='min-width:400px;min-height:600px;vertical-align: top;'>";
|
||||||
<div id='cluster_modules' style='min-height:150px;'></div>
|
echo "<div id='module_list' style='min-height:150px;margin-top:20px;'>";
|
||||||
</td>";
|
echo "</div>";
|
||||||
|
echo "</td>";
|
||||||
echo "</tr>";
|
echo "</tr>";
|
||||||
echo "</table>";
|
echo "</table>";
|
||||||
|
|
||||||
|
$id_agent = db_process_sql('select id_agent from tcluster where id = '.$id_cluster);
|
||||||
|
|
||||||
echo 'El estado del modulo del cluster '.clusters_get_name($id_cluster).' es '.agents_get_status(40);
|
$id_agent_value = $id_agent[0]['id_agent'];
|
||||||
|
|
||||||
?>
|
|
||||||
|
ui_require_css_file ('cluetip');
|
||||||
|
ui_require_jquery_file ('cluetip');
|
||||||
|
|
||||||
|
echo "<div id='module_details_dialog' style='display: none;'></div>";
|
||||||
|
|
||||||
|
ui_include_time_picker();
|
||||||
|
ui_require_jquery_file("ui.datepicker-" . get_user_language(), "include/javascript/i18n/");
|
||||||
|
|
||||||
|
|
||||||
|
$layout = "fdp";
|
||||||
|
|
||||||
|
$graph = cluster_create_map($layout, $font_size, $zoom , $id_cluster);
|
||||||
|
|
||||||
|
if ($graph === false) {
|
||||||
|
ui_print_error_message (__('Map could not be generated'));
|
||||||
|
echo '<div class="nf">' . __('No agents found') . '</div>';
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Generate image and map
|
||||||
|
// If image was generated just a few minutes ago, then don't regenerate (it takes long) unless regen checkbox is set
|
||||||
|
$filename_map = safe_url_extraclean ($config["attachment_store"])."/vmware_map_" . $config['id_user'];
|
||||||
|
$filename_img = "attachment/vmware_map_" . $config['id_user'];
|
||||||
|
$filename_dot = safe_url_extraclean ($config["attachment_store"])."/vmware_map_" . $config['id_user'];
|
||||||
|
|
||||||
|
$filename_map .= ".map";
|
||||||
|
$filename_img .= ".png";
|
||||||
|
$filename_dot .= ".dot";
|
||||||
|
|
||||||
|
$filename_plain = sys_get_temp_dir() . "/plain.txt";
|
||||||
|
|
||||||
|
file_put_contents($filename_dot, $graph);
|
||||||
|
|
||||||
|
$cmd = "$layout -Tcmapx -o".$filename_map." -Tplain -o".$filename_plain." ".$filename_dot;
|
||||||
|
|
||||||
|
system ($cmd);
|
||||||
|
|
||||||
|
unlink($filename_dot);
|
||||||
|
|
||||||
|
$nodes = cluster_loadfile($filename_plain, $graph);
|
||||||
|
|
||||||
|
|
||||||
|
foreach ($nodes['nodes'] as $key => $node) {
|
||||||
|
if ($node['id'] !== '1') {
|
||||||
|
$sql_AP = "SELECT am.nombre, am.id_agente_modulo, am.post_process, ae.datos, ae.estado FROM tagente_modulo am
|
||||||
|
INNER JOIN tagente_estado ae ON am.id_agente_modulo = ae.id_agente_modulo
|
||||||
|
WHERE nombre IN (SELECT name FROM tcluster_item WHERE id_cluster = $id_cluster AND item_type like 'AP') AND am.id_agente = $node[id_agent]";
|
||||||
|
|
||||||
|
$modules_AP = db_get_all_rows_sql ($sql_AP);
|
||||||
|
|
||||||
|
if ($modules_AP) {
|
||||||
|
$nodes['nodes'][$key]['passive'] = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var controller_map = null;
|
||||||
|
<?php
|
||||||
|
echo "var nodes = " . json_encode($nodes['nodes']) . ";";
|
||||||
|
echo "var arrows = " . json_encode($nodes['arrows']) . ";";
|
||||||
|
echo "var id_cluster = " . json_encode($id_cluster) . ";";
|
||||||
|
echo "var height = " . json_encode($height) . ";";
|
||||||
|
echo "var node_radius = " . json_encode($node_radius) . ";";
|
||||||
|
echo "var font_size = " . json_encode($font_size) . ";";
|
||||||
|
echo "var homedir = " . json_encode($baseurl) . ";";
|
||||||
|
?>
|
||||||
|
</script>
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$requires_js = array();
|
||||||
|
$requires_js[] = "include/javascript/d3.3.5.14.js";
|
||||||
|
$requires_js[] = "enterprise/include/javascript/ClusterMapController.js";
|
||||||
|
$requires_js[] = "enterprise/include/javascript/tooltipster.bundle.min.js";
|
||||||
|
$requires_js[] = "include/javascript/jquery.svg.js";
|
||||||
|
$requires_js[] = "include/javascript/jquery.svgdom.js";
|
||||||
|
|
||||||
|
foreach ($requires_js as $js) {
|
||||||
|
echo "<script type='text/javascript' src='$js'></script>" . "\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '<link rel="stylesheet" type="text/css" href="' . $baseurl . 'enterprise/include/styles/tooltipster.bundle.min.css" />' . "\n";
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
|
||||||
|
function pagination_list_modules() {
|
||||||
|
var parameters = {};
|
||||||
|
|
||||||
|
parameters["list_modules"] = 1;
|
||||||
|
parameters["id_agente"] = <?php echo $id_agent_value; ?>;
|
||||||
|
parameters["filter_monitors"] = 0;
|
||||||
|
parameters["monitors_change_filter"] = 0;
|
||||||
|
parameters["page"] = "include/ajax/module";
|
||||||
|
|
||||||
|
|
||||||
|
$("#module_list").empty();
|
||||||
|
$("#module_list_loading").show();
|
||||||
|
|
||||||
|
|
||||||
|
jQuery.ajax ({
|
||||||
|
data: parameters,
|
||||||
|
type: 'POST',
|
||||||
|
url: "ajax.php",
|
||||||
|
dataType: 'html',
|
||||||
|
success: function (data) {
|
||||||
|
$("#module_list_loading").hide();
|
||||||
|
|
||||||
|
$("#module_list").empty();
|
||||||
|
$("#module_list").html(data);
|
||||||
|
$('.forced_title[alt=Force]').css('display','none');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$("a.tag_details").cluetip ({
|
||||||
|
arrows: true,
|
||||||
|
clickThrough: false,
|
||||||
|
attribute: 'href',
|
||||||
|
cluetipClass: 'default'
|
||||||
|
});
|
||||||
|
$("a.relations_details").cluetip ({
|
||||||
|
width: 500,
|
||||||
|
arrows: true,
|
||||||
|
clickThrough: false,
|
||||||
|
attribute: 'href',
|
||||||
|
cluetipClass: 'default',
|
||||||
|
sticky: true,
|
||||||
|
mouseOutClose: 'both',
|
||||||
|
closeText: '<?php html_print_image("images/cancel.png") ?>'
|
||||||
|
});
|
||||||
|
|
||||||
|
// Show the modal window of an module
|
||||||
|
function show_module_detail_dialog(module_id, id_agent, server_name, offset, period,module_name) {
|
||||||
|
var server_name = '';
|
||||||
|
var extra_parameters = '';
|
||||||
|
if ($('input[name=selection_mode]:checked').val()) {
|
||||||
|
|
||||||
|
period = $('#period').val();
|
||||||
|
|
||||||
|
var selection_mode = $('input[name=selection_mode]:checked').val();
|
||||||
|
var date_from = $('#text-date_from').val();
|
||||||
|
var time_from = $('#text-time_from').val();
|
||||||
|
var date_to = $('#text-date_to').val();
|
||||||
|
var time_to = $('#text-time_to').val();
|
||||||
|
|
||||||
|
extra_parameters = '&selection_mode=' + selection_mode + '&date_from=' + date_from + '&date_to=' + date_to + '&time_from=' + time_from + '&time_to=' + time_to;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get the free text in both options
|
||||||
|
var freesearch = $('#text-freesearch').val();
|
||||||
|
if (freesearch != null && freesearch !== '') {
|
||||||
|
var free_checkbox = $('input[name=free_checkbox]:checked').val();
|
||||||
|
extra_parameters += '&freesearch=' + freesearch;
|
||||||
|
if (free_checkbox == 1) {
|
||||||
|
extra_parameters += '&free_checkbox=1';
|
||||||
|
} else {
|
||||||
|
extra_parameters += '&free_checkbox=0';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
title = <?php echo "\"" . __("Module: ") . "\"" ?>;
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "<?php echo ui_get_full_url('ajax.php', false, false, false); ?>",
|
||||||
|
data: "page=include/ajax/module&get_module_detail=1&server_name="+server_name+"&id_agent="+id_agent+"&id_module=" + module_id+"&offset="+offset+"&period="+period + extra_parameters,
|
||||||
|
dataType: "html",
|
||||||
|
success: function(data) {
|
||||||
|
$("#module_details_dialog").hide ()
|
||||||
|
.empty ()
|
||||||
|
.append (data)
|
||||||
|
.dialog ({
|
||||||
|
resizable: true,
|
||||||
|
draggable: true,
|
||||||
|
modal: true,
|
||||||
|
title: title + module_name,
|
||||||
|
overlay: {
|
||||||
|
opacity: 0.5,
|
||||||
|
background: "black"
|
||||||
|
},
|
||||||
|
width: 650,
|
||||||
|
height: 500
|
||||||
|
})
|
||||||
|
.show ();
|
||||||
|
refresh_pagination_callback (module_id, id_agent, "",module_name);
|
||||||
|
datetime_picker_callback();
|
||||||
|
forced_title_callback();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function datetime_picker_callback() {
|
||||||
|
|
||||||
|
$("#text-time_from, #text-time_to").timepicker({
|
||||||
|
showSecond: true,
|
||||||
|
timeFormat: '<?php echo TIME_FORMAT_JS; ?>',
|
||||||
|
timeOnlyTitle: '<?php echo __('Choose time');?>',
|
||||||
|
timeText: '<?php echo __('Time');?>',
|
||||||
|
hourText: '<?php echo __('Hour');?>',
|
||||||
|
minuteText: '<?php echo __('Minute');?>',
|
||||||
|
secondText: '<?php echo __('Second');?>',
|
||||||
|
currentText: '<?php echo __('Now');?>',
|
||||||
|
closeText: '<?php echo __('Close');?>'});
|
||||||
|
|
||||||
|
$("#text-date_from, #text-date_to").datepicker({dateFormat: "<?php echo DATE_FORMAT_JS; ?>"});
|
||||||
|
|
||||||
|
$.datepicker.setDefaults($.datepicker.regional[ "<?php echo get_user_language(); ?>"]);
|
||||||
|
}
|
||||||
|
datetime_picker_callback();
|
||||||
|
|
||||||
|
function refresh_pagination_callback (module_id, id_agent, server_name,module_name) {
|
||||||
|
$(".binary_dialog").click( function() {
|
||||||
|
|
||||||
|
var classes = $(this).attr('class');
|
||||||
|
classes = classes.split(' ');
|
||||||
|
var offset_class = classes[2];
|
||||||
|
offset_class = offset_class.split('_');
|
||||||
|
var offset = offset_class[1];
|
||||||
|
|
||||||
|
var period = $('#period').val();
|
||||||
|
|
||||||
|
show_module_detail_dialog(module_id, id_agent, server_name, offset, period,module_name);
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
$('.tooltip').tooltipster();
|
||||||
|
var controller = null
|
||||||
|
$(function() {
|
||||||
|
controller = new ClusterMapController("#cluster_map");
|
||||||
|
|
||||||
|
controller.init_map();
|
||||||
|
});
|
||||||
|
pagination_list_modules();
|
||||||
|
|
||||||
|
$( ".status_animation" ).css({'height':'5px','top':'0px'});
|
||||||
|
|
||||||
|
$( ".status_animation" ).animate({
|
||||||
|
top: "45px"
|
||||||
|
}, 500, 'linear', function() {
|
||||||
|
|
||||||
|
$( ".status_animation" ).css({'height':'5px','top':'0px'});
|
||||||
|
|
||||||
|
$( ".status_animation" ).animate({
|
||||||
|
top: "45px"
|
||||||
|
}, 500, 'linear', function() {
|
||||||
|
|
||||||
|
$( ".status_animation" ).css({'height':'0px','top':'25px'});
|
||||||
|
|
||||||
|
$( ".status_animation" ).animate({
|
||||||
|
top: "0px",
|
||||||
|
height: "50px"
|
||||||
|
}, 500, 'linear', function() {
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
|
@ -1,462 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
check_login ();
|
|
||||||
|
|
||||||
if (! check_acl ($config['id_user'], 0, "AR")) {
|
|
||||||
db_pandora_audit("ACL Violation", "Trying to access agent main list view");
|
|
||||||
require ("general/noaccess.php");
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
require_once ('include/functions_agents.php');
|
|
||||||
require_once ('include/functions_modules.php');
|
|
||||||
require_once('include/functions_clusters.php');
|
|
||||||
|
|
||||||
$id_cluster = get_parameter('id',0);
|
|
||||||
|
|
||||||
$buttons['list'] = array('active' => false,
|
|
||||||
'text' => '<a href="index.php?sec=estado&sec2=enterprise/operation/cluster/cluster">' .
|
|
||||||
html_print_image("images/list.png", true, array ("title" => __('Clusters list'))) .'</a>');
|
|
||||||
|
|
||||||
|
|
||||||
$buttons['editor'] = array('active' => false,
|
|
||||||
'text' => '<a href="index.php?sec=estado&sec2=godmode/reporting/cluster_builder.cluster_editor&id='.$id_cluster.'">' .
|
|
||||||
html_print_image("images/gm_setup.png", true, array ("title" => __('Cluster editor'))) .'</a>');
|
|
||||||
|
|
||||||
|
|
||||||
ui_print_page_header ( __("Cluster detail").' » '.clusters_get_name($id_cluster), "images/agent_mc.png", false, "agent_status", false, $buttons);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo "<table style='width:100%;'>";
|
|
||||||
echo "<tr>";
|
|
||||||
|
|
||||||
$cluster_type = clusters_get_cluster_id_type($id_cluster);
|
|
||||||
|
|
||||||
|
|
||||||
if($cluster_type[$id_cluster] == 'AP'){
|
|
||||||
|
|
||||||
echo "<td style='border:1px solid black;min-width:900px;min-height:500px;vertical-align: top;width:55%;'>";
|
|
||||||
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
|
|
||||||
echo "<td style='border:1px solid black;min-width:1200px;min-height:500px;vertical-align: top;width:55%;'>";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "<div id='cluster_map' style='min-width:900px;width:100%;height:500px;'></div>";
|
|
||||||
echo "</td>";
|
|
||||||
|
|
||||||
echo "<td style='width:45%;min-width:390px;min-height:500px;vertical-align: top;'>";
|
|
||||||
|
|
||||||
echo "<div style='width:50%;min-width:390px;float:left;'>";
|
|
||||||
|
|
||||||
echo "<div style='float:left;width:100px;margin-left:25px;margin-top:25px;font-size:2em;text-align:center;'>".__('CLUSTER STATUS')."</div>";
|
|
||||||
|
|
||||||
$cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where id_agente = (select id_agent from tcluster where id = '.$id_cluster.') and nombre = "Cluster status"');
|
|
||||||
|
|
||||||
$cluster_module_status = modules_get_agentmodule_last_status($cluster_module[0]['id_agente_modulo']);
|
|
||||||
|
|
||||||
switch ($cluster_module_status) {
|
|
||||||
case 1:
|
|
||||||
|
|
||||||
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
|
||||||
|
|
||||||
<div class='status_animation' style='position:relative;width:100px;background-color:red;'></div>
|
|
||||||
|
|
||||||
</div>";
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
|
|
||||||
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
|
||||||
|
|
||||||
<div class='status_animation' style='position:relative;width:100px;background-color:yellow;'></div>
|
|
||||||
|
|
||||||
</div>";
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
|
|
||||||
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
|
||||||
|
|
||||||
<div class='status_animation' style='position:relative;width:100px;background-color:blue;'></div>
|
|
||||||
|
|
||||||
</div>";
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
|
|
||||||
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
|
||||||
|
|
||||||
<div class='status_animation' style='position:relative;width:100px;background-color:gray;'></div>
|
|
||||||
|
|
||||||
</div>";
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
|
|
||||||
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
|
||||||
|
|
||||||
<div class='status_animation' style='position:relative;width:100px;background-color:blue;'></div>
|
|
||||||
|
|
||||||
</div>";
|
|
||||||
|
|
||||||
break;
|
|
||||||
case 0:
|
|
||||||
|
|
||||||
echo "<div style='border:3px gray groove;float:left;width:100px;margin-left:20px;margin-top:20px;height:50px;'>
|
|
||||||
|
|
||||||
<div class='status_animation' style='position:relative;width:100px;background-color:green;'></div>
|
|
||||||
|
|
||||||
</div>";
|
|
||||||
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if($cluster_type[$id_cluster] == 'AP'){
|
|
||||||
|
|
||||||
|
|
||||||
echo "<div style='border:1px solid lightgray;float:left;min-width:350px;width:350px;margin-left:20px;margin-right:20px;margin-top:20px;height:200px;margin-bottom:20px;'>";
|
|
||||||
|
|
||||||
echo "<div style='float:left;width:100%;height:25px;background-color:#373737;text-align:center;'><span style='color:#e7e9ea;display:block;margin:5px;font-size:1.5em;'>".__('Balanced modules')."</span></div>";
|
|
||||||
|
|
||||||
echo "<div style='float:left;width:100%;height:175px;text-align:center;overflow-y:auto;overflow-x:hidden;'>";
|
|
||||||
|
|
||||||
$balanced_modules_in = items_get_cluster_items_id_name($id_cluster,'AP');
|
|
||||||
|
|
||||||
foreach ($balanced_modules_in as $key => $value) {
|
|
||||||
$cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where custom_integer_2 = '.$key);
|
|
||||||
|
|
||||||
$cluster_module_status = modules_get_agentmodule_last_status($cluster_module[0]['id_agente_modulo']);
|
|
||||||
|
|
||||||
echo "<div style='float:left;margin-left:20px;margin-top:10px;width:330px;'>";
|
|
||||||
|
|
||||||
if($cluster_module_status == 5){
|
|
||||||
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/exito.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/error_1.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
|
||||||
}
|
|
||||||
|
|
||||||
echo '</div>';
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
echo "<div style='width:50%;min-width:390px;max-width:390px;float:left;'>";
|
|
||||||
|
|
||||||
$last_update = db_process_sql('select timestamp from tagente_estado where id_agente_modulo = '.$cluster_module[0]['id_agente_modulo']);
|
|
||||||
|
|
||||||
$last_update_value = $last_update[0]['timestamp'];
|
|
||||||
|
|
||||||
echo "<div style='float:left;width:100px;px;margin-left:20px;margin-top:25px;font-size:2em;text-align:center;'>".__('LAST UPDATE')."</div>";
|
|
||||||
echo "<div style='float:left;width:220px;margin-left:20px;margin-top:40px;font-size:1.5em;text-align:center;'>".$last_update_value."</div>";
|
|
||||||
|
|
||||||
echo "<div style='border:1px solid lightgray;float:left;width:350px;margin-left:20px;margin-right:20px;margin-top:20px;height:200px;margin-bottom:20px;'>";
|
|
||||||
|
|
||||||
echo "<div style='float:left;width:100%;height:25px;background-color:#373737;text-align:center;'><span style='color:#e7e9ea;display:block;margin:5px;font-size:1.5em;'>".__('Common modules')."</span></div>";
|
|
||||||
|
|
||||||
echo "<div style='float:left;width:100%;height:175px;text-align:center;overflow-y:auto;overflow-x:hidden;'>";
|
|
||||||
|
|
||||||
$modules_in = items_get_cluster_items_id_name($id_cluster,'AA');
|
|
||||||
|
|
||||||
foreach ($modules_in as $key => $value) {
|
|
||||||
$cluster_module = db_process_sql('select id_agente_modulo from tagente_modulo where custom_integer_2 = '.$key);
|
|
||||||
|
|
||||||
$cluster_module_status = modules_get_agentmodule_last_status($cluster_module[0]['id_agente_modulo']);
|
|
||||||
|
|
||||||
echo "<div style='float:left;margin-left:20px;margin-top:10px;width:330px;'>";
|
|
||||||
|
|
||||||
if($cluster_module_status == 5){
|
|
||||||
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/exito.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
echo '<div style="float:left;"><img style="width:18px;height:18px;margin-right:5px;vertical-align:middle;" src="images/error_1.png">'.ui_print_truncate_text($value, 40,false).'</div>';
|
|
||||||
}
|
|
||||||
|
|
||||||
echo '</div>';
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
|
|
||||||
echo "<div style='width:100%;height:140px;min-width:390px;max-width:780px;float:left;margin-top:50px;'>";
|
|
||||||
|
|
||||||
$id_agent = db_process_sql('select id_agent from tcluster where id = '.$id_cluster);
|
|
||||||
|
|
||||||
$id_agent_value = $id_agent[0]['id_agent'];
|
|
||||||
|
|
||||||
$table = new stdClass();
|
|
||||||
$table->id = 'agent_details';
|
|
||||||
$table->width = '100%';
|
|
||||||
$table->cellspacing = 0;
|
|
||||||
$table->cellpadding = 0;
|
|
||||||
$table->class = 'agents';
|
|
||||||
$table->style = array_fill(0, 3, 'vertical-align: top;');
|
|
||||||
|
|
||||||
$data = array();
|
|
||||||
$data[0][0] = html_print_table($table_agent, true);
|
|
||||||
$data[0][0] .=
|
|
||||||
'<br /> <table width=90% class="databox agente" style="margin-left:5%;">
|
|
||||||
<tr><th>' .
|
|
||||||
__('Events (24h)') .
|
|
||||||
'</th></tr>' .
|
|
||||||
'<tr><td style="text-align:center;padding-left:20px;padding-right:20px;"><br />' .
|
|
||||||
graph_graphic_agentevents ($id_agent_value, 450, 40, SECONDS_1DAY, '', true, true) .
|
|
||||||
'<br /></td></tr>' .
|
|
||||||
'</table>';
|
|
||||||
|
|
||||||
$table->style[0] = 'width:100%; vertical-align:top;';
|
|
||||||
$data[0][1] = html_print_table($table_contact, true);
|
|
||||||
$data[0][1] .= empty($table_data->data) ?
|
|
||||||
'' :
|
|
||||||
'<br>' . html_print_table($table_data, true);
|
|
||||||
$data[0][1] .= !isset($table_incident) ?
|
|
||||||
'' :
|
|
||||||
'<br>' . html_print_table($table_incident, true);
|
|
||||||
|
|
||||||
$table->rowspan[1][0] = 0;
|
|
||||||
|
|
||||||
$table->data = $data;
|
|
||||||
$table->rowclass[] = '';
|
|
||||||
|
|
||||||
$table->cellstyle[1][0] = 'text-align:center;';
|
|
||||||
|
|
||||||
html_print_table($table);
|
|
||||||
$data2[1][0] = !isset($table_interface) ?
|
|
||||||
'' :
|
|
||||||
html_print_table($table_interface, true);
|
|
||||||
$table->data = $data2;
|
|
||||||
$table->styleTable = '';
|
|
||||||
html_print_table($table);
|
|
||||||
|
|
||||||
unset($table);
|
|
||||||
|
|
||||||
echo "</div>";
|
|
||||||
|
|
||||||
|
|
||||||
echo "</td>";
|
|
||||||
|
|
||||||
echo "</tr>";
|
|
||||||
|
|
||||||
echo "<tr>";
|
|
||||||
echo "<td colspan='2' style='min-width:400px;min-height:600px;vertical-align: top;'>";
|
|
||||||
echo "<div id='module_list' style='min-height:150px;margin-top:20px;'>";
|
|
||||||
echo "</div>";
|
|
||||||
echo "</td>";
|
|
||||||
echo "</tr>";
|
|
||||||
echo "</table>";
|
|
||||||
|
|
||||||
$id_agent = db_process_sql('select id_agent from tcluster where id = '.$id_cluster);
|
|
||||||
|
|
||||||
$id_agent_value = $id_agent[0]['id_agent'];
|
|
||||||
|
|
||||||
ui_require_css_file ('cluetip');
|
|
||||||
ui_require_jquery_file ('cluetip');
|
|
||||||
|
|
||||||
echo "<div id='module_details_dialog' style='display: none;'></div>";
|
|
||||||
|
|
||||||
ui_include_time_picker();
|
|
||||||
ui_require_jquery_file("ui.datepicker-" . get_user_language(), "include/javascript/i18n/");
|
|
||||||
|
|
||||||
?>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
|
|
||||||
|
|
||||||
function pagination_list_modules() {
|
|
||||||
var parameters = {};
|
|
||||||
|
|
||||||
parameters["list_modules"] = 1;
|
|
||||||
parameters["id_agente"] = <?php echo $id_agent_value; ?>;
|
|
||||||
parameters["filter_monitors"] = 0;
|
|
||||||
parameters["monitors_change_filter"] = 0;
|
|
||||||
parameters["page"] = "include/ajax/module";
|
|
||||||
|
|
||||||
|
|
||||||
$("#module_list").empty();
|
|
||||||
$("#module_list_loading").show();
|
|
||||||
|
|
||||||
|
|
||||||
jQuery.ajax ({
|
|
||||||
data: parameters,
|
|
||||||
type: 'POST',
|
|
||||||
url: "ajax.php",
|
|
||||||
dataType: 'html',
|
|
||||||
success: function (data) {
|
|
||||||
$("#module_list_loading").hide();
|
|
||||||
|
|
||||||
$("#module_list").empty();
|
|
||||||
$("#module_list").html(data);
|
|
||||||
$('.forced_title[alt=Force]').css('display','none');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
$("a.tag_details").cluetip ({
|
|
||||||
arrows: true,
|
|
||||||
clickThrough: false,
|
|
||||||
attribute: 'href',
|
|
||||||
cluetipClass: 'default'
|
|
||||||
});
|
|
||||||
$("a.relations_details").cluetip ({
|
|
||||||
width: 500,
|
|
||||||
arrows: true,
|
|
||||||
clickThrough: false,
|
|
||||||
attribute: 'href',
|
|
||||||
cluetipClass: 'default',
|
|
||||||
sticky: true,
|
|
||||||
mouseOutClose: 'both',
|
|
||||||
closeText: '<?php html_print_image("images/cancel.png") ?>'
|
|
||||||
});
|
|
||||||
|
|
||||||
// Show the modal window of an module
|
|
||||||
function show_module_detail_dialog(module_id, id_agent, server_name, offset, period,module_name) {
|
|
||||||
var server_name = '';
|
|
||||||
var extra_parameters = '';
|
|
||||||
if ($('input[name=selection_mode]:checked').val()) {
|
|
||||||
|
|
||||||
period = $('#period').val();
|
|
||||||
|
|
||||||
var selection_mode = $('input[name=selection_mode]:checked').val();
|
|
||||||
var date_from = $('#text-date_from').val();
|
|
||||||
var time_from = $('#text-time_from').val();
|
|
||||||
var date_to = $('#text-date_to').val();
|
|
||||||
var time_to = $('#text-time_to').val();
|
|
||||||
|
|
||||||
extra_parameters = '&selection_mode=' + selection_mode + '&date_from=' + date_from + '&date_to=' + date_to + '&time_from=' + time_from + '&time_to=' + time_to;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get the free text in both options
|
|
||||||
var freesearch = $('#text-freesearch').val();
|
|
||||||
if (freesearch != null && freesearch !== '') {
|
|
||||||
var free_checkbox = $('input[name=free_checkbox]:checked').val();
|
|
||||||
extra_parameters += '&freesearch=' + freesearch;
|
|
||||||
if (free_checkbox == 1) {
|
|
||||||
extra_parameters += '&free_checkbox=1';
|
|
||||||
} else {
|
|
||||||
extra_parameters += '&free_checkbox=0';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
title = <?php echo "\"" . __("Module: ") . "\"" ?>;
|
|
||||||
$.ajax({
|
|
||||||
type: "POST",
|
|
||||||
url: "<?php echo ui_get_full_url('ajax.php', false, false, false); ?>",
|
|
||||||
data: "page=include/ajax/module&get_module_detail=1&server_name="+server_name+"&id_agent="+id_agent+"&id_module=" + module_id+"&offset="+offset+"&period="+period + extra_parameters,
|
|
||||||
dataType: "html",
|
|
||||||
success: function(data) {
|
|
||||||
$("#module_details_dialog").hide ()
|
|
||||||
.empty ()
|
|
||||||
.append (data)
|
|
||||||
.dialog ({
|
|
||||||
resizable: true,
|
|
||||||
draggable: true,
|
|
||||||
modal: true,
|
|
||||||
title: title + module_name,
|
|
||||||
overlay: {
|
|
||||||
opacity: 0.5,
|
|
||||||
background: "black"
|
|
||||||
},
|
|
||||||
width: 650,
|
|
||||||
height: 500
|
|
||||||
})
|
|
||||||
.show ();
|
|
||||||
refresh_pagination_callback (module_id, id_agent, "",module_name);
|
|
||||||
datetime_picker_callback();
|
|
||||||
forced_title_callback();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
function datetime_picker_callback() {
|
|
||||||
|
|
||||||
$("#text-time_from, #text-time_to").timepicker({
|
|
||||||
showSecond: true,
|
|
||||||
timeFormat: '<?php echo TIME_FORMAT_JS; ?>',
|
|
||||||
timeOnlyTitle: '<?php echo __('Choose time');?>',
|
|
||||||
timeText: '<?php echo __('Time');?>',
|
|
||||||
hourText: '<?php echo __('Hour');?>',
|
|
||||||
minuteText: '<?php echo __('Minute');?>',
|
|
||||||
secondText: '<?php echo __('Second');?>',
|
|
||||||
currentText: '<?php echo __('Now');?>',
|
|
||||||
closeText: '<?php echo __('Close');?>'});
|
|
||||||
|
|
||||||
$("#text-date_from, #text-date_to").datepicker({dateFormat: "<?php echo DATE_FORMAT_JS; ?>"});
|
|
||||||
|
|
||||||
$.datepicker.setDefaults($.datepicker.regional[ "<?php echo get_user_language(); ?>"]);
|
|
||||||
}
|
|
||||||
datetime_picker_callback();
|
|
||||||
|
|
||||||
function refresh_pagination_callback (module_id, id_agent, server_name,module_name) {
|
|
||||||
$(".binary_dialog").click( function() {
|
|
||||||
|
|
||||||
var classes = $(this).attr('class');
|
|
||||||
classes = classes.split(' ');
|
|
||||||
var offset_class = classes[2];
|
|
||||||
offset_class = offset_class.split('_');
|
|
||||||
var offset = offset_class[1];
|
|
||||||
|
|
||||||
var period = $('#period').val();
|
|
||||||
|
|
||||||
show_module_detail_dialog(module_id, id_agent, server_name, offset, period,module_name);
|
|
||||||
return false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
$(document).ready(function(){
|
|
||||||
pagination_list_modules();
|
|
||||||
|
|
||||||
$( ".status_animation" ).css({'height':'5px','top':'0px'});
|
|
||||||
|
|
||||||
$( ".status_animation" ).animate({
|
|
||||||
top: "45px"
|
|
||||||
}, 500, 'linear', function() {
|
|
||||||
|
|
||||||
$( ".status_animation" ).css({'height':'5px','top':'0px'});
|
|
||||||
|
|
||||||
$( ".status_animation" ).animate({
|
|
||||||
top: "45px"
|
|
||||||
}, 500, 'linear', function() {
|
|
||||||
|
|
||||||
$( ".status_animation" ).css({'height':'0px','top':'25px'});
|
|
||||||
|
|
||||||
$( ".status_animation" ).animate({
|
|
||||||
top: "0px",
|
|
||||||
height: "50px"
|
|
||||||
}, 500, 'linear', function() {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
|
|
@ -204,7 +204,14 @@ function clusters_get_user ($id_user = 0, $only_names = false, $returnAllGroup =
|
||||||
return $clusters;
|
return $clusters;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function cluster_get_status ($id_agente){
|
||||||
|
$sql = sprintf("SELECT known_status FROM tagente_estado ae
|
||||||
|
INNER JOIN tagente_modulo am ON ae.id_agente_modulo = am.id_agente_modulo
|
||||||
|
WHERE am.nombre = 'Cluster status' AND am.id_agente = %d",$id_agente);
|
||||||
|
|
||||||
|
$status = db_get_all_rows_sql($sql);
|
||||||
|
return $status;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -74,4 +74,8 @@ function os_get_os() {
|
||||||
|
|
||||||
return $op_systems;
|
return $op_systems;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function os_get_icon($id_os) {
|
||||||
|
return db_get_value ('icon_name', 'tconfig_os', 'id_os', (int) $id_os);
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
Loading…
Reference in New Issue