\n"; if ($this->is_authorized == false) { echo "
\n"; echo "

\n"; echo "Alert: " . Kohana::lang('error.not_authorized') . "

\n"; echo "
\n"; return; } if ($this->data->ERROR != null) { echo "
\n"; echo "

\n"; echo "Alert: " . $this->data->ERROR . "

\n"; echo "
\n"; return; } $count = 0; foreach ($this->data->STRUCT as $key => $value) { if ($value['LEVEL'] == 0) { echo "Host: " . $value['MACRO']['DISP_HOSTNAME'] . " Service: " . $value['MACRO']['DISP_SERVICEDESC'] . "

\n"; echo "" . $value['TIMERANGE']['title'] . " " . $value['TIMERANGE']['f_start'] . " - " . $value['TIMERANGE']['f_end'] . "\n"; $count = 0; } if ($value['VERSION'] != "valid" && $count == 0) { $count++; echo "

\n"; echo "
\n"; echo "

" . $value['VERSION'] . "

\n"; echo "
\n"; echo "

\n"; } echo "
"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
"; echo Kohana::lang('common.datasource', $value['ds_name']) . ""; echo nagios::SummaryLink( $value['MACRO']['DISP_HOSTNAME'], $value['TIMERANGE']['start'], $value['TIMERANGE']['end'] ) . ""; echo nagios::AvailLink( $value['MACRO']['DISP_HOSTNAME'], $value['MACRO']['DISP_SERVICEDESC'], $value['TIMERANGE']['start'], $value['TIMERANGE']['end'] ) . ""; echo pnp::add_to_basket_icon( $value['MACRO']['HOSTNAME'], $value['MACRO']['SERVICEDESC'], $value['SOURCE'] ); echo ""; echo pnp::zoom_icon( $value['MACRO']['HOSTNAME'], $value['MACRO']['SERVICEDESC'], $value['TIMERANGE']['start'], $value['TIMERANGE']['end'], $value['SOURCE'], $value['VIEW'], $value['GRAPH_WIDTH'], $value['GRAPH_HEIGHT'] ) . "
\n"; echo "
\n"; echo "
\n"; echo "
\n"; $path = pnp::addToUri(array( 'host' => $value['MACRO']['HOSTNAME'], 'srv' => $value['MACRO']['SERVICEDESC'], ), false); echo "\n"; # urlencode the graph id, to prevent # chars in service names being # treated like a url fragment when zooming $gid = array(); #parse_str(ltrim($this->url, '?'), $gid); #$gid = htmlentities("?host=".urlencode($gid["host"])."&srv=".urlencode($gid["srv"])); // build the URI which renders the dynamic graph image $path = array('host' => $value['MACRO']['HOSTNAME'], 'srv' => $value['MACRO']['SERVICEDESC'], 'source' => $value['SOURCE']); $gid = htmlentities("?host=" . urlencode($path["host"]) . "&srv=" . urlencode($path["srv"])); echo "
"; // only include `view` in the querystring if we are in a preset view; likewise, only // include timerange start/end if we are not in a preset view; this will help later // to differentiate between preset and custom timeranges, for display purposes if ($value['TIMERANGE']['type'] == 'views') { $path['view'] = $value['VIEW']; } else { $path['start'] = $value['TIMERANGE']['start']; $path['end'] = $value['TIMERANGE']['end']; } $path = pnp::addToUri($path, false); echo "
\n"; echo "
\n"; echo "

\n"; } echo "\n"; ?>