summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--web/lib/pkgfuncs.inc.php8
-rw-r--r--web/template/pkg_search_form.php1
2 files changed, 9 insertions, 0 deletions
diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php
index 063cc935..030ec9a1 100644
--- a/web/lib/pkgfuncs.inc.php
+++ b/web/lib/pkgfuncs.inc.php
@@ -717,6 +717,14 @@ function pkg_search_page($params, $show_headers=true, $SID="") {
$q_where .= "WHERE PackageComaintainers.PackageBaseID = PackageBases.ID ";
$q_where .= "AND Users.Username = " . $dbh->quote($params['K']) . ")";
}
+ elseif (isset($params["SeB"]) && $params["SeB"] == "M") {
+ /* Search by maintainer and co-maintainer. */
+ $q_where .= "AND (Users.Username = " . $dbh->quote($params['K']) . " ";
+ $q_where .= "OR 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($params['K']) . "))";
+ }
elseif (isset($params["SeB"]) && $params["SeB"] == "s") {
/* Search by submitter. */
$q_where .= "AND SubmitterUID = " . intval(uid_from_username($params['K'])) . " ";
diff --git a/web/template/pkg_search_form.php b/web/template/pkg_search_form.php
index 688cfcce..3d0cde6c 100644
--- a/web/template/pkg_search_form.php
+++ b/web/template/pkg_search_form.php
@@ -10,6 +10,7 @@ $searchby = array(
'k' => __('Keywords'),
'm' => __('Maintainer'),
'c' => __('Co-maintainer'),
+ 'M' => __('Maintainer, Co-maintainer'),
's' => __('Submitter')
);