summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Fleischer <archlinux@cryptocrack.de>2014-07-04 11:00:07 +0200
committerLukas Fleischer <archlinux@cryptocrack.de>2014-07-04 11:10:50 +0200
commit4645bcbacbc4fd2fba2a3f28d6cd23bdfb184a9d (patch)
treebf76716bc018a15d0206b61816f3e945a14912e1
parent8a465182babccec10b8e789dbc871db3beb9bec5 (diff)
downloadaur-4645bcbacbc4fd2fba2a3f28d6cd23bdfb184a9d.tar.gz
aur-4645bcbacbc4fd2fba2a3f28d6cd23bdfb184a9d.tar.xz
Allow for adding a comment when closing a request
This allows Trusted Users to optionally add a comment when closing a request. The comment is included in the notification email that is sent to the requests mailing list. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
-rw-r--r--web/html/pkgbase.php2
-rw-r--r--web/lib/pkgbasefuncs.inc.php4
-rw-r--r--web/lib/pkgreqfuncs.inc.php12
-rw-r--r--web/template/pkgreq_close_form.php8
4 files changed, 20 insertions, 6 deletions
diff --git a/web/html/pkgbase.php b/web/html/pkgbase.php
index 62021807..9725db77 100644
--- a/web/html/pkgbase.php
+++ b/web/html/pkgbase.php
@@ -105,7 +105,7 @@ if (check_token()) {
$ret = false;
}
} elseif (current_action("do_CloseRequest")) {
- list($ret, $output) = pkgreq_close($_POST['reqid'], $_POST['reason']);
+ list($ret, $output) = pkgreq_close($_POST['reqid'], $_POST['reason'], $_POST['comments']);
}
if (isset($_REQUEST['comment'])) {
diff --git a/web/lib/pkgbasefuncs.inc.php b/web/lib/pkgbasefuncs.inc.php
index 4c1f4521..fed46c86 100644
--- a/web/lib/pkgbasefuncs.inc.php
+++ b/web/lib/pkgbasefuncs.inc.php
@@ -540,7 +540,7 @@ function pkgbase_delete ($atype, $base_ids, $merge_base_id, $via) {
$dbh->exec($q);
if ($via) {
- pkgreq_close(intval($via), 'accepted');
+ pkgreq_close(intval($via), 'accepted', '');
}
return array(true, __("The selected packages have been deleted."));
@@ -598,7 +598,7 @@ function pkgbase_adopt ($atype, $base_ids, $action=true, $via) {
$dbh->exec($q);
if ($via) {
- pkgreq_close(intval($via), 'accepted');
+ pkgreq_close(intval($via), 'accepted', '');
}
if ($action) {
diff --git a/web/lib/pkgreqfuncs.inc.php b/web/lib/pkgreqfuncs.inc.php
index 0309bc3a..fccf0b24 100644
--- a/web/lib/pkgreqfuncs.inc.php
+++ b/web/lib/pkgreqfuncs.inc.php
@@ -156,10 +156,11 @@ function pkgreq_file($ids, $type, $merge_into, $comments) {
* @global string $AUR_REQUEST_ML The request notification mailing list
* @param int $id The package request to close
* @param string $reason Whether the request was accepted or rejected
+ * @param string $comments Comments to be added to the notification email
*
* @return array Tuple of success/failure indicator and error message
*/
-function pkgreq_close($id, $reason) {
+function pkgreq_close($id, $reason, $comments) {
global $AUR_LOCATION;
global $AUR_REQUEST_ML;
@@ -202,8 +203,13 @@ function pkgreq_close($id, $reason) {
*/
$username = username_from_sid($_COOKIE['AURSID']);
$body = "Request #" . intval($id) . " has been " . $reason . " by " .
- $username . " [1].\n\n" .
- "[1] " . $AUR_LOCATION . get_user_uri($username) . "\n";
+ $username . " [1]";
+ if (!empty(trim($comments))) {
+ $body .= ":\n\n" . $comments . "\n\n";
+ } else {
+ $body .= ".\n\n";
+ }
+ $body .= "[1] " . $AUR_LOCATION . get_user_uri($username) . "\n";
$body = wordwrap($body, 70);
$headers = "MIME-Version: 1.0\r\n" .
"Content-type: text/plain; charset=UTF-8\r\n";
diff --git a/web/template/pkgreq_close_form.php b/web/template/pkgreq_close_form.php
index be36aefb..00efafef 100644
--- a/web/template/pkgreq_close_form.php
+++ b/web/template/pkgreq_close_form.php
@@ -4,6 +4,10 @@
<?= __('Use this form to close the request for package base %s%s%s.',
'<strong>', htmlspecialchars($pkgbase_name), '</strong>'); ?>
</p>
+ <p>
+ <em><?= __('Note') ?>:</em>
+ <?= __('The comments field can be left empty. However, it is highly recommended to add a comment when rejecting a request.') ?>
+ </p>
<form action="<?= get_uri('/pkgbase/'); ?>" method="post">
<fieldset>
<input type="hidden" name="reqid" value="<?= $pkgreq_id ?>" />
@@ -16,6 +20,10 @@
</select>
</p>
<p>
+ <label for="id_comments"><?= __("Comments") ?>:</label>
+ <textarea name="comments" id="id_comments" rows="5" cols="50"></textarea>
+ </p>
+ <p>
<input type="submit" class="button" name="do_CloseRequest" value="<?= __("Close Request") ?>" />
</p>
</fieldset>