';
echo "
 . ")
";
$layout_datas = db_get_all_rows_field_filter('tlayout_data',
'id_layout', $id_layout);
if (empty($layout_datas))
$layout_datas = array();
$lines = array ();
foreach ($layout_datas as $layout_data) {
if ($resizedMap) {
//Hack to resize the text
$layout_data["label"] = str_replace(
'visual_font_size', 'resize_visual_font_size', $layout_data["label"]);
}
//Check the items are from disabled or pending delete modules
if ($layout_data['id_agente_modulo'] != 0 &&
(($layout_data['type'] != LABEL)
|| ($layout_data['type'] != ICON)
|| ($layout_data['type'] != SERVICE))) {
$delete_pending_module = db_get_value ("delete_pending",
"tagente_modulo", "id_agente_modulo",
$layout_data["id_agente_modulo"]);
$disabled_module = db_get_value ("disabled", "tagente_modulo",
"id_agente_modulo", $layout_data["id_agente_modulo"]);
if ($delete_pending_module == 1 || $disabled_module == 1)
continue;
}
$layout_data['label'] = io_safe_output($layout_data['label']);
// *************************************************************
// Get parent status (Could be an agent, module, map,
// others doesnt have parent info)
// *************************************************************
if ($layout_data["parent_item"] != 0) {
$layout_data_parent = db_get_row_filter('tlayout_data',
array('id' => $layout_data["parent_item"]));
$status_parent =
visual_map_get_status_element($layout_data_parent);
$line['id'] = $layout_data['id'];
$line['node_begin'] = 'layout-data-' . $layout_data["parent_item"];
$line['node_end'] = 'layout-data-' . $layout_data["id"];
$line['thickness'] = empty($config["vc_line_thickness"]) ? 2 : $config["vc_line_thickness"];
switch ($status_parent) {
default:
case VISUAL_MAP_STATUS_UNKNOWN:
$line["color"] = COL_UNKNOWN; // Gray
break;
case VISUAL_MAP_STATUS_WARNING:
$line["color"] = COL_WARNING; // Yellow
break;
case VISUAL_MAP_STATUS_NORMAL:
$line["color"] = COL_NORMAL; // Green
break;
case VISUAL_MAP_STATUS_CRITICAL_ALERT:
case VISUAL_MAP_STATUS_CRITICAL_BAD:
$line["color"] = COL_CRITICAL; // Red
break;
}
array_push ($lines, $line);
}
// *************************************************************
// Get STATUS of current object
// *************************************************************
$status = visual_map_get_status_element($layout_data);
switch ($status) {
case VISUAL_MAP_STATUS_CRITICAL_BAD:
//Critical (BAD)
$colorStatus = COL_CRITICAL;
break;
case VISUAL_MAP_STATUS_CRITICAL_ALERT:
//Critical (ALERT)
$colorStatus = COL_ALERTFIRED;
break;
case VISUAL_MAP_STATUS_NORMAL:
//Normal (OK)
$colorStatus = COL_NORMAL;
break;
case VISUAL_MAP_STATUS_WARNING:
//Warning
$colorStatus = COL_WARNING;
break;
case VISUAL_MAP_STATUS_UNKNOWN:
default:
//Unknown
$colorStatus = COL_UNKNOWN;
// Default is Grey (Other)
break;
}
switch ($layout_data['type']) {
case GROUP_ITEM:
case STATIC_GRAPH:
visual_map_print_item("read", $layout_data,
$proportion, $show_links);
break;
case LABEL:
visual_map_print_item("read", $layout_data,
$proportion, $show_links);
break;
case ICON:
visual_map_print_item("read", $layout_data,
$proportion, $show_links);
break;
case SIMPLE_VALUE:
case SIMPLE_VALUE_MAX:
case SIMPLE_VALUE_MIN:
case SIMPLE_VALUE_AVG:
visual_map_print_item("read", $layout_data,
$proportion, $show_links);
break;
case PERCENTILE_BAR:
case PERCENTILE_BUBBLE:
visual_map_print_item("read", $layout_data,
$proportion, $show_links);
break;
case MODULE_GRAPH:
visual_map_print_item("read", $layout_data,
$proportion, $show_links);
break;
default:
enterprise_hook("enterprise_visual_map_print_item",
array($layout_data, $status, $colorStatus,
'operation', $resizedMap, $proportion));
break;
}
}
if ($draw_lines) {
/* If you want lines in the map, call using Javascript:
draw_lines (lines, id_div);
on body load, where id_div is the id of the div which holds the map */
echo '';
}
// End main div
echo "