2009-09-07 11:07:59 +00:00
|
|
|
<?php
|
2007-06-24 15:46:47 +00:00
|
|
|
|
2017-08-08 16:23:03 -05:00
|
|
|
use LibreNMS\Exceptions\InvalidIpException;
|
|
|
|
use LibreNMS\Util\IP;
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
echo '<div class="container-fluid">';
|
|
|
|
echo "<div class='row'>
|
2014-02-26 22:33:45 +00:00
|
|
|
<div class='col-md-12'>
|
|
|
|
<div class='panel panel-default panel-condensed'>
|
2015-07-13 20:10:26 +02:00
|
|
|
<div class='panel-heading'>";
|
2012-04-22 17:13:27 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($config['overview_show_sysDescr']) {
|
2017-01-21 13:24:05 +02:00
|
|
|
echo '<i class="fa fa-id-card fa-lg icon-theme" aria-hidden="true"></i> <strong>'.$device['sysDescr'].'</strong>';
|
2011-03-17 11:29:23 +00:00
|
|
|
}
|
2010-06-10 19:49:23 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
echo '</div>
|
|
|
|
<table class="table table-hover table-condensed table-striped">';
|
2014-02-26 22:33:45 +00:00
|
|
|
|
2017-09-29 21:05:51 +01:00
|
|
|
$uptime = formatUptime($device['uptime']);
|
|
|
|
$uptime_text = 'Uptime';
|
|
|
|
if ($device['status'] == 0) {
|
|
|
|
// Rewrite $uptime to be downtime if device is down
|
|
|
|
$uptime = formatUptime(time() - strtotime($device['last_polled']));
|
|
|
|
$uptime_text = 'Downtime';
|
|
|
|
}
|
2011-03-17 11:29:23 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($device['os'] == 'ios') {
|
|
|
|
formatCiscoHardware($device);
|
|
|
|
}
|
|
|
|
|
|
|
|
if ($device['features']) {
|
|
|
|
$device['features'] = '('.$device['features'].')';
|
|
|
|
}
|
|
|
|
|
2011-03-17 11:29:23 +00:00
|
|
|
$device['os_text'] = $config['os'][$device['os']]['text'];
|
|
|
|
|
2015-07-22 17:22:06 +02:00
|
|
|
echo '<tr>
|
|
|
|
<td>System Name</td>
|
|
|
|
<td>'.$device['sysName'].' </td>
|
|
|
|
</tr>';
|
|
|
|
|
2016-02-07 15:39:17 +00:00
|
|
|
if (!empty($device['ip'])) {
|
2017-02-08 04:22:06 +00:00
|
|
|
echo "<tr><td>Resolved IP</td><td>{$device['ip']}</td></tr>";
|
2017-08-08 16:23:03 -05:00
|
|
|
} elseif ($config['force_ip_to_sysname'] === true) {
|
|
|
|
try {
|
|
|
|
$ip = IP::parse($device['hostname']);
|
|
|
|
echo "<tr><td>IP Address</td><td>$ip</td></tr>";
|
|
|
|
} catch (InvalidIpException $e) {
|
|
|
|
// don't add an ip line
|
|
|
|
}
|
2016-01-17 23:59:51 +00:00
|
|
|
}
|
|
|
|
|
2017-09-14 01:46:16 +01:00
|
|
|
if ($device['purpose']) {
|
|
|
|
echo '<tr>
|
|
|
|
<td>Description</td>
|
|
|
|
<td>'.display($device['purpose']).'</td>
|
|
|
|
</tr>';
|
|
|
|
}
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($device['hardware']) {
|
|
|
|
echo '<tr>
|
2014-02-26 22:33:45 +00:00
|
|
|
<td>Hardware</td>
|
2015-07-13 20:10:26 +02:00
|
|
|
<td>'.$device['hardware'].'</td>
|
|
|
|
</tr>';
|
2011-03-17 11:29:23 +00:00
|
|
|
}
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
echo '<tr>
|
2014-02-26 22:33:45 +00:00
|
|
|
<td>Operating System</td>
|
2015-07-13 20:10:26 +02:00
|
|
|
<td>'.$device['os_text'].' '.$device['version'].' '.$device['features'].' </td>
|
|
|
|
</tr>';
|
2011-04-21 13:30:09 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($device['serial']) {
|
|
|
|
echo '<tr>
|
2014-02-26 22:33:45 +00:00
|
|
|
<td>Serial</td>
|
2015-07-13 20:10:26 +02:00
|
|
|
<td>'.$device['serial'].'</td>
|
|
|
|
</tr>';
|
2011-03-17 11:29:23 +00:00
|
|
|
}
|
|
|
|
|
2015-11-12 08:42:26 +10:00
|
|
|
if ($device['sysObjectID']) {
|
|
|
|
echo '<tr>
|
|
|
|
<td>Object ID</td>
|
|
|
|
<td>'.$device['sysObjectID'].'</td>
|
|
|
|
</tr>';
|
|
|
|
}
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($device['sysContact']) {
|
|
|
|
echo '<tr>
|
|
|
|
<td>Contact</td>';
|
|
|
|
if (get_dev_attrib($device, 'override_sysContact_bool')) {
|
|
|
|
echo '
|
2016-02-17 13:59:58 +00:00
|
|
|
<td>'.htmlspecialchars(get_dev_attrib($device, 'override_sysContact_string')).'</td>
|
2011-04-01 15:20:06 +00:00
|
|
|
</tr>
|
|
|
|
<tr>
|
2015-07-13 20:10:26 +02:00
|
|
|
<td>SNMP Contact</td>';
|
|
|
|
}
|
|
|
|
|
|
|
|
echo '
|
2016-02-17 13:59:58 +00:00
|
|
|
<td>'.htmlspecialchars($device['sysContact']).'</td>
|
2015-07-13 20:10:26 +02:00
|
|
|
</tr>';
|
2011-03-17 11:29:23 +00:00
|
|
|
}
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($device['location']) {
|
|
|
|
echo '<tr>
|
2014-02-26 22:33:45 +00:00
|
|
|
<td>Location</td>
|
2015-07-13 20:10:26 +02:00
|
|
|
<td>'.$device['location'].'</td>
|
|
|
|
</tr>';
|
|
|
|
if (get_dev_attrib($device, 'override_sysLocation_bool') && !empty($device['real_location'])) {
|
|
|
|
echo '<tr>
|
2014-02-26 22:33:45 +00:00
|
|
|
<td>SNMP Location</td>
|
2015-07-13 20:10:26 +02:00
|
|
|
<td>'.$device['real_location'].'</td>
|
|
|
|
</tr>';
|
|
|
|
}
|
2011-03-17 11:29:23 +00:00
|
|
|
}
|
|
|
|
|
2015-11-16 18:50:52 -08:00
|
|
|
$loc = parse_location($device['location']);
|
|
|
|
if (!is_array($loc)) {
|
|
|
|
$loc = dbFetchRow("SELECT `lat`,`lng` FROM `locations` WHERE `location`=? LIMIT 1", array($device['location']));
|
|
|
|
}
|
2015-07-20 15:59:44 +01:00
|
|
|
if (is_array($loc)) {
|
|
|
|
echo '<tr>
|
|
|
|
<td>Lat / Lng</td>
|
2017-01-24 11:53:25 +02:00
|
|
|
<td>['.$loc['lat'].','.$loc['lng'].'] <div class="pull-right"><a href="https://maps.google.com/?q='.$loc['lat'].'+'.$loc['lng'].'" target="_blank" class="btn btn-success btn-xs" role="button"><i class="fa fa-map-marker" style="color:white" aria-hidden="true"></i> Map</button></div></a></td>
|
2015-07-20 15:59:44 +01:00
|
|
|
</tr>';
|
|
|
|
}
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($uptime) {
|
2017-09-29 21:05:51 +01:00
|
|
|
echo "<tr>
|
|
|
|
<td>$uptime_text</td>
|
|
|
|
<td>".$uptime."</td>
|
|
|
|
</tr>";
|
2011-03-17 11:29:23 +00:00
|
|
|
}
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
echo '</table>
|
2014-02-26 22:33:45 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2015-07-13 20:10:26 +02:00
|
|
|
</div>';
|