mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Remove now obsolete memcached code in: html/ajax_rulesuggest.php Remove all the broken memcached code in: html/pages/device/health/mempool.inc.php html/pages/device/overview/generic/sensor.inc.php html/pages/device/overview/mempools.inc.php html/pages/device/port.inc.php html/pages/device/ports.inc.php html/pages/health/sensors.inc.php includes/polling/functions.inc.php includes/polling/mempools.inc.php includes/polling/ports.inc.php includes/polling/storage.inc.php
147 lines
4.7 KiB
PHP
147 lines
4.7 KiB
PHP
<?php
|
|
|
|
if ($vars['view'] == 'graphs' || $vars['view'] == 'minigraphs') {
|
|
if (isset($vars['graph'])) {
|
|
$graph_type = 'port_'.$vars['graph'];
|
|
}
|
|
else {
|
|
$graph_type = 'port_bits';
|
|
}
|
|
}
|
|
|
|
if (!$vars['view']) {
|
|
$vars['view'] = trim($config['ports_page_default'], '/');
|
|
}
|
|
|
|
$link_array = array(
|
|
'page' => 'device',
|
|
'device' => $device['device_id'],
|
|
'tab' => 'ports',
|
|
);
|
|
|
|
print_optionbar_start();
|
|
|
|
$menu_options['basic'] = 'Basic';
|
|
$menu_options['details'] = 'Details';
|
|
$menu_options['arp'] = 'ARP Table';
|
|
|
|
if (dbFetchCell("SELECT * FROM links AS L, ports AS I WHERE I.device_id = '".$device['device_id']."' AND I.port_id = L.local_port_id")) {
|
|
$menu_options['neighbours'] = 'Neighbours';
|
|
}
|
|
|
|
if (dbFetchCell("SELECT COUNT(*) FROM `ports` WHERE `ifType` = 'adsl'")) {
|
|
$menu_options['adsl'] = 'ADSL';
|
|
}
|
|
|
|
$sep = '';
|
|
foreach ($menu_options as $option => $text) {
|
|
echo $sep;
|
|
if ($vars['view'] == $option) {
|
|
echo "<span class='pagemenu-selected'>";
|
|
}
|
|
|
|
echo generate_link($text, $link_array, array('view' => $option));
|
|
if ($vars['view'] == $option) {
|
|
echo '</span>';
|
|
}
|
|
|
|
$sep = ' | ';
|
|
}
|
|
|
|
unset($sep);
|
|
|
|
echo ' | Graphs: ';
|
|
|
|
$graph_types = array(
|
|
'bits' => 'Bits',
|
|
'upkts' => 'Unicast Packets',
|
|
'nupkts' => 'Non-Unicast Packets',
|
|
'errors' => 'Errors',
|
|
'etherlike' => 'Etherlike',
|
|
);
|
|
|
|
foreach ($graph_types as $type => $descr) {
|
|
echo "$type_sep";
|
|
if ($vars['graph'] == $type && $vars['view'] == 'graphs') {
|
|
echo "<span class='pagemenu-selected'>";
|
|
}
|
|
|
|
echo generate_link($descr, $link_array, array('view' => 'graphs', 'graph' => $type));
|
|
if ($vars['graph'] == $type && $vars['view'] == 'graphs') {
|
|
echo '</span>';
|
|
}
|
|
|
|
echo ' (';
|
|
if ($vars['graph'] == $type && $vars['view'] == 'minigraphs') {
|
|
echo "<span class='pagemenu-selected'>";
|
|
}
|
|
|
|
echo generate_link('Mini', $link_array, array('view' => 'minigraphs', 'graph' => $type));
|
|
if ($vars['graph'] == $type && $vars['view'] == 'minigraphs') {
|
|
echo '</span>';
|
|
}
|
|
|
|
echo ')';
|
|
$type_sep = ' | ';
|
|
}//end foreach
|
|
|
|
print_optionbar_end();
|
|
|
|
if ($vars['view'] == 'minigraphs') {
|
|
$timeperiods = array(
|
|
'-1day',
|
|
'-1week',
|
|
'-1month',
|
|
'-1year',
|
|
);
|
|
$from = '-1day';
|
|
echo "<div style='display: block; clear: both; margin: auto; min-height: 500px;'>";
|
|
unset($seperator);
|
|
|
|
// FIXME - FIX THIS. UGLY.
|
|
foreach (dbFetchRows('select * from ports WHERE device_id = ? ORDER BY ifIndex', array($device['device_id'])) as $port) {
|
|
echo "<div style='display: block; padding: 3px; margin: 3px; min-width: 183px; max-width:183px; min-height:90px; max-height:90px; text-align: center; float: left; background-color: #e9e9e9;'>
|
|
<div style='font-weight: bold;'>".makeshortif($port['ifDescr']).'</div>
|
|
<a href="'.generate_port_url($port)."\" onmouseover=\"return overlib('\
|
|
<div style=\'font-size: 16px; padding:5px; font-weight: bold; color: #e5e5e5;\'>".$device['hostname'].' - '.$port['ifDescr'].'</div>\
|
|
'.$port['ifAlias']." \
|
|
<img src=\'graph.php?type=".$graph_type.'&id='.$port['port_id'].'&from='.$from.'&to='.$config['time']['now']."&width=450&height=150\'>\
|
|
', CENTER, LEFT, FGCOLOR, '#e5e5e5', BGCOLOR, '#e5e5e5', WIDTH, 400, HEIGHT, 150);\" onmouseout=\"return nd();\" >"."<img src='graph.php?type=".$graph_type.'&id='.$port['port_id'].'&from='.$from.'&to='.$config['time']['now']."&width=180&height=45&legend=no'>
|
|
</a>
|
|
<div style='font-size: 9px;'>".truncate(short_port_descr($port['ifAlias']), 32, '').'</div>
|
|
</div>';
|
|
}
|
|
|
|
echo '</div>';
|
|
}
|
|
else if ($vars['view'] == 'arp' || $vars['view'] == 'adsl' || $vars['view'] == 'neighbours') {
|
|
include 'ports/'.$vars['view'].'.inc.php';
|
|
}
|
|
else {
|
|
if ($vars['view'] == 'details') {
|
|
$port_details = 1;
|
|
}
|
|
|
|
echo "<div style='margin: 0px;'><table class='table'>";
|
|
$i = '1';
|
|
|
|
global $port_cache, $port_index_cache;
|
|
|
|
$ports = dbFetchRows("SELECT * FROM `ports` WHERE `device_id` = ? AND `deleted` = '0' ORDER BY `ifIndex` ASC", array($device['device_id']));
|
|
// As we've dragged the whole database, lets pre-populate our caches :)
|
|
// FIXME - we should probably split the fetching of link/stack/etc into functions and cache them here too to cut down on single row queries.
|
|
foreach ($ports as $port) {
|
|
$port_cache[$port['port_id']] = $port;
|
|
$port_index_cache[$port['device_id']][$port['ifIndex']] = $port;
|
|
}
|
|
|
|
foreach ($ports as $port) {
|
|
include 'includes/print-interface.inc.php';
|
|
$i++;
|
|
}
|
|
|
|
echo '</table></div>';
|
|
}//end if
|
|
|
|
$pagetitle[] = 'Ports';
|