***********************
** FILE NAME : objects.php
** SYSTEM NAME : Gnucomo - Gnu Computer Monitoring
-** VERSION NUMBER : $Revision: 1.6 $
+** VERSION NUMBER : $Revision: 1.7 $
**
** DESCRIPTION : Objects Administration page.
** Input parameters: action (POST) : empty, 'Create'
/*****************************
$Log: objects.php,v $
- Revision 1.6 2003-02-21 08:46:58 arjen
+ Revision 1.7 2003-07-15 11:02:25 arjen
+ Use the new object_statistics table.
+
+ Revision 1.6 2003/02/21 08:46:58 arjen
Improved the table layout.
Revision 1.5 2003/02/13 09:01:29 arjen
******************************/
-// RCSID = "$Id: objects.php,v 1.6 2003-02-21 08:46:58 arjen Exp $";
+// RCSID = "$Id: objects.php,v 1.7 2003-07-15 11:02:25 arjen Exp $";
ini_set('include_path', '.:./classes:../phpclasses');
class object_page extends page
{
+ var $nr_parameters, $removed_parameters;
+ var $nr_notifications, $closed_notifications;
+ var $nr_logs;
+
+ function GatherStatistics($objectid)
+ {
+ // Gather statistics on parameters
+
+ $r = pg_exec ($this->database, "SELECT statvalue FROM object_statistics WHERE objectid=CAST('"
+ . $objectid . "' AS BIGINT) AND statname='parameters'");
+ $stat = pg_fetch_object($r, 0);
+ $this->nr_parameters = $stat->statvalue;
+
+ $r = pg_exec ($this->database, "SELECT statvalue FROM object_statistics WHERE objectid=CAST('"
+ . $objectid . "' AS BIGINT) AND statname='removed_parameters'");
+ $stat = pg_fetch_object($r, 0);
+ $this->removed_parameters = $stat->statvalue;
+
+ // Gather statistics on notifications
+
+ $r = pg_exec ($this->database, "SELECT statvalue FROM object_statistics WHERE objectid=CAST('"
+ . $objectid . "' AS BIGINT) AND statname='notifications'");
+ $stat = pg_fetch_object($r, 0);
+ $this->nr_notifications = $stat->statvalue;
+
+ $r = pg_exec ($this->database, "SELECT statvalue FROM object_statistics WHERE objectid=CAST('"
+ . $objectid . "' AS BIGINT) AND statname='closed_notifications'");
+ $stat = pg_fetch_object($r, 0);
+ $this->closed_notifications = $stat->statvalue;
+
+ // Gather statistics on log entries
+
+ $r = pg_exec ($this->database, "SELECT statvalue FROM object_statistics WHERE objectid=CAST('"
+ . $objectid . "' AS BIGINT) AND statname='logs'");
+ $stat = pg_fetch_object($r, 0);
+ $this->nr_logs = $stat->statvalue;
+
+ }
+
function Body()
{
clientscripts();
//The counters are set to zero
$count_logs = 0;
$count_notifications = 0;
+ $closed_notifications = 0;
$count_parameters = 0;
+ $removed_parameters = 0;
while ($obj < pg_numrows($res))
{
$u = pg_fetch_object($res, $obj);
- $nr_logs = $u->log_count;
- $count_logs = $count_logs + $nr_logs;
- $r = pg_exec ($this->database, "SELECT count(paramid) FROM parameter WHERE objectid=CAST('"
- . $u->objectid . "' AS BIGINT)");
- $r = pg_fetch_object($r, 0);
+ $this->GatherStatistics($u->objectid);
- $nr_params = $r->count;
- $count_parameters = $count_parameters + $nr_params;
+ $count_parameters += $this->nr_parameters;
+ $removed_parameters += $this->removed_parameters;
+ $count_logs = $count_logs + $this->nr_logs;
- $nr_notifications = $u->notification_count;
- $count_notifications = $count_notifications + $nr_notifications;
+ //$nr_notifications = $u->notification_count;
+ $count_notifications += $this->nr_notifications;
+ $closed_notifications += $this->closed_notifications;
?>
<tr><td><center><img src='server.png'><br>
<b><?php echo $u->objectname ?></b></center>
</td><td class='number'>
- <?php echo "<a href='log.php?oid=$u->objectid'> $nr_logs </a>" ?>
+ <?php echo "<a href='log.php?oid=$u->objectid'> $this->nr_logs </a>" ?>
</td><td class='number'>
- <?php echo "<a href='parameter.php?oid=$u->objectid'> $nr_params </a>" ?>
+ <?php echo "<a href='parameter.php?oid=$u->objectid'>" . $this->nr_parameters
+ . " (" . $this->removed_parameters . " removed)</a>" ?>
</td><td class='number'>
- <?php echo "<a href='notification.php?oid=$u->objectid'> $nr_notifications </a>" ?>
+ <?php echo "<a href='notification.php?oid=$u->objectid'>" . $this->nr_notifications . " (" . $this->closed_notifications . " closed)</a>" ?>
</td><td>
<form action='objects.php' method='post' onSubmit='return CheckRemove(this)'>
<input type='hidden' name='objectname' value='<?php echo $u->objectname ?>'>
//Show the totals
echo "<tr><td><strong><B><br><br>TOTALS</B></strong></td>";
echo "<td class='number'>$count_logs</td>";
- echo "<td class='number'>$count_parameters</td>";
- echo "<td class='number'>$count_notifications</td></tr>";
+ echo "<td class='number'>$count_parameters ($removed_parameters removed)</td>";
+ echo "<td class='number'>$count_notifications ($closed_notifications closed)</td></tr>";
echo "</table>";
?>
<p>
<form action='objects.php' method='post' onSubmit='return CheckCreate(this)'>
-Objects name (FQDN): <input name='objectname' type='text'>
+Object's name (FQDN): <input name='objectname' type='text'>
<br>
<input type='submit' name='action' value='Create'>
</form>