[aur-dev] [PATCH 2/4] Let co-maintainers unflag the package

Johannes Löthberg johannes at kyriasis.com
Sat Jun 20 10:44:37 UTC 2015


Signed-off-by: Johannes Löthberg <johannes at kyriasis.com>
---
 web/lib/pkgbasefuncs.inc.php | 3 ++-
 web/template/pkg_details.php | 8 +++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/web/lib/pkgbasefuncs.inc.php b/web/lib/pkgbasefuncs.inc.php
index d12a228..d9185e7 100644
--- a/web/lib/pkgbasefuncs.inc.php
+++ b/web/lib/pkgbasefuncs.inc.php
@@ -411,7 +411,8 @@ function pkgbase_unflag($base_ids) {
 	$q.= "OutOfDateTS = NULL ";
 	$q.= "WHERE ID IN (" . implode(",", $base_ids) . ") ";
 
-	if (!has_credential(CRED_PKGBASE_UNFLAG)) {
+	$maintainers = array_merge(pkgbase_maintainer_uids($base_ids), pkgbase_get_comaintainer_uids($base_ids));
+	if (!has_credential(CRED_PKGBASE_UNFLAG, $maintainers)) {
 		$q.= "AND MaintainerUID = " . $uid;
 	}
 
diff --git a/web/template/pkg_details.php b/web/template/pkg_details.php
index 2f121e7..fb81442 100644
--- a/web/template/pkg_details.php
+++ b/web/template/pkg_details.php
@@ -18,6 +18,12 @@ $maintainer = username_from_id($row["MaintainerUID"]);
 $comaintainers = pkgbase_get_comaintainers($base_id);
 $packager = username_from_id($row["PackagerUID"]);
 
+if ($row["MaintainerUID"] !== NULL) {
+	$maintainers = array_merge(array($row["MaintainerUID"]), pkgbase_get_comaintainer_uids(array($base_id)));
+} else {
+	$maintainers = NULL;
+}
+
 $votes = $row['NumVotes'];
 
 # In case of wanting to put a custom message
@@ -99,7 +105,7 @@ $sources = pkg_sources($row["ID"]);
 						<input type="submit" class="button text-button" name="do_Flag" value="<?= __('Flag package out-of-date') ?>" />
 					</form>
 				</li>
-				<?php elseif (($row["OutOfDateTS"] !== NULL) && has_credential(CRED_PKGBASE_UNFLAG, array($row["MaintainerUID"]))): ?>
+				<?php elseif (($row["OutOfDateTS"] !== NULL) && has_credential(CRED_PKGBASE_UNFLAG, $maintainers)): ?>
 				<li>
 					<form action="<?= get_pkgbase_uri($row['BaseName']) . 'unflag/'; ?>" method="post">
 						<input type="hidden" name="token" value="<?= htmlspecialchars($_COOKIE['AURSID']) ?>" />
-- 
2.4.4


More information about the aur-dev mailing list