/>


/>


Reset

Lists » '); $menu_options = array('basic' => 'Basic', 'detail' => 'Detail'); $sep = ""; foreach ($menu_options as $option => $text) { echo($sep); if ($vars['format'] == "list_".$option) { echo(""); } echo('' . $text . ''); if ($vars['format'] == "list_".$option) { echo(""); } $sep = " | "; } ?> | Graphs » 'Bits', 'upkts' => 'Unicast Packets', 'nupkts' => 'Non-Unicast Packets', 'errors' => 'Errors'); $sep = ""; foreach ($menu_options as $option => $text) { echo($sep); if ($vars['format'] == 'graph_'.$option) { echo(''); } echo('' . $text . ''); if ($vars['format'] == 'graph_'.$option) { echo(""); } $sep = " | "; } echo('
'); ?> Update URL | '')).'">Search'); } else { echo('Search'); } echo(" | "); if ($vars['bare'] == "yes") { echo('Header'); } else { echo('Header'); } echo('
'); print_optionbar_end(); $param = array(); # FIXME block below is not totally used, at least the iftype stuff is bogus? #if ($vars['status'] == "down" || $_GET['type'] == "down" || $vars['state'] == "down") #{ # $where .= "AND I.ifAdminStatus = 'up' AND I.ifOperStatus = 'down' AND I.ignore = '0'"; #} #if ($_GET['optb'] == "admindown" || $_GET['type'] == "admindown" || $vars['state'] == "admindown") { # $where .= "AND I.ifAdminStatus = 'down'"; #} #if ($_GET['optb'] == "errors" || $_GET['type'] == "errors" || $vars['state'] == "errors") { # $where .= "AND (I.`ifInErrors_delta` > '0' OR I.`ifOutErrors_delta` > '0')"; #} #if ($vars['state'] == "up") { # $where .= "AND I.ifOperStatus = 'up'"; #} if(!isset($vars['ignore'])) { $vars['ignore'] = "0"; } if(!isset($vars['disabled'])) { $vars['disabled'] = "0"; } if(!isset($vars['deleted'])) { $vars['deleted'] = "0"; } foreach ($vars as $var => $value) { if ($value != "") { switch ($var) { case 'hostname': case 'location': $where .= " AND D.$var LIKE ?"; $param[] = "%".$value."%"; case 'device_id': case 'deleted': case 'ignore': case 'disable': case 'ifSpeed': if (is_numeric($value)) { $where .= " AND I.$var = ?"; $param[] = $value; } break; case 'ifType': $where .= " AND I.$var = ?"; $param[] = $value; break; case 'ifAlias': case 'port_descr_type': $where .= " AND I.$var LIKE ?"; $param[] = "%".$value."%"; break; case 'errors': if ($value == 1) { $where .= " AND (I.`ifInErrors_delta` > '0' OR I.`ifOutErrors_delta` > '0')"; } break; case 'state': if ($value == "down") { $where .= "AND I.ifAdminStatus = ? AND I.ifOperStatus = ?"; $param[] = "up"; $param[] = "down"; } elseif($value == "up") { $where .= "AND I.ifAdminStatus = ? AND I.ifOperStatus = ?"; $param[] = "up"; $param[] = "up"; } elseif($value == "admindown") { $where .= "AND I.ifAdminStatus = ?"; $param[] = "down"; } break; } } } switch ($vars['sort']) { case 'traffic': $query_sort = " ORDER BY (I.ifInOctets_rate+I.ifOutOctets_rate) DESC"; break; case 'traffic_in': $query_sort = " ORDER BY I.ifInOctets_rate DESC"; break; case 'traffic_out': $query_sort = " ORDER BY I.ifOutOctets_rate DESC"; break; case 'packets': $query_sort = " ORDER BY (I.ifInUcastPkts_rate+I.ifOutUcastPkts_rate) DESC"; break; case 'packets_in': $query_sort = " ORDER BY I.ifInUcastPkts_rate DESC"; break; case 'packets_out': $query_sort = " ORDER BY I.ifOutUcastPkts_rate DESC"; break; case 'errors': $query_sort = " ORDER BY (I.ifInErrors + I.ifOutErrors) DESC"; break; case 'speed': $query_sort = " ORDER BY (I.ifSpeed) DESC"; break; case 'port': $query_sort = " ORDER BY (I.ifDescr) ASC"; break; case 'media': $query_sort = " ORDER BY (I.ifType) ASC"; break; case 'descr': $query_sort = " ORDER BY (I.ifAlias) ASC"; break; case 'device': default: $query_sort = " ORDER BY D.hostname, I.ifIndex ASC"; } $query = "SELECT * FROM `ports` AS I, `devices` AS D WHERE I.device_id = D.device_id ".$where." ".$query_sort; $row = 1; list($format, $subformat) = explode("_", $vars['format']); $ports = dbFetchRows($query, $param); if(file_exists('pages/ports/'.$format.'.inc.php')) { include('pages/ports/'.$format.'.inc.php'); } ?>