summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--web/lib/pkgfuncs.inc.php11
-rw-r--r--web/template/pkg_search_form.php4
2 files changed, 13 insertions, 2 deletions
diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php
index b92eb9c..a63ee6f 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 588b4d4..ececf06 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')
);