gitweb: show active project_filter in project_list page header

In the page header of a project_list view with a project_filter given show breadcrumbs in the page headers showing which directory it is currently limited to and also containing links to the parent directories. Signed-off-by: Bernhard R. Link <brlink@debian.org> Acked-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Bernhard R. Link committed Jan 30, 2012 at 21:09 UTC 40efa22309458546a3ea861689034acf9fbf9d1a
1 file changed +14
gitweb/gitweb.perl
+14
@@ -3839,6 +3839,18 @@ sub print_header_links {
3839 }
3840 }
3841
3842 +sub print_nav_breadcrumbs_path {
3843 + my $dirprefix = undef;
3844 + while (my $part = shift) {
3845 + $dirprefix .= "/" if defined $dirprefix;
3846 + $dirprefix .= $part;
3847 + print $cgi->a({-href => href(project => undef,
3848 + project_filter => $dirprefix,
3849 + action => "project_list")},
3850 + esc_html($part)) . " / ";
3851 + }
3852 +}
3853 +
3854 sub print_nav_breadcrumbs {
3855 my %opts = @_;
3856
@@ -3857,6 +3869,8 @@ sub print_nav_breadcrumbs {
3869 print " / $opts{-action_extra}";
3870 }
3871 print "\n";
3872 + } elsif (defined $project_filter) {
3873 + print_nav_breadcrumbs_path(split '/', $project_filter);
3874 }
3875 }
3876