Allow for selecting a reason when closing a request

When closing a package request, Trusted Users can now pick a reason
("Accepted" or "Rejected"). This allows for marking a request as
accepted, even if the corresponding package base has already been
deleted.

Also, the notification email now always explicitly states whether a
request has been accepted or closed in the message body.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
This commit is contained in:
Lukas Fleischer 2014-07-04 10:40:29 +02:00
parent 61d70c1fa5
commit 8a465182ba
7 changed files with 80 additions and 22 deletions

View file

@ -88,6 +88,25 @@ if (!empty($tokens[1]) && '/' . $tokens[1] == get_pkg_route()) {
}
}
include get_route('/' . $tokens[1]);
} elseif (!empty($tokens[1]) && '/' . $tokens[1] == get_pkgreq_route()) {
if (!empty($tokens[2])) {
/* TODO: Create a proper data structure to pass variables from
* the routing framework to the individual pages instead of
* initializing arbitrary variables here. */
if (!empty($tokens[3]) && $tokens[3] == 'close') {
$pkgreq_id = $tokens[2];
} else {
$pkgreq_id = null;
}
if (!$pkgreq_id) {
header("HTTP/1.0 404 Not Found");
include "./404.php";
return;
}
}
include get_route('/' . $tokens[1]);
} elseif (!empty($tokens[1]) && '/' . $tokens[1] == get_user_route()) {
if (!empty($tokens[2])) {

View file

@ -105,7 +105,7 @@ if (check_token()) {
$ret = false;
}
} elseif (current_action("do_CloseRequest")) {
list($ret, $output) = pkgreq_close($_POST['reqid'], false);
list($ret, $output) = pkgreq_close($_POST['reqid'], $_POST['reason']);
}
if (isset($_REQUEST['comment'])) {

View file

@ -8,7 +8,14 @@ include_once("pkgfuncs.inc.php");
set_lang();
check_sid();
if (!isset($base_id)) {
if (isset($base_id)) {
html_header(__("File Request"));
include('pkgreq_form.php');
} elseif (isset($pkgreq_id)) {
html_header(__("Close Request"));
$pkgbase_name = pkgreq_get_pkgbase_name($pkgreq_id);
include('pkgreq_close_form.php');
} else {
if (!check_user_privileges()) {
header('Location: /');
exit();
@ -63,9 +70,6 @@ if (!isset($base_id)) {
html_header(__("Requests"));
include('pkgreq_results.php');
} else {
html_header(__("File Request"));
include('pkgreq_form.php');
}
html_footer(AUR_VERSION);