cvs: pearweb /include pear-auth.php pear-database.php pear-format-html.php /sql data.sql releases.sql

From: Date: Thu, 19 Apr 2001 00:59:05 +0000
Subject: cvs: pearweb /include pear-auth.php pear-database.php pear-format-html.php /sql data.sql releases.sql
Groups: php.pear.cvs 
Request: Send a blank email to pear-cvs+get-42@lists.php.net to get a copy of this message
ssb Wed Apr 18 17:59:05 2001 EDT Modified files: /pearweb/include pear-auth.php pear-database.php pear-format-html.php /pearweb/sql data.sql releases.sql Log: * renamed releases.release to releases.version * added releases.doneby * some auth fixes Index: pearweb/include/pear-auth.php diff -u pearweb/include/pear-auth.php:1.1 pearweb/include/pear-auth.php:1.2 --- pearweb/include/pear-auth.php:1.1 Fri Apr 13 19:24:38 2001 +++ pearweb/include/pear-auth.php Wed Apr 18 17:59:05 2001 @@ -1,27 +1,23 @@ <?php -function auth_reject($realm) +function auth_reject($realm, $message = "Login Failed!") { Header("HTTP/1.0 401 Unauthorized"); Header("WWW-authenticate: basic realm=\"$realm\""); - response_header("access denied"); - report_error("access denied"); + response_header($message); + report_error($message); response_footer(); exit; } function auth_require($level = 0) { - global $PHP_AUTH_USER, $PHP_AUTH_PW, $dbh; + global $PHP_AUTH_USER, $PHP_AUTH_PW, $dbh, $auth_user; - if ($level > 0) { - $realm = "PEAR administrator"; - } else { - $realm = "PEAR maintainer"; - } - $user = new PEAR_User(&$dbh, strtoupper($PHP_AUTH_USER)); - if (DB::isError($user) || md5($PHP_AUTH_PW) != $user->password) { - auth_reject($domain); + $realm = "PEAR user"; + $auth_user =& new PEAR_User(&$dbh, strtolower($PHP_AUTH_USER)); + if (DB::isError($auth_user) || md5($PHP_AUTH_PW) != $auth_user->password) { + auth_reject($realm); } } Index: pearweb/include/pear-database.php diff -u pearweb/include/pear-database.php:1.2 pearweb/include/pear-database.php:1.3 --- pearweb/include/pear-database.php:1.2 Sun Apr 15 01:56:27 2001 +++ pearweb/include/pear-database.php Wed Apr 18 17:59:05 2001 @@ -39,6 +39,9 @@ { global $dbh; $sth = $dbh->query("SELECT * FROM packages ORDER BY name"); + if (DB::isError($sth)) { + return $sth; + } $tree = array('' => array("children" => array())); $oldleft = array(); $oldright = array(); @@ -72,11 +75,23 @@ "WHERE name = '$node'"; $dbh->query($query); } + return true; +} - $from = $tree['Science_Chemistry']['leftvisit']; - $to = $tree['Science_Chemistry']['rightvisit']; - $test = $dbh->getAll("SELECT name FROM packages WHERE leftvisit <= $from ". - "AND rightvisit >= $to"); +function &get_recent_releases($n = 5) { + global $dbh; + $sth = $dbh->query("SELECT packages.name, packages.summary, ". + "releases.version, releases.releasedate, ". + "releases.releasenotes, releases.doneby ". + "FROM packages, releases ". + "WHERE packages.name = releases.package ". + "ORDER BY releases.releasedate DESC"); + $recent = array(); + // XXX FIXME when DB gets rowlimit support + while ($n-- > 0 && ($err = $sth->fetchInto($row, DB_FETCHMODE_ASSOC)) === DB_OK) { + $recent[] = $row; + } + return $recent; } function invalidHandle($handle) { @@ -107,6 +122,8 @@ return 'invalid URL'; } + + class PEAR_User extends DB_storage { function PEAR_User(&$dbh, $user) @@ -133,6 +150,5 @@ $this->setup(array($package, $release)); } } - ?> Index: pearweb/include/pear-format-html.php diff -u pearweb/include/pear-format-html.php:1.2 pearweb/include/pear-format-html.php:1.3 --- pearweb/include/pear-format-html.php:1.2 Sun Apr 15 01:56:27 2001 +++ pearweb/include/pear-format-html.php Wed Apr 18 17:59:05 2001 @@ -5,7 +5,7 @@ function response_header($title = "PEAR: the PHP Extension and Application Repository", $style = false) { - global $_style, $pear_green, $PHP_AUTH_NAME, $PHP_AUTH_PW; + global $_style, $pear_green, $PHP_AUTH_USER, $PHP_AUTH_PW; global $_header_done; if ($_header_done) { return; @@ -22,8 +22,9 @@ print "<IMG SRC=\"/gifs/pearsmall.gif\" WIDTH=96 HEIGHT=48 ALT=\"\">"; print "</TD><TD ALIGN=\"left\" VALIGN=\"top\">"; print "<FONT SIZE=\"-1\">"; - if ($PHP_AUTH_NAME) { - print '&nbsp;<A HREF="logout.php"><FONT COLOR="#ffffff">'; + if ($PHP_AUTH_USER) { + print "&nbsp;<FONT COLOR=\"#ffffff\">user:&nbsp;<B>$PHP_AUTH_USER</B></FONT>". + '<BR>&nbsp;<A HREF="logout.php"><FONT COLOR="#ffffff">'; print "logout</FONT></A><BR>\n"; } else { print '&nbsp;<A HREF="login.php"><FONT COLOR="#ffffff">'; Index: pearweb/sql/data.sql diff -u pearweb/sql/data.sql:1.7 pearweb/sql/data.sql:1.8 --- pearweb/sql/data.sql:1.7 Sun Apr 15 01:56:31 2001 +++ pearweb/sql/data.sql Wed Apr 18 17:59:05 2001 @@ -1,5 +1,5 @@ -INSERT INTO users VALUES('SSB', '8c38dfa80e2bf8b2076a30848f111300', 'Stig Bakken', 'ssb@fast.no', 'http://www.pvv.org/~ssb/', 944079834, 944079834, 'SSB', 1, 1, 1, NULL); -INSERT INTO maintains VALUES('SSB','DB','lead'); +INSERT INTO users VALUES('ssb', '738aa8d3bc02eb8712acd0eb2cf6dfd5', 'Stig S. Bakken', 'stig@php.net', 'http://www.pvv.org/~ssb/', '2001-04-18', 'ssb', NULL, 1, 1, 1, NULL); +INSERT INTO maintains VALUES('ssb','HTTP','lead'); -- INSERT INTO packages (name,placeholder) VALUES('',1); INSERT INTO packages (name,summary,copyright) VALUES('DB','PEAR database abstraction layer','PHP License'); @@ -19,7 +19,7 @@ INSERT INTO packages (name,parent) VALUES('HTML_Form','HTML'); INSERT INTO packages (name,parent) VALUES('HTML_Menu','HTML'); INSERT INTO packages (name,parent) VALUES('HTML_Processor','HTML'); -INSERT INTO packages (name,parent) VALUES('HTTP',NULL); +INSERT INTO packages (name,parent,summary) VALUES('HTTP',NULL,'Some HTTP-related functions'); INSERT INTO packages (name,parent) VALUES('HTTP_Compress','HTTP'); INSERT INTO packages (name,parent,placeholder) VALUES('Image',NULL,1); INSERT INTO packages (name,parent) VALUES('Image_Remote','Image'); @@ -41,3 +41,5 @@ INSERT INTO packages (name,parent) VALUES('XML_RPC','XML'); INSERT INTO packages (name,parent) VALUES('XML_Parser','XML'); INSERT INTO packages (name,parent) VALUES('XML_Render','XML'); + +-- INSERT INTO releases VALUES(NULL, 'HTTP', '1.0', 'ssb', '2001-04-18', 'Initial release'); Index: pearweb/sql/releases.sql diff -u pearweb/sql/releases.sql:1.1 pearweb/sql/releases.sql:1.2 --- pearweb/sql/releases.sql:1.1 Fri Apr 13 17:41:55 2001 +++ pearweb/sql/releases.sql Wed Apr 18 17:59:05 2001 @@ -1,10 +1,11 @@ CREATE TABLE releases ( id INTEGER NOT NULL AUTO_INCREMENT, package VARCHAR(80) NOT NULL REFERENCES packages(name), - release VARCHAR(20) NOT NULL, - releasedate DATETIME, - releasenotes TEXT, + version VARCHAR(20) NOT NULL, + doneby VARCHAR(20) NOT NULL REFERENCES users(handle), + releasedate DATETIME NOT NULL, + releasenotes TEXT DEFAULT '', PRIMARY KEY(id), - UNIQUE(package, release) + UNIQUE INDEX(package, version) );

« previous php.pear.cvs (#42) next »