***********************
** FILE NAME : parameter.php
** SYSTEM NAME : Gnucomo - Gnu Computer Monitoring
-** VERSION NUMBER : $Revision: 1.3 $
+** VERSION NUMBER : $Revision: 1.6 $
**
** DESCRIPTION :
**
********************************
** ORIGINAL AUTHOR : Arjen Baart - arjen@andromeda.nl
** CREATION DATE : Dec 04, 2002
-** LAST UPDATE : Feb 08, 2003
+** LAST UPDATE : Aug 04, 2003
** MODIFICATIONS :
**************************************************************************/
/*****************************
$Log: parameter.php,v $
- Revision 1.3 2003-02-13 09:01:29 arjen
+ Revision 1.6 2003-08-14 10:33:01 arjen
+ Added performance measurement.
+
+ Revision 1.5 2003/07/15 11:06:45 arjen
+ Removed parameters are displayed in a shaded style.
+
+ Revision 1.4 2003/02/21 08:50:12 arjen
+ Database optimizations.
+
+ Revision 1.3 2003/02/13 09:01:29 arjen
All web interface pages use the page class.
Revision 1.2 2003/02/05 09:47:39 arjen
******************************/
-// RCSID = "$Id: parameter.php,v 1.3 2003-02-13 09:01:29 arjen Exp $";
+// RCSID = "$Id: parameter.php,v 1.6 2003-08-14 10:33:01 arjen Exp $";
ini_set('include_path', '.:./classes:../phpclasses');
/* Local functions */
+function getmicrotime()
+{
+ list ($usec, $sec) = explode(" ", microtime());
+ return (float)$sec + (float)$usec;
+}
+
function object_selection($db, $skip_oid)
{
/* Create and print an HTML option list of objects */
- $res = pg_exec("SELECT objectid, objectname FROM object WHERE objectid != " . $skip_oid);
+ $res = pg_exec("SELECT objectid, objectname FROM object WHERE objectid != "
+ . $skip_oid . "ORDER BY objectname");
for ($row = 0; $row < pg_numrows($res); $row++)
{
$obj = pg_fetch_object($res, $row);
if (!empty($_GET['oid']))
{
- $res = pg_exec($this->database, "SELECT objectname FROM object WHERE objectid=" . $_GET['oid']);
+ $res = pg_exec($this->database, "SELECT objectname FROM object WHERE objectid=CAST('" . $_GET['oid']."' AS BIGINT)");
$obj = pg_fetch_object($res, 0);
echo "<h1>Parameters for " . $obj->objectname . "</h1>";
$res = pg_exec($this->database, "SELECT paramid, class, name, description FROM parameter "
- ."WHERE objectid=" . $_GET['oid'] . "order by class, name");
+ ."WHERE objectid= CAST('" . $_GET['oid'] . "' AS BIGINT) order by class, name");
?>
<form action='parameter_compare.php' method='post'>
echo "<hr>";
echo "<table>";
$row = 0;
+ $start_time = getmicrotime();
while ($row < pg_numrows($res))
{
$par = pg_fetch_object($res, $row);
- ?>
- <tr><td align='center'>
- <?php echo $par->class?>
- </td><td>
- <?php echo $par->name?>
- </td><td>
- <?php echo $par->description?>
- </td><td>
- <?php
- $r = pg_exec($this->database, "SELECT name, value FROM property
- WHERE paramid='" . $par->paramid . "'");
- for ($p = 0; $p < pg_numrows($r); $p++)
- {
- $prop = pg_fetch_object($r, $p);
- echo $prop->name . "=" . $prop->value . " ";
- }
+ $qry ="select change_nature from history where paramid= CAST('";
+ $qry .= $par->paramid . "' AS BIGINT) order by modified desc";
+ $rhist = pg_exec($this->database, $qry);
+ $hist = pg_fetch_object($rhist, 0);
+ if ($hist->change_nature != "REMOVED")
+ {
?>
- </td></tr>
- <?php
+ <tr><td align='center'>
+ <?php echo $par->class?>
+ </td><td>
+ <?php echo $par->name?>
+ </td><td>
+ <?php echo $par->description?>
+ </td><td>
+ <?php
+ $r = pg_exec($this->database, "SELECT name, value FROM property
+ WHERE paramid=CAST('" . $par->paramid . "' AS BIGINT)");
+ for ($p = 0; $p < pg_numrows($r); $p++)
+ {
+ $prop = pg_fetch_object($r, $p);
+ echo $prop->name . "=" . $prop->value . " ";
+ }
+ ?>
+ </td></tr>
+ <?php
+ }
$row++;
}
echo "</table>";
+ $duration = getmicrotime() - $start_time;
+
+ echo "$row parameters in " . round($duration, 3) . " seconds (";
+ echo round($duration / $row * 1000, 3) . " milliseconds per parameter).<br>";
}
}
}