2007-04-03 14:10:23 +00:00
< ? php
2011-09-14 13:38:01 +00:00
### Set Defaults here
2007-04-03 14:10:23 +00:00
2011-09-14 13:38:01 +00:00
if ( ! isset ( $vars [ 'format' ])) { $vars [ 'format' ] = " list_basic " ; }
2007-04-03 14:10:23 +00:00
2011-09-15 22:59:11 +00:00
print_optionbar_start ();
2011-09-14 13:38:01 +00:00
if ( $vars [ 'searchbar' ] != " hide " )
{
?>
< table style = " text-align: left; " cellpadding = 0 cellspacing = 5 class = devicetable width = 100 %>
< tr style = 'padding: 0px;' >
< form method = 'post' action = '' >
< td width = '200' >
2011-09-19 11:15:01 +00:00
< select name = 'device_id' id = 'device_id' style = 'width: 180px;' >
2011-09-20 16:03:54 +00:00
< option value = '' > All Devices </ option >
2011-09-14 13:38:01 +00:00
< ? php
foreach ( dbFetchRows ( " SELECT `device_id`,`hostname` FROM `devices` GROUP BY `hostname` ORDER BY `hostname` " ) as $data )
{
2011-09-20 16:03:54 +00:00
echo ( ' <option value="' . $data [ 'device_id' ] . '"' );
2011-09-14 13:38:01 +00:00
if ( $data [ 'device_id' ] == $vars [ 'device_id' ]) { echo ( " selected " ); }
echo ( " > " . $data [ 'hostname' ] . " </option> " );
}
?>
</ select >
2011-09-19 11:15:01 +00:00
< br />
2011-09-20 16:03:54 +00:00
< input type = " hostname " name = " hostname " id = " hostname " title = " Hostname " style = 'width: 180px;' < ? php if ( strlen ( $vars [ 'hostname_text' ])) { echo ( 'value="' . $vars [ 'hostname' ] . '"' );} ?> />
2011-09-14 13:38:01 +00:00
</ td >
2011-09-20 16:03:54 +00:00
< td width = " 120 " >
< select name = " state " id = " state " style = " width: 100px; " >
< option value = " " > All States </ option >
< option value = " up " < ? php if ( $vars [ 'state' ] == " up " ) { echo ( " selected " ); } ?> >Up</option>
< option value = " down " < ? php if ( $vars [ 'state' ] == " down " ) { echo ( " selected " ); } ?> >Down</option>
< option value = " admindown " < ? php if ( $vars [ 'state' ] == " admindown " ) { echo ( " selected " ); } ?> >Shutdown</option>
2011-09-14 13:38:01 +00:00
</ select >
2011-09-19 11:15:01 +00:00
< br />
2011-09-14 14:28:42 +00:00
2011-09-20 16:03:54 +00:00
< select name = " ifSpeed " id = " ifSpeed " style = " width: 100px; " >
< option value = " " > All Speeds </ option >
2011-09-14 13:38:01 +00:00
< ? php
foreach ( dbFetchRows ( " SELECT `ifSpeed` FROM `ports` GROUP BY `ifSpeed` ORDER BY `ifSpeed` " ) as $data )
{
if ( $data [ 'ifSpeed' ])
{
echo ( " <option value=' " . $data [ 'ifSpeed' ] . " ' " );
if ( $data [ 'ifSpeed' ] == $vars [ 'ifSpeed' ]) { echo ( " selected " ); }
echo ( " > " . humanspeed ( $data [ 'ifSpeed' ]) . " </option> " );
}
}
?>
</ select >
</ td >
2011-09-19 11:15:01 +00:00
< td width = 170 >
2011-09-20 16:03:54 +00:00
< select name = " ifType " id = " ifType " style = " width: 150px; " >
< option value = " " > All Media </ option >
2011-09-14 13:38:01 +00:00
< ? php
foreach ( dbFetchRows ( " SELECT `ifType` FROM `ports` GROUP BY `ifType` ORDER BY `ifType` " ) as $data )
{
if ( $data [ 'ifType' ])
{
2011-09-20 16:03:54 +00:00
echo ( ' <option value="' . $data [ 'ifType' ] . '"' );
2011-09-14 13:38:01 +00:00
if ( $data [ 'ifType' ] == $vars [ 'ifType' ]) { echo ( " selected " ); }
echo ( " > " . $data [ 'ifType' ] . " </option> " );
}
}
?>
</ select >
2011-09-14 14:28:42 +00:00
< br />
2011-09-20 16:03:54 +00:00
< select name = " port_descr_type " id = " port_descr_type " style = " width: 150px; " >
< option value = " " > All Port Types </ option >
2011-09-14 14:28:42 +00:00
< ? php
foreach ( dbFetchRows ( " SELECT `port_descr_type` FROM `ports` GROUP BY `port_descr_type` ORDER BY `port_descr_type` " ) as $data )
{
if ( $data [ 'port_descr_type' ])
{
2011-09-20 16:03:54 +00:00
echo ( ' <option value="' . $data [ 'port_descr_type' ] . '"' );
2011-09-14 14:28:42 +00:00
if ( $data [ 'port_descr_type' ] == $vars [ 'port_descr_type' ]) { echo ( " selected " ); }
echo ( " > " . ucfirst ( $data [ 'port_descr_type' ]) . " </option> " );
}
}
?>
2011-09-20 16:03:54 +00:00
</ select >
2011-09-19 11:15:01 +00:00
</ td >
< td >
</ td >
< td width = " 220 " >
2011-09-20 16:03:54 +00:00
< input style = " width: 200px; " title = " Port Description " type = " text " name = " ifAlias " id = " ifAlias " < ? php if ( strlen ( $vars [ 'ifAlias' ])) { echo ( 'value="' . $vars [ 'ifAlias' ] . '"' );} ?> />
2011-09-19 11:15:01 +00:00
< select style = " width: 200px; " name = " location " id = " location " >
< option value = " " > All Locations </ option >
< ? php
### fix me function?
foreach ( getlocations () as $location ) ## FIXME function name sucks maybe get_locations ?
{
if ( $location )
{
echo ( '<option value="' . $location . '"' );
if ( $location == $vars [ 'location' ]) { echo ( " selected " ); }
echo ( " > " . $location . " </option> " );
}
}
?>
</ select >
2011-09-20 16:03:54 +00:00
</ td >
2011-09-14 14:28:42 +00:00
2011-09-20 16:03:54 +00:00
< td width = 80 >
2011-09-19 11:15:01 +00:00
< label for = " ignore " >
< input type = checkbox id = " ignore " name = " ignore " value = 1 < ? php if ( $vars [ 'ignore' ]) { echo ( " checked " ); } ?> ></input> Ignored
</ label >
< br />
< label for = " disable " >
< input type = checkbox id = " disable " name = " disable " value = 1 < ? php if ( $vars [ 'disable' ]) { echo ( " checked " ); } ?> > Disabled</input>
</ label >
< br />
< label for = " deleted " >
< input type = checkbox id = " deleted " name = " deleted " value = 1 < ? php if ( $vars [ 'deleted' ]) { echo ( " checked " ); } ?> > Deleted</input>
</ label >
2011-09-14 13:38:01 +00:00
</ td >
2011-09-19 11:15:01 +00:00
< td style = " text-align: center; " width = 50 >
< input style = " align:right; padding: 10px; " type = submit class = submit value = Search ></ div >
< br />
< a href = " <?php echo(generate_url(array('page' => 'ports', 'section' => $vars['section'] , 'bare' => $vars['bare'] ))); ?> " title = " Reset critera to default. " > Reset </ a >
2011-09-20 16:03:54 +00:00
</ td >
</ form >
</ tr >
2011-09-14 13:38:01 +00:00
</ table >
< hr />
< ? php }
echo ( '<span style="font-weight: bold;">Lists</span> » ' );
$menu_options = array ( 'basic' => 'Basic' ,
'detail' => 'Detail' );
$sep = " " ;
foreach ( $menu_options as $option => $text )
{
echo ( $sep );
if ( $vars [ 'format' ] == " list_ " . $option )
{
echo ( " <span class='pagemenu-selected'> " );
}
echo ( '<a href="' . generate_url ( $vars , array ( 'format' => " list_ " . $option )) . '">' . $text . '</a>' );
if ( $vars [ 'format' ] == " list_ " . $option )
{
echo ( " </span> " );
}
$sep = " | " ;
}
?>
2011-09-20 09:55:11 +00:00
|
2011-09-14 13:38:01 +00:00
2011-09-20 09:55:11 +00:00
< span style = " font-weight: bold; " > Graphs </ span > & #187;
2011-09-14 13:38:01 +00:00
< ? php
2011-09-15 23:05:06 +00:00
$menu_options = array ( 'bits' => 'Bits' ,
2011-09-14 13:38:01 +00:00
'upkts' => 'Unicast Packets' ,
'nupkts' => 'Non-Unicast Packets' ,
'errors' => 'Errors' );
$sep = " " ;
foreach ( $menu_options as $option => $text )
{
echo ( $sep );
if ( $vars [ 'format' ] == 'graph_' . $option )
{
2011-09-20 16:03:54 +00:00
echo ( '<span class="pagemenu-selected">' );
2011-09-14 13:38:01 +00:00
}
echo ( '<a href="' . generate_url ( $vars , array ( 'format' => 'graph_' . $option )) . '">' . $text . '</a>' );
if ( $vars [ 'format' ] == 'graph_' . $option )
{
echo ( " </span> " );
}
$sep = " | " ;
}
echo ( '<div style="float: right;">' );
2011-09-19 11:15:01 +00:00
?>
2011-09-20 09:55:11 +00:00
< a href = " <?php echo(generate_url( $vars )); ?> " title = " Update the browser URL to reflect the search criteria. " > Update URL </ a > |
2011-09-14 13:38:01 +00:00
2011-09-19 11:15:01 +00:00
< ? php
2011-09-20 16:03:54 +00:00
if ( $vars [ 'searchbar' ] == " hide " )
2011-09-14 13:38:01 +00:00
{
2011-09-14 14:58:49 +00:00
echo ( '<a href="' . generate_url ( $vars , array ( 'searchbar' => '' )) . '">Search</a>' );
2011-09-14 13:38:01 +00:00
} else {
2011-09-14 14:58:49 +00:00
echo ( '<a href="' . generate_url ( $vars , array ( 'searchbar' => 'hide' )) . '">Search</a>' );
2011-09-14 13:38:01 +00:00
}
echo ( " | " );
2011-09-20 16:03:54 +00:00
if ( $vars [ 'bare' ] == " yes " )
2011-09-14 13:38:01 +00:00
{
2011-09-14 14:58:49 +00:00
echo ( '<a href="' . generate_url ( $vars , array ( 'bare' => '' )) . '">Header</a>' );
2011-09-14 13:38:01 +00:00
} else {
2011-09-14 14:58:49 +00:00
echo ( '<a href="' . generate_url ( $vars , array ( 'bare' => 'yes' )) . '">Header</a>' );
2011-09-14 13:38:01 +00:00
}
echo ( '</div>' );
print_optionbar_end ();
#if ($_SESSION['userlevel'] >= '5') {
# $sql = "SELECT * FROM `ports` AS I, `devices` AS D WHERE I.device_id = D.device_id ORDER BY D.hostname, I.ifDescr";
#} else {
# $sql = "SELECT * FROM `ports` AS I, `devices` AS D, `devices_perms` AS P WHERE I.device_id = D.device_id AND D.device_id = P.device_id AND P.user_id = '" . $_SESSION['user_id'] . "' ORDER BY D.hostname, I.ifDescr";
#}
$param = array ();
# FIXME block below is not totally used, at least the iftype stuff is bogus?
2011-09-19 11:15:01 +00:00
#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'";
#}
2011-09-14 13:38:01 +00:00
2011-09-19 11:15:01 +00:00
if ( ! isset ( $vars [ 'ignore' ])) { $vars [ 'ignore' ] = " 0 " ; }
if ( ! isset ( $vars [ 'disabled' ])) { $vars [ 'disabled' ] = " 0 " ; }
if ( ! isset ( $vars [ 'deleted' ])) { $vars [ 'deleted' ] = " 0 " ; }
2011-09-14 14:28:42 +00:00
2011-09-19 11:15:01 +00:00
foreach ( $vars as $var => $value )
2011-09-14 13:38:01 +00:00
{
2011-09-20 16:03:54 +00:00
if ( $value != " " )
2011-09-19 11:15:01 +00:00
{
2011-09-20 16:03:54 +00:00
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' :
2011-09-19 11:15:01 +00:00
$where .= " AND I. $var = ? " ;
$param [] = $value ;
2011-09-20 16:03:54 +00:00
break ;
case 'ifAlias' :
case 'port_descr_type' :
$where .= " AND I. $var LIKE ? " ;
$param [] = " % " . $value . " % " ;
break ;
2011-09-26 12:16:05 +00:00
case 'errors' :
if ( $value == 1 )
{
$where .= " AND (I.`ifInErrors_delta` > '0' OR I.`ifOutErrors_delta` > '0') " ;
}
break ;
2011-09-20 16:03:54 +00:00
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 " ;
}
2011-09-19 11:15:01 +00:00
break ;
2011-09-20 16:03:54 +00:00
}
}
2011-09-14 13:38:01 +00:00
}
$query = " SELECT * FROM `ports` AS I, `devices` AS D WHERE I.device_id = D.device_id " . $where . " ORDER BY D.hostname, I.ifIndex " ;
$row = 1 ;
list ( $format , $subformat ) = explode ( " _ " , $vars [ 'format' ]);
2011-09-19 11:15:01 +00:00
$ports = dbFetchRows ( $query , $param );
2011-09-14 13:38:01 +00:00
if ( file_exists ( 'pages/ports/' . $format . '.inc.php' ))
{
include ( 'pages/ports/' . $format . '.inc.php' );
}
?>