From c1c77836a8b1e01f6a6f69d3cdd35321d5bf203e Mon Sep 17 00:00:00 2001 From: Lukas Fleischer Date: Sat, 5 Apr 2014 13:32:43 +0200 Subject: Allow for searching by package base name Signed-off-by: Lukas Fleischer --- web/lib/pkgfuncs.inc.php | 11 ++++++++++- web/template/pkg_search_form.php | 4 +++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php index b92eb9c2..a63ee6fd 100644 --- a/web/lib/pkgfuncs.inc.php +++ b/web/lib/pkgfuncs.inc.php @@ -681,10 +681,19 @@ function pkg_search_page($SID="") { $K = "%" . addcslashes($_GET['K'], '%_') . "%"; $q_where .= "AND (Packages.Name LIKE " . $dbh->quote($K) . ") "; } - elseif (isset($_GET["SeB"]) && $_GET["SeB"] == "x") { + elseif (isset($_GET["SeB"]) && $_GET["SeB"] == "b") { + /* Search by package base name. */ + $K = "%" . addcslashes($_GET['K'], '%_') . "%"; + $q_where .= "AND (PackageBases.Name LIKE " . $dbh->quote($K) . ") "; + } + elseif (isset($_GET["SeB"]) && $_GET["SeB"] == "N") { /* Search by name (exact match). */ $q_where .= "AND (Packages.Name = " . $dbh->quote($_GET['K']) . ") "; } + elseif (isset($_GET["SeB"]) && $_GET["SeB"] == "B") { + /* Search by package base name (exact match). */ + $q_where .= "AND (PackageBases.Name = " . $dbh->quote($_GET['K']) . ") "; + } else { /* Search by name and description (default). */ $K = "%" . addcslashes($_GET['K'], '%_') . "%"; diff --git a/web/template/pkg_search_form.php b/web/template/pkg_search_form.php index 588b4d49..ececf066 100644 --- a/web/template/pkg_search_form.php +++ b/web/template/pkg_search_form.php @@ -4,7 +4,9 @@ include_once('pkgfuncs.inc.php'); $searchby = array( 'nd' => __('Name, Description'), 'n' => __('Name Only'), - 'x' => __('Exact name'), + 'b' => __('Package Base'), + 'N' => __('Exact Name'), + 'B' => __('Exact Package Base'), 'm' => __('Maintainer'), 's' => __('Submitter') ); -- cgit v1.2.3-24-g4f1b