Close requests before accepting

When auto-accepting a request, we need to close the package request
before performing the actual action (disown/deletion/merge). Otherwise,
the former maintainer is not included in the Cc list of the
acceptance/rejection notification email.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
This commit is contained in:
Lukas Fleischer 2014-07-29 17:59:26 +02:00
parent 98235c834b
commit c70b340c41
2 changed files with 29 additions and 11 deletions

View file

@ -511,6 +511,16 @@ function pkgbase_delete ($base_ids, $merge_base_id, $via) {
}
}
/*
* Close package request if the deletion was initiated through the
* request interface. NOTE: This needs to happen *before* the actual
* deletion. Otherwise, the former maintainer will not be included in
* the Cc list of the request notification email.
*/
if ($via) {
pkgreq_close(intval($via), 'accepted', '');
}
if ($merge_base_id) {
/* Merge comments */
$q = "UPDATE PackageComments ";
@ -544,10 +554,6 @@ function pkgbase_delete ($base_ids, $merge_base_id, $via) {
$q = "DELETE FROM PackageBases WHERE ID IN (" . implode(",", $base_ids) . ")";
$dbh->exec($q);
if ($via) {
pkgreq_close(intval($via), 'accepted', '');
}
return array(true, __("The selected packages have been deleted."));
}
@ -579,6 +585,16 @@ function pkgbase_adopt ($base_ids, $action=true, $via) {
}
}
/*
* Close package request if the disownment was initiated through the
* request interface. NOTE: This needs to happen *before* the actual
* disown operation. Otherwise, the former maintainer will not be
* included in the Cc list of the request notification email.
*/
if ($via) {
pkgreq_close(intval($via), 'accepted', '');
}
$dbh = DB::connect();
$q = "UPDATE PackageBases ";
@ -600,10 +616,6 @@ function pkgbase_adopt ($base_ids, $action=true, $via) {
$dbh->exec($q);
if ($via) {
pkgreq_close(intval($via), 'accepted', '');
}
if ($action) {
pkgbase_notify(account_from_sid($_COOKIE["AURSID"]), $base_ids);
return array(true, __("The selected packages have been adopted."));