}else{
				$ifstat = "alrm";
			}
		}else{
			$ifstat = "imga";
		}
		if($rport == $po){$rpimg = "<img src=\"img/16/home.png\" title=Rootport>";}
		if($pstate[$po] == 1 or $pstate[$po] == "disabled"){$pst = "<img src=\"img/16/bcls.png\" title=\"STP disabled\">";}
		elseif($pstate[$po] == 2 or $pstate[$po] == "blocking"){$pst = "<img src=\"img/16/bstp.png\" title=\"STP blocking\">";}
		elseif($pstate[$po] == 3 or $pstate[$po] == "listening"){$pst = "<img src=\"img/16/bup.png\" title=\"STP listening\">";}
		elseif($pstate[$po] == 4 or $pstate[$po] == "learning"){$pst = "<img src=\"img/16/brld.png\" title=\"STP learning\">";}
		elseif($pstate[$po] == 5 or $pstate[$po] == "forwarding"){$pst = "<img src=\"img/16/brgt.png\" title=\"STP forwarding\">";}
		else{$pst = "<img src=\"img/16/bcls.png\" title=\"broken\">";}

		$ui = urlencode($ifn[$ix]);
		list($ifimg,$iftit) = Iftype($ift[$ix]);
		TblRow($bg);
		echo "<th class=\"$ifstat\" width=\"20\"><img src=\"img/$ifimg\" title=\"$ix - $iftit\"></th>\n";
		echo "<th class=\"$bi\"  width=\"20\">$pst $sten $rpimg</th><td>\n";
		if($ifstat == "good" and $guiauth != 'none' and !isset($_GET['print'])){
			echo "<div style=\"font-weight: bold\" class=\"blu\" title=\"$rltlbl $trflbl\" onclick=\"window.open('inc/rt-popup.php?d=$debug&ip=$ip&v=$rv&c=$rc&i=$ix&t=$ud&in=$ui','$ip_$ix','scrollbars=0,menubar=0,resizable=1,width=600,height=400')\">$ifn[$ix]</div></td>\n";
		}else{
			echo "<b>$ifn[$ix]</b></td>\n";
		}
		echo "<td align=\"right\">$pcost[$po]</td><td align=\"right\">".DecFix($ifs[$ix])."</td><td>$ifi[$ix]</td>\n";
		if($shg){
			echo "<td nowrap align=\"center\">\n";
			IfGraphs($ud, $ui, $ifs[$i], ($_SESSION['gsiz'] == 4)?2:1 );
			echo "</td>";
		}
		echo "</tr>\n";
Example #2
0
function StatusIf($loc, $mode)
{
    global $link, $rrdstep, $trfa, $modgroup, $self, $trflbl, $errlbl, $inblbl, $oublbl, $tim, $firstmsg;
    if ($mode == "brup") {
        $label = "{$inblbl} {$errlbl}";
        $query = GenQuery('interfaces', 's', 'device,ifname,speed,iftype,dinerr', 'dinerr desc', $_SESSION['lim'], array('dinerr', 'iftype', 'location'), array('>', '!=', 'like'), array("{$rrdstep}", '71', $loc), array('AND', 'AND'), 'JOIN devices USING (device)');
    } elseif ($mode == "brdn") {
        $label = "{$oublbl} {$errlbl}";
        $query = GenQuery('interfaces', 's', 'device,ifname,speed,iftype,douterr', 'douterr desc', $_SESSION['lim'], array('douterr', 'iftype', 'location'), array('>', '!=', 'like'), array("{$rrdstep}", '71', $loc), array('AND', 'AND'), 'JOIN devices USING (device)');
    } elseif ($mode == "bbup") {
        $label = "{$inblbl} {$trflbl}";
        $query = GenQuery('interfaces', 's', "device,ifname,speed,iftype,dinoct/speed/{$rrdstep}*800", 'dinoct/speed desc', $_SESSION['lim'], array('speed', "dinoct/speed/{$rrdstep}*800", 'location'), array('>', '>', 'like'), array(0, $trfa, $loc), array('AND', 'AND'), 'JOIN devices USING (device)');
    } elseif ($mode == "bbdn") {
        $label = "{$inblbl} {$trflbl}";
        $query = GenQuery('interfaces', 's', "device,ifname,speed,iftype,doutoct/speed/{$rrdstep}*800", 'doutoct/speed desc', $_SESSION['lim'], array('speed', "doutoct/speed/{$rrdstep}*800", 'location'), array('>', '>', 'like'), array(0, $trfa, $loc), array('AND', 'AND'), 'JOIN devices USING (device)');
    } elseif ($mode == "bdis") {
        $label = "Disabled {$tim['t']}";
        $query = GenQuery('interfaces', 's', 'device,ifname,speed,iftype,ifstat,lastchg', 'lastchg desc', $_SESSION['lim'], array('ifstat', 'iftype', 'lastchg', 'location'), array('=', '!=', '>', 'like'), array('0', '53', $firstmsg, $loc), array('AND', 'AND'), 'JOIN devices USING (device)');
    }
    $res = DbQuery($query, $link);
    if ($res) {
        $nr = DbNumRows($res);
        if ($nr) {
            ?>
<p>
<table class="content"><tr class="<?php 
            echo $modgroup[$self];
            ?>
2">
<th colspan="2"><img src="img/16/port.png" title="Top <?php 
            echo $_SESSION['lim'];
            ?>
"><br>Interface</th><th><img src="img/16/<?php 
            echo $mode;
            ?>
.png" title="<?php 
            echo $label;
            ?>
"><br><?php 
            echo substr($label, 0, 3);
            ?>
</th>
<?php 
            $row = 0;
            while ($r = DbFetchRow($res)) {
                if ($row % 2) {
                    $bg = "txta";
                    $bi = "imga";
                    $off = 200;
                } else {
                    $bg = "txtb";
                    $bi = "imgb";
                    $off = 185;
                }
                $row++;
                $bg3 = sprintf("%02x", $off);
                $tb = $type ? $r[4] * 5 : ($r[4] - $trfa) * 2;
                if ($tb > 55) {
                    $tb = 55;
                }
                $rb = sprintf("%02x", $tb + $off);
                $t = substr($r[0], 0, strpos($r[0], '.'));
                $t = strlen($t) < 4 ? $r[0] : $t;
                $ud = urlencode($r[0]);
                $ui = urlencode($r[1]);
                if ($mode == "bdis") {
                    $rb = $bg3;
                    $stat = date($_SESSION['date'], $r[5]);
                } elseif ($mode == "brup" or $mode == "brdn") {
                    $stat = DecFix($r[4]);
                } else {
                    $stat = sprintf("%1.1f", $r[4]) . " %";
                }
                list($ifimg, $iftit) = Iftype($r[3]);
                echo "<tr class=\"{$bg}\"><th class=\"{$bi}\" width=\"25\"><img src=img/{$ifimg} title=\"{$iftit}\">";
                if ($_SESSION['gsiz'] == 6) {
                    echo "</th><td>{$t} {$r['1']}</td><th bgcolor=\"#{$rb}{$rb}{$bg3}\">";
                } else {
                    echo "</th><td><a href=Devices-Status.php?dev={$ud}&pop=on>{$t}</a> ";
                    echo "<a href=Nodes-List.php?in[]=device&op[]==&st[]={$ud}&co[]=AND&in[]=ifname&op[]==&st[]={$ui}>{$r['1']}</a> " . DecFix($r[2]) . "</td><th bgcolor=\"#{$rb}{$rb}{$bg3}\">\n";
                }
                echo "{$stat}</th></tr>\n";
            }
            echo "</table>\n";
        } elseif (!$_SESSION['gsiz'] or $_SESSION['gsiz'] == 6) {
            ?>
<p><img src="img/32/<?php 
            echo $mode;
            ?>
.png" title="<?php 
            echo $label;
            ?>
" hspace="8"><img src="img/32/bchk.png" title="OK">
<?php 
        }
        DbFreeResult($res);
    } else {
        print DbError($link);
    }
}
    $row = 0;
    foreach (array_keys($r) as $rd) {
        if ($row % 2) {
            $bg = $bga;
            $bi = $bia;
        } else {
            $bg = $bgb;
            $bi = $bib;
        }
        $row++;
        $if = $ina[$r[$rd]['ifx']] . " " . $ial[$r[$rd]['ifx']] . " " . $icm[$r[$rd]['ifx']];
        $spd = ZFix($isp[$r[$rd]['ifx']]);
        $rpimg = RteProto($r[$rd]['pro']);
        $unh = rawurlencode($netif[$r[$rd]['nho']]);
        list($pfix, $msk, $bmsk) = Masker($r[$rd]['msk']);
        list($ifimg, $iftit) = Iftype($ity[$r[$rd]['ifx']]);
        list($ntimg, $ntit) = Nettype($rd);
        echo "<tr bgcolor=#{$bg}>";
        echo "<td bgcolor={$bi} width=20 align=center><img src=img/16/{$ntimg} title={$ntit}></td>\n";
        echo "<td><a href=Topology-Map.php?ina=network&flt={$rd}%2F{$pfix}&draw=1>{$rd}/{$pfix}</a></td>\n";
        echo "<td>" . $r[$rd]['nho'] . " <a href=?rtr={$unh}>" . $netif[$r[$rd]['nho']] . "</a></td><td><img src=img/{$ifimg} title={$iftit} hspace=4> {$if}</td>\n";
        echo "<td align=right>{$spd}</td><td align=center>" . $r[$rd]['me1'] . "</td>\n";
        echo "<td><img src=img/16/{$rpimg}.png> " . $r[$rd]['pro'] . "</td><td align=right>" . $r[$rd]['age'] . "</td>\n";
        echo "</tr>\n";
    }
    echo "</table><table bgcolor=#666666 {$tabtag} >\n";
    echo "<tr bgcolor=#{$bg2}><td>{$row} entries in route table</td></tr></table>\n";
}
include_once "inc/footer.php";
//===================================================================
// Get routes of a device
	if( in_array("graphs",$col) ){echo "<th>Graphs</th>";}
	echo "</tr>\n";

	$link	= @DbConnect($dbhost,$dbuser,$dbpass,$dbname);
	$query	= GenQuery('interfaces','s','*',$ord,'',array($ina,$inb),array($opa,$opb),array($sta,$stb),array($cop) );
	$res	= @DbQuery($query,$link);
	if($res){
		$row = 0;
		while( ($if = @DbFetchRow($res)) ){
			if ($row % 2){$bg = "txta"; $bi = "imga";}else{$bg = "txtb"; $bi = "imgb";}
			$row++;
			$ud = rawurlencode($if[0]);
			$ui = rawurlencode($if[1]);
			echo "<tr class=\"$bg\">";
			if(in_array("ifname",$col)){
				list($ifimg,$iftit)	= Iftype($if[4]);
				echo "<th class=\"$bi\"><img src=\"img/$ifimg\" title=\"$iftit\"></th>";
			}
			echo "<td><a href=Nodes-List.php?ina=device&opa==&sta=$ud&cop=AND&inb=ifname&opb==&stb=$ui>$if[1]</a></td>\n";
			if(in_array("device",$col)){
				echo "<td><a href=Devices-Status.php?dev=$ud>$if[0]</a></td>\n";
			}
			if(in_array("ifidx",$col)){echo "<td align=right>$if[2]</td>";}
			if(in_array("type",$col)){echo "<td align=right>$if[4]</td>";}
			if(in_array("mac",$col)){echo "<td>$if[5]</td>";}
			if(in_array("description",$col)){echo "<td>$if[6]</td>";}
			if(in_array("alias",$col)){echo "<td>$if[7]</td>";}
			if(in_array("status",$col)){echo "<td align=right>$if[8]</td>";}
			if(in_array("speed",$col)){echo "<td align=right>".ZFix($if[9])."</td>";}
			if(in_array("duplex",$col)){echo "<td>$if[10]</td>";}
			if(in_array("vlid",$col)){echo "<td align=right>$if[11]</td>";}
Example #5
0
function IntChart($mode, $dir, $ina, $opa, $sta, $lim, $ord, $opt)
{
    global $link, $modgroup, $self, $rrdstep;
    global $laslbl, $totlbl, $loclbl, $locsep, $conlbl, $srtlbl, $trflbl, $errlbl, $inblbl, $oublbl, $idxlbl, $spdlbl, $acslbl, $nonlbl;
    $unt = "";
    $grf = intval($_SESSION['gsiz'] / 2);
    $dti = $dir == "in" ? $inblbl : $oublbl;
    if ($opt) {
        $pes = 0;
        $d = "";
        $bam = "si";
        $abs = $totlbl;
    } else {
        $pes = 1;
        $d = "d";
        $bam = "mi";
        $abs = $laslbl;
    }
    if ($ord) {
        $ocol = "aval desc";
        $sopt = "";
    } else {
        $ocol = "rval desc";
        $sopt = $mode == "trf" ? "/ {$spdlbl}" : "/ {$trflbl}";
    }
    if ($mode == "trf") {
        $pes = 0;
        $col = "oct";
        $tit = $trflbl;
        $ico = $dir == "in" ? "bbup" : "bbdn";
        if ($opt) {
            $rel = "{$d}{$dir}oct/speed";
        } else {
            $rel = "{$d}{$dir}oct/{$rrdstep}*8000/speed";
        }
        $qry = GenQuery('interfaces', 's', "device,contact,location,icon,ifname,speed,iftype,ifidx,comment,alias,{$d}{$dir}oct as aval,{$rel} as rval", $ocol, $lim, array('speed', $ina), array('>', $opa), array('0', $sta), array('AND'), 'LEFT JOIN devices USING (device)');
    } elseif ($mode == "err") {
        $col = "err";
        $tit = $errlbl;
        $ico = $dir == "in" ? "brup" : "brdn";
        $qry = GenQuery('interfaces', 's', "device,contact,location,icon,ifname,speed,iftype,ifidx,comment,alias,{$d}{$dir}{$col} as aval,{$d}{$dir}{$col}/{$d}{$dir}oct as rval", $ocol, $lim, array('iftype', "{$d}{$dir}{$col}", $ina), array('!=', '>', $opa), array('71', 0, $sta), array('AND', 'AND'), 'LEFT JOIN devices USING (device)');
    } elseif ($mode == "dsc") {
        $col = "dis";
        $tit = "Discards";
        $ico = $dir == "in" ? "bbu2" : "bbd2";
        $qry = GenQuery('interfaces', 's', "device,contact,location,icon,ifname,speed,iftype,ifidx,comment,alias,{$d}{$dir}{$col} as aval,{$d}{$dir}{$col}/{$d}{$dir}oct as rval", $ocol, $lim, array('iftype', "{$d}{$dir}{$col}", $ina), array('!=', '>', $opa), array('71', 0, $sta), array('AND', 'AND'), 'LEFT JOIN devices USING (device)');
    } elseif ($mode == "brc") {
        $tit = "{$acslbl} Broadcasts";
        $ico = "wlan";
        $qry = GenQuery('interfaces', 's', "device,contact,location,icon,ifname,speed,iftype,ifidx,comment,alias,{$d}inbrc as aval,{$d}inbrc/{$d}inoct as rval", $ocol, $lim, array('comment', "{$d}inoct", $ina), array('!~', '>', $opa), array('DP:|MAC:', 0, $sta), array('AND', 'AND'), 'LEFT JOIN devices USING (device)');
    }
    echo "<h2>{$abs} {$tit} {$dti}</h2>\n";
    $res = DbQuery($qry, $link);
    if (DbNumRows($res)) {
        ?>
<table class="content">
<tr class="<?php 
        echo $modgroup[$self];
        ?>
2">
<th colspan="2" width="30%"><img src="img/16/dev.png"><br>Device</th>
<th><img src="img/16/port.png"><br>IF</th>
<th colspan="2"><img src="img/16/<?php 
        echo $ico;
        ?>
.png"><br><?php 
        echo $tit;
        ?>
 </th>
</tr>
<?php 
        $row = 0;
        while ($r = DbFetchRow($res)) {
            if ($row % 2) {
                $bg = "txta";
                $bi = "imga";
            } else {
                $bg = "txtb";
                $bi = "imgb";
            }
            $row++;
            $ud = urlencode($r[0]);
            $ui = urlencode($r[4]);
            $l = explode($locsep, $r[2]);
            list($ifimg, $iftyp) = Iftype($r[6]);
            if ($grf) {
                if ($mode == "trf") {
                    $gop = $r[5];
                } elseif ($mode == "err") {
                    $gop = 1;
                } else {
                    $gop = 0;
                }
                $gr = "<img src=\"inc/drawrrd.php?dv={$ud}&if%5B%5D={$ui}&s={$grf}&t={$mode}&o={$gop}\" title=\"" . ($pes ? round($r[10] / $rrdstep, 1) . '/s' : DecFix($r[10])) . "\">";
            } else {
                $gr = DecFix($r[10]);
            }
            TblRow($bg);
            echo "<th class=\"{$bi}\"><a href=\"Devices-Status.php?dev={$ud}\"><img src=\"img/dev/{$r['3']}.png\" title=\"{$conlbl}: {$r['1']}, {$loclbl}: {$l['0']} {$l['1']} {$l['2']}\"></a></th>\n";
            echo "<td><b>" . substr($r[0], 0, $_SESSION['lsiz']) . "</b></td>\n";
            echo "<td><img src=\"img/{$ifimg}\" title=\"{$iftyp} {$idxlbl} {$r['7']}\"><a href=\"Nodes-List.php?in[]=device&op[]==&st[]={$ud}&co[]=AND&in[]=ifname&op[]==&st[]={$ui}\">{$r['4']}</a> " . DecFix($r[5]) . " {$r['8']} {$r['9']}</td>\n";
            echo "<th><a href=\"Devices-Graph.php?dv={$ud}&if%5B%5D={$ui}&it%5B%5D=" . substr($mode, 0, 1) . "\">{$gr}</a></th>\n";
            echo "<td nowrap>";
            if ($mode == "trf" and !$opt) {
                echo Bar($r[11] / 10, 45) . ' ' . round($r[11] / 10, 1) . '%';
            } elseif ($mode == "brc") {
                echo Bar($r[10], "lvl100", $bam) . " " . DecFix($r[10]);
            } else {
                echo Bar($r[10], 10, $bam) . " " . DecFix($r[10]);
            }
            echo "</td></tr>\n";
        }
        ?>
</table>
<table class="content" >
<tr class="<?php 
        echo $modgroup[$self];
        ?>
2"><td><?php 
        echo $row;
        ?>
 IF, <?php 
        echo $srtlbl;
        ?>
: <?php 
        echo $tit;
        ?>
 <?php 
        echo $sopt;
        ?>
</td></tr>
</table>
<p>
<?php 
    } else {
        echo "<h5>{$nonlbl}</h5>";
    }
}
Example #6
0
function StatusIf($mode)
{
    global $link, $lim, $rrdstep, $trfa, $tabtag, $bia, $bib, $bg2;
    if ($mode == "ie") {
        $doerr = 1;
        $query = GenQuery('interfaces', 's', 'device,ifname,speed,type,dinerr', 'dinerr desc', $lim, array('dinerr'), array('>'), array("{$rrdstep}"));
        $label = "In Err";
        $btn = "rbup";
    } elseif ($mode == "oe") {
        $doerr = 1;
        $query = GenQuery('interfaces', 's', 'device,ifname,speed,type,douterr', 'douterr desc', $lim, array('douterr'), array('>'), array("{$rrdstep}"));
        $label = "Out Err";
        $btn = "rbdn";
    } elseif ($mode == "it") {
        $doerr = 0;
        $query = GenQuery('interfaces', 's', "device,ifname,speed,type,dinoct*800/speed/{$rrdstep}", 'dinoct/speed desc', $lim, array("dinoct*800/speed/{$rrdstep}"), array('>'), array($trfa));
        $label = "In Octets";
        $btn = "bbup";
    } elseif ($mode == "ot") {
        $doerr = 0;
        $query = GenQuery('interfaces', 's', "device,ifname,speed,type,doutoct*800/speed/{$rrdstep}", 'doutoct/speed desc', $lim, array("doutoct*800/speed/{$rrdstep}"), array('>'), array($trfa));
        $label = "Out Octets";
        $btn = "bbdn";
    }
    $res = @DbQuery($query, $link);
    if ($res) {
        $nr = @DbNumRows($res);
        if ($nr) {
            ?>
	<p><table bgcolor=#666666 cellspacing=1 cellpadding=2 width=100% ><tr bgcolor=<?php 
            echo $bg2;
            ?>
>
	<th colspan=2><img src=img/16/dumy.png title="Top <?php 
            echo $lim;
            ?>
"><br>Interface</th><th><img src=img/16/<?php 
            echo $btn;
            ?>
.png><br><?php 
            echo $label;
            ?>
</th>
	<?php 
            $row = 0;
            while ($t = @DbFetchRow($res)) {
                if ($row % 2) {
                    $off = 180;
                    $bi = $bib;
                } else {
                    $off = 195;
                    $bi = $bia;
                }
                $row++;
                $bg3 = sprintf("%02x", $off);
                $tb = $doerr ? $t[4] * 5 : ($t[4] - $trfa) * 2;
                if ($tb > 55) {
                    $tb = 55;
                }
                $rb = sprintf("%02x", $tb + $off);
                $ud = rawurlencode($t[0]);
                $ui = rawurlencode($t[1]);
                list($ifimg, $iftit) = Iftype($t[3]);
                echo "<tr bgcolor=#{$rb}{$bg3}{$bg3}><th bgcolor=#{$bi}><img src=img/{$ifimg} title=\"{$iftit}\">";
                echo "</th><td><a href=Devices-Status.php?dev={$ud}&shg=on&shp=on>{$t['0']}</a> ";
                echo "<a href=Nodes-List.php?ina=device&opa==&sta={$ud}&cop=AND&inb=ifname&opb==&stb={$ui}>{$t['1']}</a></td>\n";
                if ($doerr) {
                    echo "<th>{$t['4']}</th></tr>\n";
                } else {
                    echo "<th>" . sprintf("%1.1f", $t[4]) . " %</th></tr>\n";
                }
            }
            echo "</table>\n";
        } else {
            ?>
<p><img src=img/32/<?php 
            echo $btn;
            ?>
.png title="<?php 
            echo $label;
            ?>
" hspace=8><img src=img/32/bchk.png title="OK"><?php 
        }
        @DbFreeResult($res);
    } else {
        print @DbError($link);
    }
}
Example #7
0
			if(in_array("arpval",$col)){	TblCell($n[15],"?in[]=arpval&op[]==&st[]=$n[15]","align=\"right\"");}
			if(in_array("firstseen",$col)){
				TblCell(date($datfmt,$n[4]),"?in[]=firstseen&op[]==&st[]=$n[4]","nowrap bgcolor=\"#$fc\"");
			}
			if(in_array("lastseen",$col)){
				TblCell(date($datfmt,$n[5]),"?in[]=lastseen&op[]==&st[]=$n[5]","nowrap bgcolor=\"#$lc\"");			
			}
			if( in_array("device",$col) ){
				TblCell($n[6],"?in[]=device&op[]==&st[]=$ud&ord=ifname","nowrap","<a href=\"Devices-Status.php?dev=$ud&pop=on\"><img src=\"img/16/sys.png\"></a>");
			}
			if(in_array("type",$col)){	TblCell( $n[23],"?in[]=type&op[]==&st[]=".urlencode($n[23]) );}
			if(in_array("location",$col)){	TblCell( $n[24],"?in[]=location&op[]==&st[]=".urlencode($n[24]) );}
			if(in_array("contact",$col)){	TblCell( $n[25],"?in[]=contact&op[]==&st[]=".urlencode($n[25]) );}

			if( in_array("ifname",$col) ){
				list($ifimg,$iftit) = Iftype($n[26]);
				list($ifbg,$ifst)   = Ifdbstat($n[29]);
				TblCell($n[7],"?in[]=device&op[]==&in[]=ifname&op[]==&st[]=$ud&co[]=AND&st[]=$ui","class=\"$ifbg\"","<img src=\"img/$ifimg\" title=\"$iftit, $ifst\">",'td-img');
			}
			if(in_array("ifdesc",$col)){	TblCell($n[27]);}
			if(in_array("alias",$col)){	TblCell($n[28]);}
			if(in_array("speed",$col)){	TblCell( DecFix($n[30]),"","align=\"right\"" );}
			if(in_array("duplex",$col))	{TblCell($n[31]);}
			if(in_array("vlanid",$col))	{TblCell( ($n[9] < 255)?"SSID:$n[8]":$n[8],"?in[]=vlanid&op[]==&st[]=$n[8]","align=\"right\"");}
			if(in_array("pvid",$col))	{TblCell( ($n[9] < 255)?"CH:$n[32]":$n[32],"?in[]=vlanid&op[]==&st[]=$n[8]","align=\"right\"");}
			if(in_array("ifmetric",$col)){	TblCell( (($n[9] < 255)?Bar($n[9],-30,'mi')." $n[9]db":"$n[9]"),"?in[]=ifmetric&op[]==&st[]=$n[9]","nowrap" );}
			if(in_array("ifupdate",$col)){
				list($i1c,$i2c) = Agecol($n[10],$n[10],$row % 2);
				TblCell( date($datfmt,$n[10]),"","nowrap bgcolor=\"#$i1c\"");
			}
			if(in_array("ifchanges",$col)){	TblCell($n[11],"?in[]=ifchanges&op[]==&st[]=$n[11]");}