1<?php
2
3/**
4 * Observium
5 *
6 *   This file is part of Observium.
7 *
8 * @package    observium
9 * @subpackage webui
10 * @copyright  (C) 2006-2013 Adam Armstrong, (C) 2013-2019 Observium Limited
11 *
12 */
13
14$graph_array['width']       = "218";
15$graph_array['height']      = "100";
16
17$graph_array['to']          = $config['time']['now'];
18$graph_array['from']        = $config['time']['day'];
19$graph_array_zoom           = $graph_array;
20$graph_array_zoom['height'] = "150";
21$graph_array_zoom['width']  = "400";
22$graph_array['legend']      = "no";
23
24foreach (dbFetchRows("SELECT * FROM `applications` WHERE 1 ".generate_query_values(array_keys($app_types), 'app_type').$GLOBALS['cache']['where']['devices_permitted'].' ORDER BY `app_type`;') as $app)
25{
26  if (isset($cache['devices']['id'][$app['device_id']]))
27  {
28    $app_types[$app['app_type']][] = array_merge($app, $cache['devices']['id'][$app['device_id']]);
29  }
30}
31
32foreach (array_keys($app_types) as $app_type)
33{
34  echo('<div class="row"><div class="col-md-12">');
35
36  echo('<h4>'.generate_link(nicecase($app_type),array('page' => 'apps', 'app' => $app_type)).'</h4>');
37  $app_devices = array_sort_by($app_types[$app_type], 'hostname', SORT_ASC, SORT_STRING);
38
39  foreach ($app_devices as $app)
40  {
41    $graph_type = $config['app'][$app['app_type']]['top'][0];
42
43    $graph_array['type']   = "application_".$app['app_type']."_".$graph_type;
44    $graph_array['id']     = $app['app_id'];
45    $graph_array_zoom['type']   = "application_".$app['app_type']."_".$graph_type;
46    $graph_array_zoom['id']     = $app['app_id'];
47
48    $link_array = $graph_array;
49    $link_array['page']   = "device";
50    $link_array['device'] = $app['device_id'];
51    $link_array['tab']    = "apps";
52    $link_array['app']    = $app['app_type'];
53    unset($link_array['height'], $link_array['width']);
54    $overlib_url = generate_url($link_array);
55
56    $overlib_link    = '<span style="float:left; margin-left: 10px; font-weight: bold;">'.short_hostname($app['hostname'])."</span>";
57    if (!empty($app['app_instance']))
58    {
59      $overlib_link  .= '<span style="float:right; margin-right: 10px; font-weight: bold;">'.$app['app_instance']."</span>";
60      $app['content_add']   = '('.$app['app_instance'].')';
61    }
62    $overlib_link   .= "<br/>";
63    $overlib_link   .= generate_graph_tag($graph_array);
64    $overlib_content = generate_overlib_content($graph_array, $app['hostname'] . " - ". $app['app_type'] . $app['content_add']);
65
66    echo("<div style='display: block; padding: 1px; padding-top: 3px; margin: 2px; min-width: ".$width_div."px; max-width:".$width_div."px; min-height:165px; max-height:165px;
67                      text-align: center; float: left; background-color: #f5f5f5;'>");
68    echo(overlib_link($overlib_url, $overlib_link, $overlib_content));
69    echo("</div>");
70  }
71  echo('</div></div>');
72}
73
74// EOF
75