diff --git a/html/pages/device/ports.inc.php b/html/pages/device/ports.inc.php index 9a009bec00..c038120292 100644 --- a/html/pages/device/ports.inc.php +++ b/html/pages/device/ports.inc.php @@ -123,8 +123,19 @@ else { if ($vars['view'] == 'details') { $port_details = 1; } +?> +
+ + + + + + + + + +
">Port">TrafficSpeedMediaMac Address
"; $i = '1'; global $port_cache, $port_index_cache; @@ -132,9 +143,20 @@ else { $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) { + + foreach ($ports as $key => $port) { $port_cache[$port['port_id']] = $port; $port_index_cache[$port['device_id']][$port['ifIndex']] = $port; + $ports[$key]["ifOctets_rate"] = $port["ifInOctets_rate"] + $port["ifOutOctets_rate"]; + } + + switch ($vars["sort"]) { + case 'traffic': + $ports = array_sort($ports, 'ifOctets_rate', SORT_DESC); + break; + default: + $ports = array_sort($ports, 'ifIndex', SORT_ASC); + break; } foreach ($ports as $port) {