gitweb: Make project search respect project_filter

Make gitweb search within filtered projects (i.e. projects shown), and change "List all projects" to "List all projects in '$project_filter/'" if project_filter is used. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jakub Narebski committed Jan 31, 2012 at 01:20 UTC abc0c9d2d7312c4b153ba1b2b9cd8ba0696f1b04
1 file changed +13 -5
gitweb/gitweb.perl
+13 -5
@@ -5161,11 +5161,18 @@ sub git_patchset_body {
5161 sub git_project_search_form {
5162 my ($searchtext, $search_use_regexp);
5163
5164 + my $limit = '';
5165 + if ($project_filter) {
5166 + $limit = " in '$project_filter/'";
5167 + }
5168 +
5169 print "<div class=\"projsearch\">\n";
5170 print $cgi->startform(-method => 'get', -action => $my_uri) .
5166 - $cgi->hidden(-name => 'a', -value => 'project_list') . "\n" .
5167 - $cgi->textfield(-name => 's', -value => $searchtext,
5168 - -title => 'Search project by name and description',
5171 + $cgi->hidden(-name => 'a', -value => 'project_list') . "\n";
5172 + print $cgi->hidden(-name => 'pf', -value => $project_filter). "\n"
5173 + if (defined $project_filter);
5174 + print $cgi->textfield(-name => 's', -value => $searchtext,
5175 + -title => "Search project by name and description$limit",
5176 -size => 60) . "\n" .
5177 "<span title=\"Extended regular expression\">" .
5178 $cgi->checkbox(-name => 'sr', -value => 1, -label => 're',
@@ -5173,8 +5180,9 @@ sub git_project_search_form {
5180 "</span>\n" .
5181 $cgi->submit(-name => 'btnS', -value => 'Search') .
5182 $cgi->end_form() . "\n" .
5176 - $cgi->a({-href => href(project => undef, searchtext => undef)},
5177 - 'List all projects') . "<br />\n";
5183 + $cgi->a({-href => href(project => undef, searchtext => undef,
5184 + project_filter => $project_filter)},
5185 + esc_html("List all projects$limit")) . "<br />\n";
5186 print "</div>\n";
5187 }
5188