From 4ebb5b26a90443031290ac6c61d686a9496d8838 Mon Sep 17 00:00:00 2001
From: arjen
Date: Thu, 13 Feb 2003 09:01:29 +0000
Subject: [PATCH] All web interface pages use the page class.
---
src/web/log.php | 136 ++++++++++++++++------------------
src/web/login.php | 109 +++++++++------------------
src/web/notification.php | 11 ++-
src/web/objects.php | 71 +++++++++---------
src/web/parameter.php | 82 +++++++-------------
src/web/parameter_compare.php | 62 ++++++----------
src/web/users.php | 99 +++++++++++++++----------
7 files changed, 248 insertions(+), 322 deletions(-)
diff --git a/src/web/log.php b/src/web/log.php
index 96ac2cd..aa5ca97 100644
--- a/src/web/log.php
+++ b/src/web/log.php
@@ -1,96 +1,84 @@
+ Revision 1.2 2003/02/05 09:48:14 arjen
+ Added display and handling of notifications
-
-
-
-
-
-GNUCoMo login
+******************************/
-
-
-
-read("gnucomo");
-
- // Connect to the database
- $conn = pg_connect($config->Database($_SESSION['username'], $_SESSION['password']));
-
- if (!empty($_GET['oid']))
+ function Body()
{
- $res = pg_exec("SELECT objectname FROM object WHERE objectid=" . $_GET['oid']);
- $obj = pg_fetch_object($res, 0);
- echo "Log for " . $obj->objectname . "
";
+ if (!empty($_GET['oid']))
+ {
+ $res = pg_exec($this->database, "SELECT objectname FROM object WHERE objectid=" . $_GET['oid']);
+ $obj = pg_fetch_object($res, 0);
+ echo "Log for " . $obj->objectname . "
";
- $res = pg_exec("SELECT object_timestamp, servicecode, rawdata FROM log "
- ."WHERE objectid=" . $_GET['oid']);
+ $res = pg_exec($this->database, "SELECT object_timestamp, servicecode, rawdata FROM log "
+ ."WHERE objectid=" . $_GET['oid']);
- echo "";
- $row = 0;
- while ($row < pg_numrows($res))
- {
- $log = pg_fetch_object($res, $row);
- ?>
-
- object_timestamp?>
- |
- servicecode?>
- |
- rawdata?>
- |
- ";
+ $row = 0;
+ while ($row < pg_numrows($res))
+ {
+ $log = pg_fetch_object($res, $row);
+ ?>
+
+ object_timestamp?>
+ |
+ servicecode?>
+ |
+ rawdata?>
+ |
+ ";
}
- echo "
";
}
}
-?>
-
-
+$page = new log_page("Gnucomo system logs");
+
+$page->Showpage();
+
+?>
diff --git a/src/web/login.php b/src/web/login.php
index a204320..ffbc65a 100755
--- a/src/web/login.php
+++ b/src/web/login.php
@@ -1,83 +1,44 @@
-
-
-
-
-
-GNUCoMo login
-
-
-read("gnucomo");
+ini_set('include_path', '.:./classes:../phpclasses');
+require_once('page.class.php');
- // connect to the database
- //echo "Database connection = " . $config->Database($name, $passw) . "
";
- $conn = pg_connect($config->Database($name, $passw));
+$login_page = new page("Gnucomo Login");
- if ( !$conn )
- {
- echo "Error connecting, try again.";
- echo login_form();
- }
- else
- {
- $sql = "SELECT * FROM usr WHERE username='$name'";
- $res = pg_exec( $conn, $sql );
- if ($res && pg_numrows($res) == 1)
- {
- echo "
Database login OK.
";
- session_register('username');
- $_SESSION["username"] = $name;
- session_register('password');
- $_SESSION["password"] = $passw;
- }
- else
- {
- // User not found in database. Check if we have any users at all.
+$login_page->Showpage();
- $res = pg_exec($conn, "SELECT count(username) FROM usr");
- $nusers = pg_fetch_object($res, 0);
- $nusers = $nusers->count;
- if ($nusers == 0)
- {
- echo "
No users in database. Authentication granted.
";
- session_register('username');
- $_SESSION["username"] = $name;
- session_register('password');
- $_SESSION["password"] = $passw;
- }
- else
- {
- echo "
User $name not found in database.
";
- }
- }
- }
-}
-else
-{
- echo login_form();
- $_SESSION["login"] = true;
-}
-}
-else
-{
- echo "Logged in as " . $_SESSION['username'] . "
";
-}
?>
-
-
diff --git a/src/web/notification.php b/src/web/notification.php
index 57a3c04..c2791e8 100644
--- a/src/web/notification.php
+++ b/src/web/notification.php
@@ -9,7 +9,7 @@
***********************
** FILE NAME : notification.php
** SYSTEM NAME : Gnucomo - Gnu Computer Monitoring
-** VERSION NUMBER : $Revision: 1.1 $
+** VERSION NUMBER : $Revision: 1.2 $
**
** DESCRIPTION : Display and handle notifications.
** There are two major views to this page: either a list of
@@ -36,14 +36,17 @@
/*****************************
$Log: notification.php,v $
- Revision 1.1 2003-02-05 09:48:14 arjen
+ Revision 1.2 2003-02-13 09:01:29 arjen
+ All web interface pages use the page class.
+
+ Revision 1.1 2003/02/05 09:48:14 arjen
Added display and handling of notifications
******************************/
-// RCSID = "$Id: notification.php,v 1.1 2003-02-05 09:48:14 arjen Exp $";
+// RCSID = "$Id: notification.php,v 1.2 2003-02-13 09:01:29 arjen Exp $";
-ini_set('include_path', './classes:../phpclasses');
+ini_set('include_path', '.:./classes:../phpclasses');
require_once('page.class.php');
diff --git a/src/web/objects.php b/src/web/objects.php
index 6c7120b..d7d7c33 100644
--- a/src/web/objects.php
+++ b/src/web/objects.php
@@ -9,7 +9,7 @@
***********************
** FILE NAME : objects.php
** SYSTEM NAME : Gnucomo - Gnu Computer Monitoring
-** VERSION NUMBER : $Revision: 1.4 $
+** VERSION NUMBER : $Revision: 1.5 $
**
** DESCRIPTION : Objects Administration page.
** Input parameters: action (POST) : empty, 'Create'
@@ -23,13 +23,16 @@
********************************
** ORIGINAL AUTHOR : Arjen Baart - arjen@andromeda.nl
** CREATION DATE : Dec 04, 2002
-** LAST UPDATE : Feb 03, 2003
+** LAST UPDATE : Feb 08, 2003
** MODIFICATIONS :
**************************************************************************/
/*****************************
$Log: objects.php,v $
- Revision 1.4 2003-02-13 08:48:23 arjen
+ Revision 1.5 2003-02-13 09:01:29 arjen
+ All web interface pages use the page class.
+
+ Revision 1.4 2003/02/13 08:48:23 arjen
Added log, notification and parameter counters to the 'object' table.
Counting these things at the time a user interface needs them is
too slow. Other programs, like gcm_daemon en gcm_input should prepare
@@ -43,20 +46,18 @@
******************************/
-// RCSID = "$Id: objects.php,v 1.4 2003-02-13 08:48:23 arjen Exp $";
+// RCSID = "$Id: objects.php,v 1.5 2003-02-13 09:01:29 arjen Exp $";
-session_start();
-require_once('classes/gnucomo_config.php');
-?>
+ini_set('include_path', '.:./classes:../phpclasses');
+
+require_once('page.class.php');
-
-
-
-
-
-GNUCoMo login
+function clientscripts()
+{
+?>
-
-
Objects Administration
";
- $config = new gnucomo_config;
-
- $config->read("gnucomo");
+class object_page extends page
+{
- // Connect to the database
- $conn = pg_connect($config->Database($_SESSION['username'], $_SESSION['password']));
+ function Body()
+ {
+ clientscripts();
+ echo "Objects Administration
";
if (isset($_POST['action']) && $_POST['action'] == 'Create' && !empty($_POST['objectname']))
{
- pg_exec($conn, "INSERT INTO object (objectname, log_count, parameter_count, notification_count) VALUES ('"
- . $_POST['objectname'] . "', '0', '0', '0')");
+ pg_exec($this->database, "INSERT INTO object (objectname, log_count, parameter_count, notification_count)
+ VALUES ('" . $_POST['objectname'] . "', '0', '0', '0')");
}
if (isset($_POST['action']) && $_POST['action'] == 'Remove' && !empty($_POST['objectname']))
{
- pg_exec($conn, "DELETE FROM object WHERE objectname='" . $_POST['objectname'] . "'");
+ pg_exec($this->database, "DELETE FROM object WHERE objectname='" . $_POST['objectname'] . "'");
}
- $res = pg_exec($conn, "SELECT objectid,objectname, log_count, notification_count FROM object ORDER BY objectname");
+ $res = pg_exec($this->database, "SELECT objectid,objectname, log_count, notification_count
+ FROM object ORDER BY objectname");
echo "";
$obj = 0;
@@ -124,7 +119,7 @@ else
$nr_logs = $u->log_count;
$count_logs = $count_logs + $nr_logs;
- $r = pg_exec ($conn, "SELECT count(paramid) FROM parameter WHERE objectid='"
+ $r = pg_exec ($this->database, "SELECT count(paramid) FROM parameter WHERE objectid='"
. $u->objectid . "'");
$r = pg_fetch_object($r, 0);
@@ -159,7 +154,6 @@ else
echo "$count_notifications Notifications | ";
echo "
";
-}
?>
Create new object:
@@ -171,5 +165,14 @@ Objects name (FQDN):
-
-
+Showpage();
+
+?>
+
diff --git a/src/web/parameter.php b/src/web/parameter.php
index f02148f..42a0e58 100644
--- a/src/web/parameter.php
+++ b/src/web/parameter.php
@@ -9,7 +9,7 @@
***********************
** FILE NAME : parameter.php
** SYSTEM NAME : Gnucomo - Gnu Computer Monitoring
-** VERSION NUMBER : $Revision: 1.2 $
+** VERSION NUMBER : $Revision: 1.3 $
**
** DESCRIPTION :
**
@@ -21,22 +21,27 @@
********************************
** ORIGINAL AUTHOR : Arjen Baart - arjen@andromeda.nl
** CREATION DATE : Dec 04, 2002
-** LAST UPDATE : Feb 03, 2003
+** LAST UPDATE : Feb 08, 2003
** MODIFICATIONS :
**************************************************************************/
/*****************************
$Log: parameter.php,v $
- Revision 1.2 2003-02-05 09:47:39 arjen
+ 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
Display the difference of all package class parameters for two objects
******************************/
-// RCSID = "$Id: parameter.php,v 1.2 2003-02-05 09:47:39 arjen Exp $";
+// RCSID = "$Id: parameter.php,v 1.3 2003-02-13 09:01:29 arjen Exp $";
+
+ini_set('include_path', '.:./classes:../phpclasses');
+
+require_once('page.class.php');
-session_start();
-require_once('classes/gnucomo_config.php');
/* Local functions */
@@ -53,61 +58,20 @@ function object_selection($db, $skip_oid)
echo "";
}
}
-?>
-
-
-
-
-
-GNUCoMo login
-
-
-
-
-read("gnucomo");
-
- // Connect to the database
- $conn = pg_connect($config->Database($_SESSION['username'], $_SESSION['password']));
+ function Body()
+ {
if (!empty($_GET['oid']))
{
- $res = pg_exec($conn, "SELECT objectname FROM object WHERE objectid=" . $_GET['oid']);
+ $res = pg_exec($this->database, "SELECT objectname FROM object WHERE objectid=" . $_GET['oid']);
$obj = pg_fetch_object($res, 0);
echo "Parameters for " . $obj->objectname . "
";
- $res = pg_exec("SELECT paramid, class, name, description FROM parameter "
+ $res = pg_exec($this->database, "SELECT paramid, class, name, description FROM parameter "
."WHERE objectid=" . $_GET['oid'] . "order by class, name");
?>
@@ -115,7 +79,7 @@ else
'>
Compare to object:
@@ -136,7 +100,8 @@ else
description?>
paramid . "'");
+ $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);
@@ -149,8 +114,11 @@ else
}
echo "";
}
+ }
}
-?>
-
-
+$page = new param_page("Gnucomo Parameters");
+
+$page->Showpage();
+
+?>
diff --git a/src/web/parameter_compare.php b/src/web/parameter_compare.php
index ea2e258..60df21c 100644
--- a/src/web/parameter_compare.php
+++ b/src/web/parameter_compare.php
@@ -9,7 +9,7 @@
***********************
** FILE NAME : parameter_compare.php
** SYSTEM NAME : Gnucomo - Gnu Computer Monitoring
-** VERSION NUMBER : $Revision: 1.2 $
+** VERSION NUMBER : $Revision: 1.3 $
**
** DESCRIPTION :
**
@@ -27,28 +27,20 @@
/*****************************
$Log: parameter_compare.php,v $
- Revision 1.2 2003-02-05 09:47:39 arjen
+ 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
Display the difference of all package class parameters for two objects
******************************/
-// RCSID = "$Id: parameter_compare.php,v 1.2 2003-02-05 09:47:39 arjen Exp $";
-
-session_start();
-require_once('classes/gnucomo_config.php');
-?>
+// RCSID = "$Id: parameter_compare.php,v 1.3 2003-02-13 09:01:29 arjen Exp $";
-
-
-
-
-
-Parameter comparison
+ini_set('include_path', '.:./classes:../phpclasses');
+require_once('page.class.php');
-
-
-";
}
-if (empty($_SESSION['username']))
+class param_diff extends page
{
- echo "Please log in first.";
-}
-else
-{
-
- $config = new gnucomo_config;
-
- $config->read("gnucomo");
-
- // Connect to the database
- $conn = pg_connect($config->Database($_SESSION['username'], $_SESSION['password']));
+ function Body()
+ {
if (!empty($_POST['oid']))
{
- $res = pg_exec("SELECT objectid, objectname FROM object WHERE objectid=" . $_POST['oid']);
+ $res = pg_exec($this->database, "SELECT objectid, objectname FROM object WHERE objectid=" . $_POST['oid']);
$obj = pg_fetch_object($res, 0);
echo "" . $_POST['class'] . " parameters for " . $obj->objectname;
- $res = pg_exec("SELECT objectid, objectname FROM object WHERE objectid=" . $_POST['compare_to']);
+ $res = pg_exec($this->database, "SELECT objectid, objectname FROM object WHERE objectid=" . $_POST['compare_to']);
$cmp_obj = pg_fetch_object($res, 0);
echo " compared to " . $cmp_obj->objectname . " ";
- $res = pg_exec("SELECT objectid, paramid, name FROM parameter "
+ $res = pg_exec($this->database, "SELECT objectid, paramid, name FROM parameter "
. "WHERE objectid=" . $obj->objectid . " OR objectid=" . $cmp_obj->objectid
. " AND class='" . $_POST['class'] . "' ORDER BY name, objectid");
- ?>
- \n";
echo " | " . $obj->objectname . " | ";
echo "" . $cmp_obj->objectname . " |
\n";
@@ -162,8 +143,8 @@ else
/* Both objects have this parameter */
$row++;
- $pr = param_properties($conn, $par->paramid);
- $prnext = param_properties($conn, $nextpar->paramid);
+ $pr = param_properties($this->database, $par->paramid);
+ $prnext = param_properties($this->database, $nextpar->paramid);
if (property_compare($pr, $prnext))
{
display_parameter($par->name, $pr);
@@ -190,7 +171,7 @@ else
{
/* Only one of the objects has this parameter */
- $pr = param_properties($conn, $par->paramid);
+ $pr = param_properties($this->database, $par->paramid);
if ($par->objectid == $obj->objectid)
{
@@ -213,8 +194,11 @@ else
}
echo "\n";
}
+ }
}
-?>
-
-
+$page = new param_diff("Gnucomo Parameter Comparison");
+
+$page->Showpage();
+
+?>
diff --git a/src/web/users.php b/src/web/users.php
index 8263151..300c4fb 100644
--- a/src/web/users.php
+++ b/src/web/users.php
@@ -1,28 +1,49 @@
-
-
-
-
-
-
-GNUCoMo login
-
-
-
User Administration
";
-
- $config = new gnucomo_config;
-
- $config->read("gnucomo");
- // Connect to the database
- $conn = pg_connect($config->Database($_SESSION['username'], $_SESSION['password']));
+class user_page extends page
+{
+ function Body()
+ {
+ echo "User Administration
";
if (isset($_POST['action']) && $_POST['action'] == 'Create' && !empty($_POST['username']))
{
- pg_exec($conn, "CREATE USER " . $_POST['username'] . " PASSWORD '"
+ pg_exec($this->database, "CREATE USER " . $_POST['username'] . " PASSWORD '"
. $_POST['passwd'] . "'");
- pg_exec($conn, "INSERT INTO usr (username, security_level) VALUES ('"
+ pg_exec($this->database, "INSERT INTO usr (username, security_level) VALUES ('"
. $_POST['username'] . "','" . $_POST['seclevel'] . "')");
}
if (isset($_POST['action']) && $_POST['action'] == 'Remove' && !empty($_POST['username']))
{
- pg_exec($conn, "DELETE FROM usr WHERE username='" . $_POST['username'] . "'");
- pg_exec($conn, "DROP USER " . $_POST['username']);
+ pg_exec($this->database, "DELETE FROM usr WHERE username='" . $_POST['username'] . "'");
+ pg_exec($this->database, "DROP USER " . $_POST['username']);
}
- $res = pg_exec($conn, "SELECT username, security_level FROM usr");
+ $res = pg_exec($this->database, "SELECT username, security_level FROM usr");
echo "";
$usr = 0;
@@ -117,7 +129,6 @@ else
}
echo "
";
-}
?>
Create new user:
@@ -139,5 +150,13 @@ Verify password:
-
-
+
+Showpage();
+
+?>
--
2.20.1