diff options
author | Lukas Fleischer <lfleischer@archlinux.org> | 2015-05-21 17:08:58 +0200 |
---|---|---|
committer | Lukas Fleischer <lfleischer@archlinux.org> | 2015-05-21 17:10:33 +0200 |
commit | 01bfae82ce90e5f98180fb920479ed72977c0385 (patch) | |
tree | d82ad3d3e6ecf06b59212c32e00841e442e2965b /web | |
parent | c3614c4f097f1a37485672b04759c5c163f1cf42 (diff) | |
download | aur-01bfae82ce90e5f98180fb920479ed72977c0385.tar.gz aur-01bfae82ce90e5f98180fb920479ed72977c0385.tar.xz |
Make the type parameter of pkgreq_by_pkgbase() optional
This simplifies the code a bit, improves maintainability and reduces the
number of SQL queries when deleting a package.
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
Diffstat (limited to 'web')
-rw-r--r-- | web/lib/pkgbasefuncs.inc.php | 5 | ||||
-rw-r--r-- | web/lib/pkgreqfuncs.inc.php | 9 |
2 files changed, 7 insertions, 7 deletions
diff --git a/web/lib/pkgbasefuncs.inc.php b/web/lib/pkgbasefuncs.inc.php index 3f02bc77..3e4b5724 100644 --- a/web/lib/pkgbasefuncs.inc.php +++ b/web/lib/pkgbasefuncs.inc.php @@ -513,10 +513,7 @@ function pkgbase_delete ($base_ids, $merge_base_id, $via, $grant=false) { if (!$action) { $username = username_from_sid($_COOKIE['AURSID']); foreach ($base_ids as $base_id) { - $pkgreq_ids = array_merge( - pkgreq_by_pkgbase($base_id, 'deletion'), - pkgreq_by_pkgbase($base_id, 'merge'), - pkgreq_by_pkgbase($base_id, 'orphan')); + $pkgreq_ids = array_merge(pkgreq_by_pkgbase($base_id)); foreach ($pkgreq_ids as $pkgreq_id) { pkgreq_close(intval($pkgreq_id), 'accepted', 'The user ' . $username . diff --git a/web/lib/pkgreqfuncs.inc.php b/web/lib/pkgreqfuncs.inc.php index e4c63b57..c056d681 100644 --- a/web/lib/pkgreqfuncs.inc.php +++ b/web/lib/pkgreqfuncs.inc.php @@ -49,15 +49,18 @@ function pkgreq_list($offset, $limit) { * * @return array List of package request IDs */ -function pkgreq_by_pkgbase($baseid, $type) { +function pkgreq_by_pkgbase($baseid, $type=false) { $dbh = DB::connect(); $q = "SELECT PackageRequests.ID "; $q.= "FROM PackageRequests INNER JOIN RequestTypes ON "; $q.= "RequestTypes.ID = PackageRequests.ReqTypeID "; $q.= "WHERE PackageRequests.Status = 0 "; - $q.= "AND PackageRequests.PackageBaseID = " . intval($baseid) . " "; - $q.= "AND RequestTypes.Name = " . $dbh->quote($type); + $q.= "AND PackageRequests.PackageBaseID = " . intval($baseid); + + if ($type) { + $q .= " AND RequestTypes.Name = " . $dbh->quote($type); + } return $dbh->query($q)->fetchAll(PDO::FETCH_COLUMN, 0); } |