diff options
author | Lukas Fleischer <lfleischer@archlinux.org> | 2017-01-26 09:02:46 +0100 |
---|---|---|
committer | Lukas Fleischer <lfleischer@archlinux.org> | 2017-01-28 11:23:40 +0100 |
commit | 6cb8c041bc2264d02f7c86545170f45cc92d6caf (patch) | |
tree | 8d9e50836984b48f91e136ef58ec0e52b87377b9 /web/lib | |
parent | 33095b3292bdb2fa5561bf257c86004eeddcfae9 (diff) | |
download | aur-6cb8c041bc2264d02f7c86545170f45cc92d6caf.tar.gz aur-6cb8c041bc2264d02f7c86545170f45cc92d6caf.tar.xz |
Implement co-maintainer search
Add an option to filter package search results by co-maintainer.
Partly fixes FS#45591.
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
Diffstat (limited to 'web/lib')
-rw-r--r-- | web/lib/pkgfuncs.inc.php | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php index 4b0fdbac..8ca88352 100644 --- a/web/lib/pkgfuncs.inc.php +++ b/web/lib/pkgfuncs.inc.php @@ -670,6 +670,7 @@ function pkg_display_details($id=0, $row, $SID="") { * B - package base name (exact match) * k - package keyword(s) * m - package maintainer's username + * c - package co-maintainer's username * s - package submitter's username * do_Orphans - boolean. whether to search packages * without a maintainer @@ -746,6 +747,13 @@ function pkg_search_page($SID="") { /* Search by maintainer. */ $q_where .= "AND Users.Username = " . $dbh->quote($_GET['K']) . " "; } + elseif (isset($_GET["SeB"]) && $_GET["SeB"] == "c") { + /* Search by co-maintainer. */ + $q_where .= "AND EXISTS (SELECT * FROM PackageComaintainers "; + $q_where .= "INNER JOIN Users ON Users.ID = PackageComaintainers.UsersID "; + $q_where .= "WHERE PackageComaintainers.PackageBaseID = PackageBases.ID "; + $q_where .= "AND Users.Username = " . $dbh->quote($_GET['K']) . ")"; + } elseif (isset($_GET["SeB"]) && $_GET["SeB"] == "s") { /* Search by submitter. */ $q_where .= "AND SubmitterUID = " . intval(uid_from_username($_GET['K'])) . " "; |