2025-08-06 18:11:51 +02:00

90 lines
3.1 KiB
PHP

<?php
// phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
// phpcs:disable Squiz.Classes.ValidClassName.NotCamelCaps
/**
* Zoom controller.
*
* @package PNP4Nagios
* @author Joerg Linge
* @license GPL
*/
class Zoom_Controller extends System_Controller
{
public function __construct()
{
parent::__construct();
$this->template = $this->add_view('zoom');
#$this->tpl = $this->input->get('tpl');
$this->graph_width = $this->config->conf['zgraph_width'];
$this->graph_height = $this->config->conf['zgraph_height'];
}
public function index()
{
#$this->source = intval($this->input->get('source'));
#$this->view = "";
#if(isset($_GET['view']) && $_GET['view'] != "" ){
# $this->view = pnp::clean($_GET['view']);
#}else{
# $this->view = $this->config->conf['overview-range'];
#}
#
# Limit startto 2000/01/01
#
$start_limit = strtotime("2000/01/01");
$this->start = abs((int)$this->start);
if ($this->start < $start_limit) {
$this->start = $start_limit;
}
#
# Limit end to now + one hour
#
$end_limit = time() + 3600;
$this->end = abs((int)$this->end);
if ($this->end > $end_limit) {
$this->end = $end_limit;
}
$this->data->getTimeRange($this->start, $this->end, $this->view);
if (isset($this->tpl) && $this->tpl != 'undefined') {
if ($this->start && $this->end) {
$this->session->set("start", $this->start);
$this->session->set("end", $this->end);
}
$this->template->tpl = $this->tpl;
$this->template->view = $this->view;
$this->template->source = $this->source;
$this->template->end = $this->end;
$this->template->start = $this->start;
$this->url = "?tpl=" . $this->tpl;
$this->template->graph_height = $this->graph_height;
$this->template->graph_width = $this->graph_width;
} elseif (isset($this->host) && isset($this->service)) {
if ($this->start && $this->end) {
$this->session->set("start", $this->start);
$this->session->set("end", $this->end);
}
$this->template->host = $this->host;
$this->template->srv = $this->service;
$this->template->view = $this->view;
$this->template->source = $this->source;
$this->template->end = $this->end;
$this->template->start = $this->start;
$this->url = "?host=" . urlencode($this->host) . "&srv=" . urlencode($this->service);
$this->template->graph_height = $this->graph_height;
$this->template->graph_width = $this->graph_width;
} else {
url::redirect("/graph");
}
}
}