[aur-dev] [PATCH 2/2] Display number of pending requests in actions box

Lukas Fleischer archlinux at cryptocrack.de
Fri Jul 4 06:31:08 EDT 2014


For packages with pending package requests, display the number of
requests above the "File Request" link.

Signed-off-by: Lukas Fleischer <archlinux at cryptocrack.de>
---
 web/lib/pkgbasefuncs.inc.php     | 5 ++++-
 web/lib/pkgfuncs.inc.php         | 5 ++++-
 web/template/pkg_details.php     | 1 +
 web/template/pkgbase_details.php | 1 +
 4 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/web/lib/pkgbasefuncs.inc.php b/web/lib/pkgbasefuncs.inc.php
index fed46c8..b357dff 100644
--- a/web/lib/pkgbasefuncs.inc.php
+++ b/web/lib/pkgbasefuncs.inc.php
@@ -187,7 +187,10 @@ function pkgbase_get_details($base_id) {
 	$q.= "PackageBases.OutOfDateTS, PackageBases.SubmittedTS, ";
 	$q.= "PackageBases.ModifiedTS, PackageBases.SubmitterUID, ";
 	$q.= "PackageBases.MaintainerUID, PackageBases.PackagerUID, ";
-	$q.= "PackageCategories.Category ";
+	$q.= "PackageCategories.Category, ";
+	$q.= "(SELECT COUNT(*) FROM PackageRequests ";
+	$q.= " WHERE PackageRequests.PackageBaseID = PackageBases.ID ";
+	$q.= " AND PackageRequests.Status = 0) AS RequestCount ";
 	$q.= "FROM PackageBases, PackageCategories ";
 	$q.= "WHERE PackageBases.CategoryID = PackageCategories.ID ";
 	$q.= "AND PackageBases.ID = " . intval($base_id);
diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php
index 7e65d09..a2b8a0d 100644
--- a/web/lib/pkgfuncs.inc.php
+++ b/web/lib/pkgfuncs.inc.php
@@ -401,7 +401,10 @@ function pkg_get_details($id=0) {
 	$q.= "PackageBases.NumVotes, PackageBases.OutOfDateTS, ";
 	$q.= "PackageBases.SubmittedTS, PackageBases.ModifiedTS, ";
 	$q.= "PackageBases.SubmitterUID, PackageBases.MaintainerUID, ";
-	$q.= "PackageBases.PackagerUID, PackageCategories.Category ";
+	$q.= "PackageBases.PackagerUID, PackageCategories.Category, ";
+	$q.= "(SELECT COUNT(*) FROM PackageRequests ";
+	$q.= " WHERE PackageRequests.PackageBaseID = Packages.PackageBaseID ";
+	$q.= " AND PackageRequests.Status = 0) AS RequestCount ";
 	$q.= "FROM Packages, PackageBases, PackageCategories ";
 	$q.= "WHERE PackageBases.ID = Packages.PackageBaseID ";
 	$q.= "AND PackageBases.CategoryID = PackageCategories.ID ";
diff --git a/web/template/pkg_details.php b/web/template/pkg_details.php
index 065057a..6f39514 100644
--- a/web/template/pkg_details.php
+++ b/web/template/pkg_details.php
@@ -106,6 +106,7 @@ $sources = pkg_sources($row["ID"]);
 					</form>
 				</li>
 				<?php endif; ?>
+				<li><span class="flagged"><?php if ($row["RequestCount"] > 0) { echo _n('%d pending request', '%d pending requests', $row["RequestCount"]); } ?></span></li>
 				<li><a href="<?= get_pkgbase_uri($row['BaseName']) . 'request/'; ?>"><?= __('File Request'); ?></a></li>
 				<?php if ($atype == "Trusted User" || $atype == "Developer"): ?>
 				<li><a href="<?= get_pkgbase_uri($row['BaseName']) . 'delete/'; ?>"><?= __('Delete Package'); ?></a></li>
diff --git a/web/template/pkgbase_details.php b/web/template/pkgbase_details.php
index 2b92152..64df72b 100644
--- a/web/template/pkgbase_details.php
+++ b/web/template/pkgbase_details.php
@@ -81,6 +81,7 @@ $pkgs = pkgbase_get_pkgnames($base_id);
 					</form>
 				</li>
 				<?php endif; ?>
+				<li><span class="flagged"><?php if ($row["RequestCount"] > 0) { echo _n('%d pending request', '%d pending requests', $row["RequestCount"]); } ?></span></li>
 				<li><a href="<?= get_pkgbase_uri($row['Name']) . 'request/'; ?>"><?= __('File Request'); ?></a></li>
 				<?php if ($atype == "Trusted User" || $atype == "Developer"): ?>
 				<li><a href="<?= get_pkgbase_uri($row['Name']) . 'delete/'; ?>"><?= __('Delete Package'); ?></a></li>
-- 
2.0.1



More information about the aur-dev mailing list