mirror of
https://github.com/librenms/librenms.git
synced 2024-09-21 18:38:25 +00:00
53bfb24ef9
* use component to discover if xDSL polling is needed use component to discover if xDSL polling is needed * Components OK, Polling in correct files, no DB for VDSL * GUI GUI_suite * per port as well * rename * interface listing * draytek_snmpsim * fix arraymerge fix names and max value * schema schema style * remove one dbFetchRows remove 2x dbFetchCell style style remove Legacy dbFetchRow tests tests eloquent more eloquent more eloquent one more gone * fix properties access eloquent_insert_update style tests tests tests tests * tests tests tests * adslLineCoding * Models * fix not nullable cols in DB from code default values typo rename typo schema fix fix vdsl fix now typo typo fix size fix size * Power values for VDSL Power values for VDSL Power values for VDSL DB * cleanup * Rrd::checkRrdExists * always enable DSL discovery style * xdsl module * cleanup and move to Module cleanup and move to Module cleanup and move to Module cleanup and move to Module * Fix display * fix polling and tenth * remove legacy poller * Style and Cosmetics Cosmetics Cleanup * Translations Translations * exists exists * add test support for xdsl * remove last component call unused * translations * remove non standard onclick event on xdsl line * Update Discovery Support.md Update Poller Support.md toner_gone * Notification for removal of lnms config:set enable_ports_adsl true * enable on devices with potential DSL interfaces * tests are working now fix teldat tests * os_schema * teldat * move to new module structure * move to new module structure * wrong dump function * wrong dump function * laravel_through_key hidden * Update notifications.rss * Update notifications.rss Co-authored-by: Tony Murray <murraytony@gmail.com>
118 lines
5.3 KiB
PHP
118 lines
5.3 KiB
PHP
<?php
|
|
|
|
// This file prints a table row for each interface
|
|
use app\Models\Ipv4Address;
|
|
use app\Models\Ipv6Address;
|
|
use LibreNMS\Config;
|
|
use LibreNMS\Util\IP;
|
|
|
|
$port['device_id'] = $device['device_id'];
|
|
$port['hostname'] = $device['hostname'];
|
|
|
|
$if_id = $port['port_id'];
|
|
|
|
$port = cleanPort($port);
|
|
|
|
if (! is_integer($i / 2)) {
|
|
$row_colour = Config::get('list_colour.even');
|
|
} else {
|
|
$row_colour = Config::get('list_colour.odd');
|
|
}
|
|
|
|
if ($port['ifInErrors_delta'] > 0 || $port['ifOutErrors_delta'] > 0) {
|
|
$error_img = generate_port_link($port, "<i class='fa fa-flag fa-lg' style='color:red' aria-hidden='true'></i>", 'port_errors');
|
|
} else {
|
|
$error_img = '';
|
|
}
|
|
|
|
echo "<tr style=\"background-color: $row_colour; padding: 5px;\" valign=top onmouseover=\"this.style.backgroundColor='" . Config::get('list_colour.highlight') . "';\" onmouseout=\"this.style.backgroundColor='$row_colour';\" style='cursor: pointer;'>
|
|
<td valign=top width=350>";
|
|
echo ' <span class=list-large>
|
|
' . generate_port_link($port, $port['ifIndex'] . '. ' . $port['label']) . '
|
|
</span><br /><span class=interface-desc>' . \LibreNMS\Util\Clean::html($port['ifAlias'], []) . '</span>';
|
|
|
|
if ($port['ifAlias']) {
|
|
echo '<br />';
|
|
}
|
|
|
|
$break = '';
|
|
if ($port_details) {
|
|
foreach (Ipv4Address::where('port_id', (string) $port['port_id']) as $ip) {
|
|
echo "$break <a class=interface-desc href=\"javascript:popUp('ajax/netcmd?cmd=whois&query=" . $ip['ipv4_address'] . "')\">" . $ip['ipv4_address'] . '/' . $ip['ipv4_prefixlen'] . '</a>';
|
|
$break = ',';
|
|
}
|
|
|
|
foreach (Ipv6Address::where('port_id', (string) $port['port_id']) as $ip6) {
|
|
echo "$break <a class=interface-desc href=\"javascript:popUp('ajax/netcmd?cmd=whois&query=" . $ip6['ipv6_address'] . "')\">" . IP::parse($ip6['ipv6_address'], true) . '/' . $ip6['ipv6_prefixlen'] . '</a>';
|
|
$break = ',';
|
|
}
|
|
}
|
|
|
|
echo '</span>';
|
|
|
|
$width = '120';
|
|
$height = '40';
|
|
$from = Config::get('time.day');
|
|
|
|
echo '</td><td width=135>';
|
|
echo \LibreNMS\Util\Number::formatSi(($port['ifInOctets_rate'] * 8), 2, 3, 'bps') . " <i class='fa fa-arrows-v fa-lg icon-theme' aria-hidden='true'></i> " . \LibreNMS\Util\Number::formatSi(($port['ifOutOctets_rate'] * 8), 2, 3, 'bps');
|
|
echo '<br />';
|
|
$port['graph_type'] = 'port_bits';
|
|
echo generate_port_link(
|
|
$port,
|
|
"<img src='graph.php?type=" . $port['graph_type'] . '&id=' . $port['port_id'] . '&from=' . $from . '&to=' . Config::get('time.now') . '&width=' . $width . '&height=' . $height . '&legend=no&bg=' . str_replace('#', '', $row_colour) . "'>",
|
|
$port['graph_type']
|
|
);
|
|
|
|
echo '</td><td width=135>';
|
|
echo '' . \LibreNMS\Util\Number::formatSi($port['xdsl2ChStatusActDataRateXtur'], 2, 3, 'bps') . '/' . \LibreNMS\Util\Number::formatSi($port['xdsl2ChStatusActDataRateXtuc'], 2, 3, 'bps');
|
|
echo '<br />';
|
|
$port['graph_type'] = 'port_vdsl_speed';
|
|
echo generate_port_link(
|
|
$port,
|
|
"<img src='graph.php?type=" . $port['graph_type'] . '&id=' . $port['port_id'] . '&from=' . $from . '&to=' . Config::get('time.now') . '&width=' . $width . '&height=' . $height . '&legend=no&bg=' . str_replace('#', '', $row_colour) . "'>",
|
|
$port['graph_type']
|
|
);
|
|
|
|
echo '</td><td width=135>';
|
|
echo '' . \LibreNMS\Util\Number::formatSi($port['xdsl2LineStatusAttainableRateDs'], 2, 3, 'bps') . '/' . \LibreNMS\Util\Number::formatSi($port['xdsl2LineStatusAttainableRateUs'], 2, 3, 'bps');
|
|
echo '<br />';
|
|
$port['graph_type'] = 'port_vdsl_attainable';
|
|
echo generate_port_link(
|
|
$port,
|
|
"<img src='graph.php?type=" . $port['graph_type'] . '&id=' . $port['port_id'] . '&from=' . $from . '&to=' . Config::get('time.now') . '&width=' . $width . '&height=' . $height . '&legend=no&bg=' . str_replace('#', '', $row_colour) . "'>",
|
|
$port['graph_type']
|
|
);
|
|
|
|
echo '</td><td width=135>';
|
|
//echo '' . $port['adslAturCurrAtn'] . 'dB/' . $port['adslAtucCurrAtn'] . 'dB';
|
|
//echo '<br />';
|
|
//$port['graph_type'] = 'port_adsl_attenuation';
|
|
//echo generate_port_link(
|
|
// $port,
|
|
// "<img src='graph.php?type=" . $port['graph_type'] . '&id=' . $port['port_id'] . '&from=' . $from . '&to=' . Config::get('time.now') . '&width=' . $width . '&height=' . $height . '&legend=no&bg=' . str_replace('#', '', $row_colour) . "'>",
|
|
// $port['graph_type']
|
|
//);
|
|
|
|
echo '</td><td width=135>';
|
|
//echo '' . $port['adslAturCurrSnrMgn'] . 'dB/' . $port['adslAtucCurrSnrMgn'] . 'dB';
|
|
//echo '<br />';
|
|
//$port['graph_type'] = 'port_adsl_snr';
|
|
//echo generate_port_link(
|
|
// $port,
|
|
// "<img src='graph.php?type=" . $port['graph_type'] . '&id=' . $port['port_id'] . '&from=' . $from . '&to=' . Config::get('time.now') . '&width=' . $width . '&height=' . $height . '&legend=no&bg=' . str_replace('#', '', $row_colour) . "'>",
|
|
// $port['graph_type']
|
|
//);
|
|
|
|
echo '</td><td width=135>';
|
|
echo '' . $port['xdsl2LineStatusActAtpDs'] . 'dBm/' . $port['xdsl2LineStatusActAtpUs'] . 'dBm';
|
|
echo '<br />';
|
|
$port['graph_type'] = 'port_vdsl_power';
|
|
echo generate_port_link(
|
|
$port,
|
|
"<img src='graph.php?type=" . $port['graph_type'] . '&id=' . $port['port_id'] . '&from=' . $from . '&to=' . Config::get('time.now') . '&width=' . $width . '&height=' . $height . '&legend=no&bg=' . str_replace('#', '', $row_colour) . "'>",
|
|
$port['graph_type']
|
|
);
|
|
|
|
echo '</td>';
|