gitweb: improve usability of projects search form
Refactor generating project search form into git_project_search_form(). Make text field wider and add on mouse over explanation (via "title" attribute), add an option to use regular expressions, and replace 'Search:' label with [Search] button. Also add "List all projects" link to make it easier to go back from search result to list of all projects (note that an empty search term is disallowed). Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
4426ba2919
commit
a1e1b2d77b
@ -5158,6 +5158,26 @@ sub git_patchset_body {
|
|||||||
|
|
||||||
# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
|
||||||
|
|
||||||
|
sub git_project_search_form {
|
||||||
|
my ($searchtext, $search_use_regexp);
|
||||||
|
|
||||||
|
print "<div class=\"projsearch\">\n";
|
||||||
|
print $cgi->startform(-method => 'get', -action => $my_uri) .
|
||||||
|
$cgi->hidden(-name => 'a', -value => 'project_list') . "\n" .
|
||||||
|
$cgi->textfield(-name => 's', -value => $searchtext,
|
||||||
|
-title => 'Search project by name and description',
|
||||||
|
-size => 60) . "\n" .
|
||||||
|
"<span title=\"Extended regular expression\">" .
|
||||||
|
$cgi->checkbox(-name => 'sr', -value => 1, -label => 're',
|
||||||
|
-checked => $search_use_regexp) .
|
||||||
|
"</span>\n" .
|
||||||
|
$cgi->submit(-name => 'btnS', -value => 'Search') .
|
||||||
|
$cgi->end_form() . "\n" .
|
||||||
|
$cgi->a({-href => href(project => undef, searchtext => undef)},
|
||||||
|
'List all projects') . "<br />\n";
|
||||||
|
print "</div>\n";
|
||||||
|
}
|
||||||
|
|
||||||
# fills project list info (age, description, owner, category, forks)
|
# fills project list info (age, description, owner, category, forks)
|
||||||
# for each project in the list, removing invalid projects from
|
# for each project in the list, removing invalid projects from
|
||||||
# returned list
|
# returned list
|
||||||
@ -6025,11 +6045,8 @@ sub git_project_list {
|
|||||||
insert_file($home_text);
|
insert_file($home_text);
|
||||||
print "</div>\n";
|
print "</div>\n";
|
||||||
}
|
}
|
||||||
print $cgi->startform(-method => "get") .
|
|
||||||
"<p class=\"projsearch\">Search:\n" .
|
git_project_search_form($searchtext, $search_use_regexp);
|
||||||
$cgi->textfield(-name => "s", -value => $searchtext) . "\n" .
|
|
||||||
"</p>" .
|
|
||||||
$cgi->end_form() . "\n";
|
|
||||||
git_project_list_body(\@list, $order);
|
git_project_list_body(\@list, $order);
|
||||||
git_footer_html();
|
git_footer_html();
|
||||||
}
|
}
|
||||||
|
@ -520,8 +520,13 @@ div.search {
|
|||||||
right: 12px
|
right: 12px
|
||||||
}
|
}
|
||||||
|
|
||||||
p.projsearch {
|
div.projsearch {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
margin: 20px 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.projsearch form {
|
||||||
|
margin-bottom: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
td.linenr {
|
td.linenr {
|
||||||
|
Loading…
Reference in New Issue
Block a user