diff options
author | Jakub Narebski <jnareb@gmail.com> | 2012-02-27 05:55:21 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-02-27 10:02:57 +0400 |
commit | 5fb3cf23170f7dc43568d0234c338d67372c97cc (patch) | |
tree | 22fd4b65e3bd0d9d1b4ebcf1c089f37bbb48bdd0 /gitweb/gitweb.perl | |
parent | 07a40062aebc184f5aa1d6750fe80ab6fe120cc8 (diff) |
gitweb: Highlight matched part of project description when searching projects
Use esc_html_match_hl() from earlier commit to mark match in the
_whole_ description when searching projects.
Currently, with this commit, when searching projects there is always
shown full description of a project, and not a shortened one (like for
ordinary projects list view), even if the match is on project name and
not project description. Because we always show full description of a
project, and not possibly shortened name, there is no need for having
full description on mouseover via title attribute.
Showing full description when there is match on it is useful to avoid
situation where match is in shortened, invisible part. On the other
hand that makes project search different than projects list view; also
there can be problems with overly-long project descriptions.
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'gitweb/gitweb.perl')
-rwxr-xr-x | gitweb/gitweb.perl | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index a0c6a9b239..724f06f1f0 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -5404,8 +5404,12 @@ sub git_project_list_rows { esc_html_match_hl($pr->{'path'}, $search_regexp)) . "</td>\n" . "<td>" . $cgi->a({-href => href(project=>$pr->{'path'}, action=>"summary"), - -class => "list", -title => $pr->{'descr_long'}}, - esc_html($pr->{'descr'})) . "</td>\n" . + -class => "list", + $search_regexp ? () : -title => $pr->{'descr_long'}}, + $search_regexp + ? esc_html_match_hl($pr->{'descr_long'}, $search_regexp) + : esc_html($pr->{'descr'})) . + "</td>\n" . "<td><i>" . chop_and_escape_str($pr->{'owner'}, 15) . "</i></td>\n"; print "<td class=\"". age_class($pr->{'age'}) . "\">" . (defined $pr->{'age_string'} ? $pr->{'age_string'} : "No commits") . "</td>\n" . |