[aur-dev] [PATCH] Add timestamp when a package is flagged out-of-date (FS#20848).
Lukas Fleischer
archlinux at cryptocrack.de
Tue Oct 5 22:25:53 EDT 2010
Gnah, made a mistake with converting i8n files. This should hopefully
work :)
---
UPGRADING | 6 ++++++
support/schema/aur-schema.sql | 3 +--
web/html/pkgsubmit.php | 2 +-
web/lang/cs.po | 2 +-
web/lang/de.po | 2 +-
web/lang/el_GR.po | 2 +-
web/lang/fr.po | 2 +-
web/lang/he.po | 2 +-
web/lang/hr.po | 2 +-
web/lang/hu.po | 2 +-
web/lang/it.po | 2 +-
web/lang/nb_NO.po | 2 +-
web/lang/pl.po | 2 +-
web/lang/ro.po | 2 +-
web/lang/ru.po | 2 +-
web/lang/sr.po | 2 +-
web/lang/tr.po | 2 +-
web/lang/uk.po | 2 +-
web/lang/zh_CN.po | 2 +-
web/lib/aurjson.class.php | 2 +-
web/lib/pkgfuncs.inc | 13 +++++++++----
web/lib/stats.inc | 2 +-
web/template/actions_form.php | 2 +-
web/template/pkg_details.php | 5 +++--
web/template/pkg_search_results.php | 2 +-
25 files changed, 40 insertions(+), 29 deletions(-)
diff --git a/UPGRADING b/UPGRADING
index 743f404..bbf60f0 100644
--- a/UPGRADING
+++ b/UPGRADING
@@ -1,6 +1,12 @@
Upgrading
=========
+From 1.7.0 to 1.8.0
+-------------------
+ALTER TABLE Packages ADD OutOfDateTS BIGINT UNSIGNED NULL DEFAULT NULL;
+UPDATE Packages SET OutOfDateTS = UNIX_TIMESTAMP() WHERE OutOfDate = 1;
+ALTER TABLE Packages DROP OutOfDate;
+
From 1.6.0 to 1.7.0
-------------------
ALTER TABLE Users ADD Salt CHAR(32) NOT NULL DEFAULT '';
diff --git a/support/schema/aur-schema.sql b/support/schema/aur-schema.sql
index 250d405..93ec9a0 100644
--- a/support/schema/aur-schema.sql
+++ b/support/schema/aur-schema.sql
@@ -119,7 +119,7 @@ CREATE TABLE Packages (
License CHAR(40) NOT NULL DEFAULT '',
LocationID TINYINT UNSIGNED NOT NULL DEFAULT 1,
NumVotes INTEGER UNSIGNED NOT NULL DEFAULT 0,
- OutOfDate TINYINT UNSIGNED DEFAULT 0,
+ OutOfDateTS BIGINT UNSIGNED NULL DEFAULT NULL,
SubmittedTS BIGINT UNSIGNED NOT NULL,
ModifiedTS BIGINT UNSIGNED NOT NULL,
SubmitterUID INTEGER UNSIGNED NOT NULL DEFAULT 0, -- who submitted it?
@@ -130,7 +130,6 @@ CREATE TABLE Packages (
INDEX (CategoryID),
INDEX (LocationID),
INDEX (DummyPkg),
- INDEX (OutOfDate),
INDEX (NumVotes),
INDEX (SubmitterUID),
INDEX (MaintainerUID),
diff --git a/web/html/pkgsubmit.php b/web/html/pkgsubmit.php
index 6f7a669..5ce945d 100644
--- a/web/html/pkgsubmit.php
+++ b/web/html/pkgsubmit.php
@@ -313,7 +313,7 @@ if ($_COOKIE["AURSID"]):
}
# Update package data
- $q = sprintf("UPDATE Packages SET ModifiedTS = UNIX_TIMESTAMP(), Name = '%s', Version = '%s-%s', License = '%s', Description = '%s', URL = '%s', LocationID = 2, FSPath = '%s', URLPath = '%s', OutOfDate = 0 WHERE ID = %d",
+ $q = sprintf("UPDATE Packages SET ModifiedTS = UNIX_TIMESTAMP(), Name = '%s', Version = '%s-%s', License = '%s', Description = '%s', URL = '%s', LocationID = 2, FSPath = '%s', URLPath = '%s', OutOfDateTS = NULL WHERE ID = %d",
mysql_real_escape_string($new_pkgbuild['pkgname']),
mysql_real_escape_string($new_pkgbuild['pkgver']),
mysql_real_escape_string($new_pkgbuild['pkgrel']),
diff --git a/web/lang/cs.po b/web/lang/cs.po
index e430d05..214df00 100644
--- a/web/lang/cs.po
+++ b/web/lang/cs.po
@@ -15,7 +15,7 @@ global $_t;
$_t["Search by"] = "Vyhledat dle";
-$_t["This package has been flagged out of date."] = "Balíček byl označen jako zastaralý.";
+$_t["This package has been flagged out of date"] = "Balíček byl označen jako zastaralý";
$_t["Voted"] = "Hlasováno";
diff --git a/web/lang/de.po b/web/lang/de.po
index 929e6f8..bbaa16b 100644
--- a/web/lang/de.po
+++ b/web/lang/de.po
@@ -390,7 +390,7 @@ $_t["You are not allowed to access this area."] = "Es ist Dir nicht erlaubt, auf
$_t["Unsafe"] = "Unsicher";
-$_t["This package has been flagged out of date."] = "Dieses Paket wurde als veraltet markiert.";
+$_t["This package has been flagged out of date"] = "Dieses Paket wurde als veraltet markiert";
$_t["The above files have been verified (by %h%s%h) and are safe to use."] = "Die obigen Dateien wurden (von %h%s%h) als sicher markiert.";
diff --git a/web/lang/el_GR.po b/web/lang/el_GR.po
index 5f5c96c..4118c18 100644
--- a/web/lang/el_GR.po
+++ b/web/lang/el_GR.po
@@ -86,7 +86,7 @@ $_t["Unsupported packages are user produced content. Any use of the provided fil
$_t["Search by"] = "Αναζήτηση κατά";
-$_t["This package has been flagged out of date."] = "Αυτό το πακέτο έχει χαρακτηριστεί παρωχημένο.";
+$_t["This package has been flagged out of date"] = "Αυτό το πακέτο έχει χαρακτηριστεί παρωχημένο";
$_t["Voted"] = "Ψηφισμένο";
diff --git a/web/lang/fr.po b/web/lang/fr.po
index 5728947..947a826 100644
--- a/web/lang/fr.po
+++ b/web/lang/fr.po
@@ -405,7 +405,7 @@ $_t["Out of Date"] = "Périmé";
$_t["Required by"] = "Requis par";
-$_t["This package has been flagged out of date."] = "Ce paquet a été marqué comme périmé.";
+$_t["This package has been flagged out of date"] = "Ce paquet a été marqué comme périmé";
$_t["Toggle Notify"] = "Annoncer/Ne plus annoncer";
diff --git a/web/lang/he.po b/web/lang/he.po
index d5c19b7..ad0c558 100644
--- a/web/lang/he.po
+++ b/web/lang/he.po
@@ -14,7 +14,7 @@ global $_t;
$_t["Confirm your e-mail address:"] = "אישור כתובת הדוא״ל שלך";
-$_t["This package has been flagged out of date."] = "החבילה מסומנת כלא עדכנית.";
+$_t["This package has been flagged out of date"] = "החבילה מסומנת כלא עדכנית";
$_t["Missing a required field."] = "שדה הכרחי חסר.";
diff --git a/web/lang/hr.po b/web/lang/hr.po
index 93028b7..4d46fec 100644
--- a/web/lang/hr.po
+++ b/web/lang/hr.po
@@ -162,7 +162,7 @@ $_t["Description"] = "Opis";
$_t["unknown"] = "nepoznato";
-$_t["This package has been flagged out of date."] = "Paket je obilježen kao zastarijeli.";
+$_t["This package has been flagged out of date"] = "Paket je obilježen kao zastarijeli";
$_t["No New Comment Notification"] = "Nemoj me više obavještavati o novim komentarima";
diff --git a/web/lang/hu.po b/web/lang/hu.po
index e198ac3..54f3a12 100644
--- a/web/lang/hu.po
+++ b/web/lang/hu.po
@@ -6,7 +6,7 @@ global $_t;
$_t["Search by"] = "Keresés eszerint";
-$_t["This package has been flagged out of date."] = "Ez a csomag elavultnak van jelölve.";
+$_t["This package has been flagged out of date"] = "Ez a csomag elavultnak van jelölve";
$_t["Missing a required field."] = "Egy kötelező mező megadása hiányzik.";
diff --git a/web/lang/it.po b/web/lang/it.po
index 4bd0727..5876c45 100644
--- a/web/lang/it.po
+++ b/web/lang/it.po
@@ -411,7 +411,7 @@ $_t["Required by"] = "Richiesto da";
$_t["The above files have been verified (by %h%s%h) and are safe to use."] = "I file sono stati verificati (da %h%s%h) ed il loro utilizzo è da considerarsi sicuro.";
-$_t["This package has been flagged out of date."] = "Questo pacchetto è stato contrassegnato come non aggiornato.";
+$_t["This package has been flagged out of date"] = "Questo pacchetto è stato contrassegnato come non aggiornato";
$_t["Toggle Notify"] = "Rimuovi la notifica";
diff --git a/web/lang/nb_NO.po b/web/lang/nb_NO.po
index 687e639..1b8b20e 100644
--- a/web/lang/nb_NO.po
+++ b/web/lang/nb_NO.po
@@ -14,7 +14,7 @@ global $_t;
$_t["Search by"] = "Søk etter";
-$_t["This package has been flagged out of date."] = "Denne pakken har blitt merket som utdatert.";
+$_t["This package has been flagged out of date"] = "Denne pakken har blitt merket som utdatert";
$_t["Voted"] = "Stemmet";
diff --git a/web/lang/pl.po b/web/lang/pl.po
index 967ab36..e337bb1 100644
--- a/web/lang/pl.po
+++ b/web/lang/pl.po
@@ -367,7 +367,7 @@ $_t["unknown"] = "nieznana";
$_t["Out of Date"] = "Nieaktualny";
-$_t["This package has been flagged out of date."] = "Ten pakiet został oznaczony jako nieaktualny.";
+$_t["This package has been flagged out of date"] = "Ten pakiet został oznaczony jako nieaktualny";
$_t["Required by"] = "Wymagane przez";
diff --git a/web/lang/ro.po b/web/lang/ro.po
index 0118f24..3a41477 100644
--- a/web/lang/ro.po
+++ b/web/lang/ro.po
@@ -14,7 +14,7 @@ global $_t;
$_t["Search by"] = "Caută după";
-$_t["This package has been flagged out of date."] = "Acest pachet a fost marcat ca Neactualizat.";
+$_t["This package has been flagged out of date"] = "Acest pachet a fost marcat ca Neactualizat";
$_t["Voted"] = "Votat";
diff --git a/web/lang/ru.po b/web/lang/ru.po
index 2382b35..020f230 100644
--- a/web/lang/ru.po
+++ b/web/lang/ru.po
@@ -389,7 +389,7 @@ $_t["You are not allowed to access this area."] = "Доступ сюда вам
$_t["Unsafe"] = "Небезопаный";
-$_t["This package has been flagged out of date."] = "Пакет отмечен как устаревший.";
+$_t["This package has been flagged out of date"] = "Пакет отмечен как устаревший";
$_t["The above files have been verified (by %h%s%h) and are safe to use."] = "Файлы проверены %h%s%h и могут быть безопасно использованы.";
diff --git a/web/lang/sr.po b/web/lang/sr.po
index ddd54da..c743728 100644
--- a/web/lang/sr.po
+++ b/web/lang/sr.po
@@ -14,7 +14,7 @@ global $_t;
$_t["Search by"] = "Pretražuje se";
-$_t["This package has been flagged out of date."] = "Paket je označen kao zastareo";
+$_t["This package has been flagged out of date"] = "Paket je označen kao zastareo";
$_t["Missing a required field."] = "Nedostaje neophodno polje.";
diff --git a/web/lang/tr.po b/web/lang/tr.po
index 5d41840..df608ac 100644
--- a/web/lang/tr.po
+++ b/web/lang/tr.po
@@ -400,7 +400,7 @@ $_t["Required by"] = "İhtiyaç duyan";
$_t["The above files have been verified (by %h%s%h) and are safe to use."] = "Yukarıdaki dosyalar doğrulandı (%h%s%h tarafından) ve kullanım için güvenli olarak işaretlendi.";
-$_t["This package has been flagged out of date."] = "Bu paket güncel değil olarak işaretlendi.";
+$_t["This package has been flagged out of date"] = "Bu paket güncel değil olarak işaretlendi";
$_t["Toggle Notify"] = "Toggle Notify";
diff --git a/web/lang/uk.po b/web/lang/uk.po
index 007c30e..3023f78 100644
--- a/web/lang/uk.po
+++ b/web/lang/uk.po
@@ -170,7 +170,7 @@ $_t["Description"] = "Опис";
$_t["unknown"] = "невідомо";
-$_t["This package has been flagged out of date."] = "Цьому пакунку призначено мітку Застарілий";
+$_t["This package has been flagged out of date"] = "Цьому пакунку призначено мітку Застарілий";
$_t["No New Comment Notification"] = "Немає нових сповіщень про коментарі";
diff --git a/web/lang/zh_CN.po b/web/lang/zh_CN.po
index 19cc4f6..8f1f567 100644
--- a/web/lang/zh_CN.po
+++ b/web/lang/zh_CN.po
@@ -17,7 +17,7 @@ global $_t;
$_t["Search by"] = "搜索";
-$_t["This package has been flagged out of date."] = "此包已被标记为过期。";
+$_t["This package has been flagged out of date"] = "此包已被标记为过期";
$_t["Missing a required field."] = "缺少必填项。";
diff --git a/web/lib/aurjson.class.php b/web/lib/aurjson.class.php
index a5b3f9e..ab1bdbf 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 5605daa..0f45124 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 85c7e28..6a76558 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);
diff --git a/web/template/actions_form.php b/web/template/actions_form.php
index d1559f5..41d8df9 100644
--- a/web/template/actions_form.php
+++ b/web/template/actions_form.php
@@ -27,7 +27,7 @@
echo " value='".__("UnNotify")."' title='".__("No New Comment Notification")."'> ";
}
-if ($row["OutOfDate"] == 0) {
+if ($row["OutOfDateTS"] === NULL) {
echo "<input type='submit' class='button' name='do_Flag'";
echo " value='".__("Flag Out-of-date")."'>\n";
} else {
diff --git a/web/template/pkg_details.php b/web/template/pkg_details.php
index 9c76ab3..2c5b666 100644
--- a/web/template/pkg_details.php
+++ b/web/template/pkg_details.php
@@ -35,6 +35,7 @@ $license = empty($row['License']) ? $msg : $row['License'];
# Print the timestamps for last updates
$updated_time = ($row["ModifiedTS"] == 0) ? "(unknown)" : gmdate("r", intval($row["ModifiedTS"]));
$submitted_time = ($row["SubmittedTS"] == 0) ? "(unknown)" : gmdate("r", intval($row["SubmittedTS"]));
+$out_of_date_time = ($row["OutOfDateTS"] == 0) ? "(unknown)" : gmdate("r", intval($row["OutOfDateTS"]));
?>
<div class="pgbox">
@@ -69,8 +70,8 @@ $submitted_time = ($row["SubmittedTS"] == 0) ? "(unknown)" : gmdate("r", intval(
print "<a href='$urlpath.tar.gz'>".__("Tarball")."</a> :: <a href='$urlpath'>".__("Files")."</a> :: <a href='$urlpath/PKGBUILD'>PKGBUILD</a></span>";
}
- if ($row["OutOfDate"] == 1) {
- echo "<br /><span class='f6'>".__("This package has been flagged out of date.")."</span>";
+ if ($row["OutOfDateTS"] !== NULL) {
+ echo "<br /><span class='f6'>".__("This package has been flagged out of date")." (".$out_of_date_time.")</span>";
}
?>
</p>
diff --git a/web/template/pkg_search_results.php b/web/template/pkg_search_results.php
index ab49c6b..bf00da5 100644
--- a/web/template/pkg_search_results.php
+++ b/web/template/pkg_search_results.php
@@ -46,7 +46,7 @@
$atype = account_from_sid($_COOKIE['AURSID']);
for ($i = 0; $row = mysql_fetch_assoc($result); $i++) {
(($i % 2) == 0) ? $c = "data1" : $c = "data2";
- if ($row["OutOfDate"]): $c = "outofdate"; endif;
+ if ($row["OutOfDateTS"] !== NULL): $c = "outofdate"; endif;
?>
<tr>
<?php if ($SID): ?>
--
1.7.3.1
More information about the aur-dev
mailing list