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