cvs: pearweb /include pear-database-release.php
[email protected] ("Helgi ?ormar ?orbj?rnsson")
| Newsgroups | php.pear.cvs,php.pear.core |
|---|---|
| Message-ID | <cvsdufuz1209777719@cvsserver> |
dufuz Sat May 3 01:21:59 2008 UTC
Modified files:
/pearweb/include pear-database-release.php
Log:
Cosmetics
Removing function promote since v2 is only used
merging promote_v2 and _processPromote into one
dufuz-20080503012159.txt
(text/plain, 10 KB)
http://cvs.php.net/viewvc.cgi/pearweb/include/pear-database-release.php?r1=1.13&r2=1.14&diff_format=u
Index: pearweb/include/pear-database-release.php
diff -u pearweb/include/pear-database-release.php:1.13 pearweb/include/pear-database-release.php:1.14
--- pearweb/include/pear-database-release.php:1.13 Sun Mar 9 20:41:01 2008
+++ pearweb/include/pear-database-release.php Sat May 3 01:21:59 2008
@@ -17,7 +17,7 @@
| Tomas V.V. Cox <[email protected]> |
| Martin Jansen <[email protected]> |
+----------------------------------------------------------------------+
- $Id: pear-database-release.php,v 1.13 2008/03/09 20:41:01 dufuz Exp $
+ $Id: pear-database-release.php,v 1.14 2008/05/03 01:21:59 dufuz Exp $
*/
/**
@@ -41,19 +41,24 @@
static function getRecent($n = 5)
{
global $dbh;
- $sth = $dbh->limitQuery("SELECT packages.id AS id, ".
- "packages.name AS name, ".
- "packages.summary AS summary, ".
- "releases.version AS version, ".
- "releases.releasedate AS releasedate, ".
- "releases.releasenotes AS releasenotes, ".
- "releases.doneby AS doneby, ".
- "releases.state AS state ".
- "FROM packages, releases ".
- "WHERE packages.id = releases.package ".
- "AND packages.approved = 1 ".
- "AND packages.package_type = 'pear' ".
- "ORDER BY releases.releasedate DESC", 0, $n);
+
+ $sql = '
+ SELECT
+ p.id AS id,
+ p.name AS name,
+ p.summary AS summary,
+ r.version AS version,
+ r.releasedate AS releasedate,
+ r.releasenotes AS releasenotes,
+ r.doneby AS doneby,
+ r.state AS state
+ FROM packages p, releases r
+ WHERE
+ p.id = r.package
+ AND p.approved = 1
+ AND p.package_type = ?
+ ORDER BY r.releasedate DESC';
+ $sth = $dbh->limitQuery($sql, 0, $n, array(SITE));
$recent = array();
// XXX Fixme when DB gets limited getAll()
while ($sth->fetchInto($row, DB_FETCHMODE_ASSOC)) {
@@ -75,7 +80,7 @@
packages.name <> "pearweb" AND
packages.name <> "pearweb_phars" AND
packages.id = releases.package AND
- packages.package_type = \'pear\' AND
+ packages.package_type = ? AND
a.release_id = releases.id AND
a.package_id = packages.id AND
packages.newpk_id IS NULL AND
@@ -92,7 +97,7 @@
packages.name <> "pearweb" AND
packages.name <> "pearweb_phars" AND
packages.id = releases.package AND
- packages.package_type = \'pear\' AND
+ packages.package_type = ? AND
a.release_id = releases.id AND
a.package_id = packages.id AND
packages.newpk_id IS NULL AND
@@ -100,7 +105,7 @@
a.yearmonth = "' . date('Y-m-01 00:00:00', time()) . '"
ORDER BY d DESC';
}
- $sth = $dbh->limitQuery($query, 0, $n);
+ $sth = $dbh->limitQuery($query, 0, $n, array(SITE));
$recent = array();
// XXX Fixme when DB gets limited getAll()
while ($sth->fetchInto($row, DB_FETCHMODE_ASSOC)) {
@@ -131,28 +136,30 @@
$end_f = date('Y-m-d 00:00:00', $end);
$site = strtolower($site);
- if (!in_array($site, array('pear', 'pecl'))) {
+ if (!in_array($site, array('pear', 'pear2', 'pecl'))) {
$site = 'pear';
}
- $sql = "SELECT packages.id AS id, ".
- "packages.name AS name, ".
- "packages.summary AS summary, ".
- "packages.description AS description, ".
- "releases.version AS version, ".
- "releases.releasedate AS releasedate, ".
- "releases.releasenotes AS releasenotes, ".
- "releases.doneby AS doneby, ".
- "releases.state AS state ".
- "FROM packages, releases ".
- "WHERE packages.id = releases.package ".
- "AND releases.releasedate > '{$start_f}' AND releases.releasedate < '{$end_f}'".
- "AND packages.package_type = '{$site}'" .
- "ORDER BY releases.releasedate DESC";
+ $sql = '
+ SELECT
+ p.id AS id,
+ p.name AS name,
+ p.summary AS summary,
+ p.description AS description,
+ r.version AS version,
+ r.releasedate AS releasedate,
+ r.releasenotes AS releasenotes,
+ r.doneby AS doneby,
+ r.state AS state
+ FROM packages p, releases r
+ WHERE
+ p.id = r.package
+ AND r.releasedate > ? AND r.releasedate < ?
+ AND p.package_type = ?
+ ORDER BY r.releasedate DESC';
// limited to 50 to stop overkill on the server!
- $sth = $dbh->limitQuery($sql,0,50);
-
+ $sth = $dbh->limitQuery($sql, 0, 50, array($start_f, $end_f, $site));
while ($sth->fetchInto($row, DB_FETCHMODE_ASSOC)) {
$recent[] = $row;
}
@@ -494,10 +501,10 @@
} elseif ($row === null) {
return PEAR::raiseError("File '$file' not found");
}
- $path = $row['fullpath'];
+ $path = $row['fullpath'];
$log_release = $row['release'];
- $log_file = $row['id'];
- $basename = $file;
+ $log_file = $row['id'];
+ $basename = $file;
} elseif ($version === null) {
// Get the most recent version
$row = $dbh->getRow("SELECT id FROM releases ".
@@ -694,27 +701,6 @@
/**
* Promote new release
*
- * @param array Coming from PEAR_common::infoFromDescFile('package.xml')
- * @param string Filename of the new uploaded release
- * @return void
- */
- static function promote($pkginfo, $upload)
- {
- if ($_SERVER['SERVER_NAME'] != PEAR_CHANNELNAME) {
- return;
- }
-
- $package = $pkginfo['package'];
- $notes = $pkginfo['release_notes'];
- $desc = $pkginfo['description'];
- $version = $pkginfo['version'];
- $state = $pkginfo['release_state'];
- $this->_processPromote($package, $upload, $version, $notes, $desc, $state);
- }
-
- /**
- * Promote new release
- *
* @param PEAR_PackageFile_v1|PEAR_PackageFile_v2
* @param string Filename of the new uploaded release
* @return void
@@ -729,11 +715,7 @@
$notes = $pkginfo->getNotes();
$desc = $pkginfo->getDescription();
$state = $pkginfo->getState();
- $this->_processPromote($package, $upload, $version, $notes, $desc, $state);
- }
- function _processPromote($package, $upload, $version, $notes, $desc, $state)
- {
include_once 'pear-database-package.php';
$authors = package::info($package, 'authors');
$txt_authors = '';
@@ -797,39 +779,33 @@
return PEAR::raiseError('release::remove: insufficient privileges');
}
- $success = true;
-
// get files that have to be removed
- $query = sprintf("SELECT fullpath FROM files WHERE package = '%s' AND release = '%s'",
- $package,
- $release);
-
- $sth = $dbh->query($query);
+ $sql = 'SELECT fullpath FROM files WHERE package = ? AND release = ?';
+ $sth = $dbh->query($sql, array($package, $release));
+ // Should we error out if the removal fails ?
+ $success = true;
while ($row = $sth->fetchRow(DB_FETCHMODE_ASSOC)) {
if (!@unlink($row['fullpath'])) {
$success = false;
}
}
- $query = sprintf("DELETE FROM files WHERE package = '%s' AND `release` = '%s'",
- $package,
- $release
- );
- $sth = $dbh->query($query);
+ $sql = 'DELETE FROM files WHERE package = ? AND `release` = ?';
+ $sth = $dbh->query($sql, array($package, $release));
- include_once 'pear-database-package.php';
- $pname = package::info($package, 'name');
- $version = $dbh->getOne('SELECT version from releases WHERE package = ? and id = ?',
- array($package, $release));
- $query = sprintf("DELETE FROM releases WHERE package = '%s' AND id = '%s'",
- $package,
- $release
- );
- $sth = $dbh->query($query);
+ $sql = 'SELECT version from releases WHERE package = ? and id = ?';
+ $version = $dbh->getOne($sql, array($package, $release));
+ $query = 'DELETE FROM releases WHERE package = ? AND id = ?';
+
+ $sth = $dbh->query($query, array($package, $release));
// remove statistics on this release
$dbh->query('DELETE FROM package_stats WHERE pid = ? AND rid = ?', array($package, $release));
$dbh->query('DELETE FROM aggregated_package_stats WHERE package_id = ? AND release_id = ?', array($package, $release));
+
+ include_once 'pear-database-package.php';
+ $pname = package::info($package, 'name');
+
$GLOBALS['pear_rest']->saveAllReleasesREST($pname);
$GLOBALS['pear_rest']->deleteReleaseREST($pname, $version);
$GLOBALS['pear_rest']->savePackagesCategoryREST(package::info($pname, 'category'));