[aur-dev] [PATCH 1/2] Move package base flagging to a separate form

Lukas Fleischer lfleischer at archlinux.org
Fri Sep 11 20:16:21 UTC 2015


Show a separate confirmation page when flagging a package out-of-date.

Implements FS#44967.

Signed-off-by: Lukas Fleischer <lfleischer at archlinux.org>
---
 web/html/index.php               |  4 ++--
 web/html/pkgflag.php             | 44 ++++++++++++++++++++++++++++++++++++++++
 web/template/pkgbase_actions.php |  2 +-
 3 files changed, 47 insertions(+), 3 deletions(-)
 create mode 100644 web/html/pkgflag.php

diff --git a/web/html/index.php b/web/html/index.php
index 7068d76..ec99bb7 100644
--- a/web/html/index.php
+++ b/web/html/index.php
@@ -68,8 +68,8 @@ if (!empty($tokens[1]) && '/' . $tokens[1] == get_pkg_route()) {
 				$_POST['do_UnNotify'] = __('UnNotify');
 				break;
 			case "flag":
-				$_POST['do_Flag'] = __('Flag');
-				break;
+				include('pkgflag.php');
+				return;
 			case "unflag":
 				$_POST['do_UnFlag'] = __('UnFlag');
 				break;
diff --git a/web/html/pkgflag.php b/web/html/pkgflag.php
new file mode 100644
index 0000000..9d86909
--- /dev/null
+++ b/web/html/pkgflag.php
@@ -0,0 +1,44 @@
+<?php
+
+set_include_path(get_include_path() . PATH_SEPARATOR . '../lib');
+
+include_once("aur.inc.php");
+include_once("pkgfuncs.inc.php");
+
+set_lang();
+check_sid();
+
+html_header(__("Flag Package Out-Of-Date"));
+
+if (has_credential(CRED_PKGBASE_FLAG)): ?>
+<div class="box">
+	<h2><?= __('Flag Package Out-Of-Date: %s', htmlspecialchars($pkgbase_name)) ?></h2>
+	<p>
+		<?= __('Use this form to flag the package base %s%s%s and the following packages out-of-date: ',
+			'<strong>', htmlspecialchars($pkgbase_name), '</strong>'); ?>
+	</p>
+	<ul>
+		<?php foreach(pkgbase_get_pkgnames($base_id) as $pkgname): ?>
+		<li><?= htmlspecialchars($pkgname) ?></li>
+		<?php endforeach; ?>
+	</ul>
+	<p>
+		<?= __('Please do %snot%s use this form to report bugs. Use the package comments instead.',
+			'<strong>', '</strong>'); ?>
+	</p>
+	<form action="<?= get_uri('/pkgbase/'); ?>" method="post">
+		<fieldset>
+			<input type="hidden" name="IDs[<?= $base_id ?>]" value="1" />
+			<input type="hidden" name="ID" value="<?= $base_id ?>" />
+			<input type="hidden" name="token" value="<?= htmlspecialchars($_COOKIE['AURSID']) ?>" />
+			<p><input type="submit" class="button" name="do_Flag" value="<?= __("Flag") ?>" /></p>
+		</fieldset>
+	</form>
+</div>
+
+<?php
+else:
+	print __("Only registered users can flag packages out-of-date.");
+endif;
+
+html_footer(AURWEB_VERSION);
diff --git a/web/template/pkgbase_actions.php b/web/template/pkgbase_actions.php
index dea348e..198f7ab 100644
--- a/web/template/pkgbase_actions.php
+++ b/web/template/pkgbase_actions.php
@@ -10,7 +10,7 @@
 			<li><a href="https://wiki.archlinux.org/index.php/Special:Search?search=<?= urlencode($row['Name']) ?>"><?= __('Search wiki') ?></a></li>
 			<li><span class="flagged"><?php if ($row["OutOfDateTS"] !== NULL) { echo __('Flagged out-of-date')." (${out_of_date_time})"; } ?></span></li>
 			<?php if ($row["OutOfDateTS"] === NULL): ?>
-			<li><?= html_action_form($base_uri . 'flag/', "do_Flag", __('Flag package out-of-date')) ?></li>
+			<li><?= html_action_link($base_uri . 'flag/', __('Flag package out-of-date')) ?></li>
 			<?php elseif (($row["OutOfDateTS"] !== NULL) && has_credential(CRED_PKGBASE_UNFLAG, $unflaggers)): ?>
 			<li><?= html_action_form($base_uri . 'unflag/', "do_UnFlag", __('Unflag package')) ?></li>
 			<?php endif; ?>
-- 
2.5.1


More information about the aur-dev mailing list