';
+ #
+ # Make the faq and bug data cascade
+ my $faq = '';
+ my $bug = '';
+ my $help='';
+ # Crumb Symbol
+ my $crumbsymbol = ' ▶ ';
+ # The last breadcrumb does not have a link, so handle it separately.
+ my $last = pop(@Crumbs);
+ #
+ # The first one should be the course or a menu link
+ if (!defined($menulink)) { $menulink=1; }
+ if ($menulink) {
+ my $description = 'Menu';
+ my $no_mt_descr = 0;
+ if (exists($env{'request.course.id'}) &&
+ $env{'request.course.id'} ne '') {
+ $description =
+ $env{'course.'.$env{'request.course.id'}.'.description'};
+ $no_mt_descr = 1;
+ }
+ unshift(@Crumbs,{
+ href =>'/adm/menu',
+ title =>'Go to main menu',
+ target =>'_top',
+ text =>$description,
+ no_mt =>$no_mt_descr,
+ });
+ }
+ my $links .=
+ join($crumbsymbol,
+ map {
+ $faq = $_->{'faq'} if (exists($_->{'faq'}));
+ $bug = $_->{'bug'} if (exists($_->{'bug'}));
+ $help = $_->{'help'} if (exists($_->{'help'}));
+ my $result = '{'target'}) && $_->{'target'} ne '') {
+ $result .= 'target="'.$_->{'target'}.'" ';
+ }
+ if ($_->{'no_mt'}) {
+ $result .='title="'.$_->{'title'}.'">'.
+ $_->{'text'}.'';
+ } else {
+ $result .='title="'.&mt($_->{'title'}).'">'.
+ &mt($_->{'text'}).'';
+ }
+ $result;
+ } @Crumbs
+ );
+ $links .= $crumbsymbol if ($links ne '');
+ if ($last->{'no_mt'}) {
+ $links .= ''.$last->{'text'}.'';
+ } else {
+ $links .= ''.&mt($last->{'text'}).'';
}
+ #
+ my $icons = '';
+ $faq = $last->{'faq'} if (exists($last->{'faq'}));
+ $bug = $last->{'bug'} if (exists($last->{'bug'}));
+ $help = $last->{'help'} if (exists($last->{'help'}));
+ $component_help=($component_help?$component_help:$help);
+# if ($faq ne '') {
+# $icons .= &Apache::loncommon::help_open_faq($faq);
+# }
+# if ($bug ne '') {
+# $icons .= &Apache::loncommon::help_open_bug($bug);
+# }
+ if ($faq ne '' || $component_help ne '' || $bug ne '') {
+ $icons .= &Apache::loncommon::help_open_menu($component,
+ $component_help,
+ $faq,$bug);
+ }
+ #
+ $Str .= $links.' | ';
+ #
+ if (defined($component)) {
+ $Str .= ''.
+ &mt($component);
+ if ($icons ne '') {
+ $Str .= ' '.$icons;
+ }
+ $Str .= ' | ';
+ }
+ $Str .= '