--- loncom/interface/lonmenu.pm 2012/11/09 17:27:10 1.391 +++ loncom/interface/lonmenu.pm 2012/11/16 23:37:16 1.392 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Routines to control the menu # -# $Id: lonmenu.pm,v 1.391 2012/11/09 17:27:10 raeburn Exp $ +# $Id: lonmenu.pm,v 1.392 2012/11/16 23:37:16 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -446,7 +446,7 @@ sub innerregister { if ($env{'request.course.id'} && $env{'request.symb'} eq '') { $resurl = $env{'request.noversionuri'}; } - + if ( $env{'request.symb'} && $env{'request.course.id'} ) { (my $mapurl, my $rid, $resurl) = &Apache::lonnet::decode_symb(&Apache::lonnet::symbread()); @@ -478,6 +478,29 @@ sub innerregister { &Apache::lonhtmlcommon::clear_breadcrumbs(); &Apache::lonhtmlcommon::add_breadcrumb(@crumbs); + } elsif ($env{'request.course.id'}) { + my $courseurl = &Apache::lonnet::courseid_to_courseurl($env{'request.course.id'}); + if ($env{'request.noversionuri'} =~ m{^\Q/uploaded$courseurl/supplemental/\E(default|\d+)/}) { + my $crstype = &Apache::loncommon::course_type(); + &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}); + if ($env{'form.folderpath'}) { + my ($trail) = + &Apache::lonhtmlcommon::docs_breadcrumbs(undef,$crstype); + return $trail; + } else { + &Apache::lonhtmlcommon::clear_breadcrumbs(); + &Apache::lonhtmlcommon::add_breadcrumb( + {text => "Supplemental $crstype Content", + href => "javascript:gopost('/adm/supplemental','')"}); + if ($env{'httpref.'.$env{'request.noversionuri'}} ne '') { + &Apache::lonhtmlcommon::add_breadcrumb({text => 'View Resource'}); + } + return &Apache::lonhtmlcommon::docs_breadcrumbs(undef,$crstype); + } + } else { + &Apache::lonhtmlcommon::clear_breadcrumbs(); + &Apache::lonhtmlcommon::add_breadcrumb({text => 'View Resource'}); + } } elsif (! $const_space){ #a situation when we're looking at a resource outside of context of a #course or construction space (e.g. with cumulative rights) @@ -888,7 +911,7 @@ sub advtools_crumbs { } elsif ($env{'request.noversionuri'} !~ m{^/adm/(navmaps|viewclasslist)(\?|$)}) { &Apache::lonhtmlcommon::add_breadcrumb_tool( 'advtools', @funcs[61,71,72,73,74,92]); - } + } } # ================================================================== Raw Config