From a53241a2f1fe4ecafd86a97738a04e2fbfbb0b84 Mon Sep 17 00:00:00 2001 From: Lukas Fleischer Date: Wed, 4 Mar 2015 11:59:18 +0100 Subject: Automatically close requests Close requests automatically when a package is deleted or orphaned. Implements FS#43799. Signed-off-by: Lukas Fleischer --- web/lib/pkgreqfuncs.inc.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'web/lib/pkgreqfuncs.inc.php') diff --git a/web/lib/pkgreqfuncs.inc.php b/web/lib/pkgreqfuncs.inc.php index 0fab447..e4c63b5 100644 --- a/web/lib/pkgreqfuncs.inc.php +++ b/web/lib/pkgreqfuncs.inc.php @@ -41,6 +41,27 @@ function pkgreq_list($offset, $limit) { return $dbh->query($q)->fetchAll(); } +/** + * Get a list of all open package requests belonging to a certain package base + * + * @param int $baseid The package base ID to retrieve requests for + * @param int $type The type of requests to obtain + * + * @return array List of package request IDs + */ +function pkgreq_by_pkgbase($baseid, $type) { + $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); + + return $dbh->query($q)->fetchAll(PDO::FETCH_COLUMN, 0); +} + /** * Obtain the package base that belongs to a package request. * -- cgit v1.2.3-70-g09d2