121 lines
5.3 KiB
PHP
121 lines
5.3 KiB
PHP
<?php
|
|
/**
|
|
* Observium
|
|
*
|
|
* This file is part of Observium.
|
|
*
|
|
* @package observium
|
|
* @subpackage web
|
|
* @copyright (C) Adam Armstrong
|
|
*
|
|
*/
|
|
|
|
print_message("This page allows you to disable or enable certain Graphs detected for a device.");
|
|
|
|
$graphs_db = [];
|
|
foreach (dbFetchRows("SELECT `graph`,`enabled` FROM `device_graphs` WHERE `device_id` = ?", [ $device['device_id'] ]) as $entry) {
|
|
$graph = $entry['graph'];
|
|
$section = $config['graph_types']['device'][$graph]['section'];
|
|
$graphs_db[$graph] = (bool)$entry['enabled'];
|
|
// Another array sorted by sections
|
|
$graphs_sections[$section][$graph] = (bool)$entry['enabled'];
|
|
}
|
|
|
|
if ($vars['submit']) {
|
|
if ($readonly) {
|
|
print_error_permission('You have insufficient permissions to edit settings.');
|
|
} else {
|
|
$graph = $vars['toggle_graph'];
|
|
if ($graph && isset($graphs_db[$graph]) &&
|
|
!in_array($config['graph_types']['device'][$graph]['section'], ['poller', 'system'])) {
|
|
$value = (int)!$graphs_db[$graph]; // Toggle current 'enabled' value
|
|
$updated = dbUpdate(['enabled' => $value], 'device_graphs', '`device_id` = ? AND `graph` = ?', [$device['device_id'], $graph]);
|
|
if ($updated) {
|
|
print_success("Graph '$graph' " . ($value ? 'enabled' : 'disabled') . '.');
|
|
$graphs_sections[$config['graph_types']['device'][$graph]['section']][$graph] = (bool)$value;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
?>
|
|
|
|
<div class="row"> <!-- begin row -->
|
|
<div class="col-md-6"> <!-- begin poller options -->
|
|
|
|
<div class="box box-solid">
|
|
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">Device Graphs</h3>
|
|
</div>
|
|
<div class="box-body no-padding">
|
|
|
|
<table class="table table-striped table-condensed-more">
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Description</th>
|
|
<th>Section</th>
|
|
<th style="width: 60px;">Status</th>
|
|
<th style="width: 80px;"></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
|
|
<?php
|
|
|
|
foreach ($graphs_sections as $section => $entry) {
|
|
foreach ($entry as $graph => $enabled) {
|
|
echo('<tr><td><strong>' . $graph . '</strong></td><td>');
|
|
echo($config['graph_types']['device'][$graph]['descr'] . '</td><td>');
|
|
echo(nicecase($section) . '</td><td>');
|
|
|
|
if (!$enabled) {
|
|
$attrib_status = '<span class="label label-important">disabled</span>';
|
|
$toggle = 'Enable';
|
|
$btn_class = 'btn-success';
|
|
$btn_icon = 'icon-ok';
|
|
} else {
|
|
$attrib_status = '<span class="label label-success">enabled</span>';
|
|
$toggle = "Disable";
|
|
$btn_class = "btn-danger";
|
|
$btn_icon = 'icon-remove';
|
|
}
|
|
|
|
echo($attrib_status . '</td><td>');
|
|
|
|
if (!in_array($section, ['poller', 'system'])) {
|
|
$form = ['type' => 'simple'];
|
|
// Elements
|
|
$form['row'][0]['toggle_graph'] = ['type' => 'hidden',
|
|
'value' => $graph];
|
|
$form['row'][0]['submit'] = ['type' => 'submit',
|
|
'name' => $toggle,
|
|
'class' => 'btn-mini ' . $btn_class,
|
|
'icon' => $btn_icon,
|
|
'right' => TRUE,
|
|
'readonly' => $readonly,
|
|
'value' => 'graph_toggle'];
|
|
print_form($form);
|
|
unset($form);
|
|
} else {
|
|
echo('<button id="submit" name="submit" type="submit" class="btn btn-default btn-mini pull-right disabled text-nowrap" disabled="1" value="Toggle"><i class="icon-lock"></i> Required</button>');
|
|
}
|
|
|
|
echo('</td></tr>');
|
|
}
|
|
}
|
|
?>
|
|
</tbody>
|
|
</table>
|
|
|
|
</div>
|
|
</div>
|
|
</div> <!-- end poller options -->
|
|
|
|
</div> <!-- end row -->
|
|
</div> <!-- end container -->
|
|
<?php
|
|
|
|
// EOF
|