summaryrefslogtreecommitdiffstats
path: root/web/lib
diff options
context:
space:
mode:
authorLukas Fleischer <archlinux@cryptocrack.de>2010-10-06 04:25:53 +0200
committerLoui Chang <louipc.ist@gmail.com>2010-11-10 20:50:35 +0100
commiteda713032ce9bed773b6c927b2f6ac4b445fe577 (patch)
tree8091bc77f982d2d71a50dcd7b1facdd50a3f14c3 /web/lib
parentdbb8bb783f2f22b68ad2d65f020390428e77c479 (diff)
downloadaur-eda713032ce9bed773b6c927b2f6ac4b445fe577.tar.gz
aur-eda713032ce9bed773b6c927b2f6ac4b445fe577.tar.xz
Add timestamp when a package is flagged out-of-date (FS#20848).
Signed-off-by: Loui Chang <louipc.ist@gmail.com> - resolve conflict and omit i18n changes.
Diffstat (limited to 'web/lib')
-rw-r--r--web/lib/aurjson.class.php2
-rw-r--r--web/lib/pkgfuncs.inc13
-rw-r--r--web/lib/stats.inc2
3 files changed, 11 insertions, 6 deletions
diff --git a/web/lib/aurjson.class.php b/web/lib/aurjson.class.php
index a5b3f9e0..ab1bdbf2 100644
--- a/web/lib/aurjson.class.php
+++ b/web/lib/aurjson.class.php
@@ -21,7 +21,7 @@ class AurJSON {
private $exposed_methods = array('search','info','msearch');
private $fields = array('Packages.ID','Name','Version','CategoryID',
'Description', 'LocationID', 'URL','URLPath','License','NumVotes',
- 'OutOfDate');
+ '(OutOfDateTS IS NOT NULL) AS OutOfDate');
/**
* Handles post data, and routes the request.
diff --git a/web/lib/pkgfuncs.inc b/web/lib/pkgfuncs.inc
index 5605daa5..0f45124d 100644
--- a/web/lib/pkgfuncs.inc
+++ b/web/lib/pkgfuncs.inc
@@ -457,7 +457,7 @@ function pkg_search_page($SID="") {
PackageCategories.Category,
PackageLocations.Location,
Packages.Name, Packages.Version, Packages.Description, Packages.NumVotes,
- Packages.ID, Packages.OutOfDate
+ Packages.ID, Packages.OutOfDateTS
FROM Packages
LEFT JOIN Users ON (Packages.MaintainerUID = Users.ID) ";
@@ -510,7 +510,7 @@ function pkg_search_page($SID="") {
}
if (isset($_GET['outdated'])) {
- $q .= "AND OutOfDate = 1 ";
+ $q .= "AND OutOfDateTS IS NOT NULL ";
}
$order = $_GET["SO"] == 'd' ? 'DESC' : 'ASC';
@@ -642,8 +642,13 @@ function pkg_flag ($atype, $ids, $action = True) {
}
}
- $ood = $action ? 1 : 0;
- $q = "UPDATE Packages SET OutOfDate = " . $ood;
+ $q = "UPDATE Packages SET";
+ if ($action) {
+ $q.= " OutOfDateTS = UNIX_TIMESTAMP()";
+ }
+ else {
+ $q.= " OutOfDateTS = NULL";
+ }
$q.= " WHERE ID IN (" . $flag . ")";
db_query($q, $dbh);
diff --git a/web/lib/stats.inc b/web/lib/stats.inc
index 85c7e28e..6a765581 100644
--- a/web/lib/stats.inc
+++ b/web/lib/stats.inc
@@ -59,7 +59,7 @@ function user_table($user, $dbh)
$maintainer_unsupported_count = db_cache_value(sprintf($base_q, 'unsupported'), $dbh,
$apc_prefix . 'user_unsupported_count:' . $escuser);
- $q = "SELECT count(*) FROM Packages,Users WHERE Packages.OutOfDate = 1 AND Packages.MaintainerUID = Users.ID AND Users.Username='" . $escuser . "'";
+ $q = "SELECT count(*) FROM Packages,Users WHERE Packages.OutOfDateTS IS NOT NULL AND Packages.MaintainerUID = Users.ID AND Users.Username='" . $escuser . "'";
$flagged_outdated = db_cache_value($q, $dbh,
$apc_prefix . 'user_flagged_outdated:' . $escuser);