--- loncom/interface/lonmenu.pm 2003/06/23 19:08:03 1.79
+++ loncom/interface/lonmenu.pm 2003/08/28 16:43:12 1.86
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines to control the menu
#
-# $Id: lonmenu.pm,v 1.79 2003/06/23 19:08:03 www Exp $
+# $Id: lonmenu.pm,v 1.86 2003/08/28 16:43:12 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -178,7 +178,8 @@ sub registerurl {
if (($ENV{'browser.interface'} eq 'textual') ||
($ENV{'environment.remote'} eq 'off') ||
((($ENV{'request.publicaccess'}) ||
- (!&Apache::lonnet::is_on_map($ENV{'REQUEST_URI'}))) &&
+ (!&Apache::lonnet::is_on_map(
+ &Apache::lonnet::unescape($ENV{'REQUEST_URI'})))) &&
(!$forcereg))) {
return $result.
''.$force_title;
@@ -229,7 +230,7 @@ sub innerregister {
}
if (&Apache::lonmsg::newmail()) {
$newmail=($textual?
- 'You have new messages
':
+ 'You have new messages
':
'swmenu.setstatus("you have","messages");');
}
if ($noremote) {
@@ -334,14 +335,13 @@ c&8&1
c&8&2
s&8&3&prt.gif&prepare&printout&gopost('/adm/printout',currentURL)&Prepare a printable document
s&9&1&sbkm.gif&set&bookmark&set_bookmark()&Set a bookmark for this resource&2
-s&9&2&vbkm.gif&view&bookmark&edit_bookmarks()&Use or edit my bookmark collection&2
s&9&3&anot.gif&anno-&tations&annotate()&Make notes and annotations about this resource&2
ENDMENUITEMS
unless ($ENV{'REQUEST_URI'}=~/\/(bulletinboard|smppg|navmaps|syllabus|aboutme)(\?|$)/) {
$menuitems.=(<
@@ -389,8 +391,8 @@ var swmenu=null;
$timesync
$newmail
$buttons
- swmenu.currentURL=window.location.pathname;
- swmenu.reloadURL=window.location.pathname+window.location.search;
+ swmenu.currentURL="$requri";
+ swmenu.reloadURL=swmenu.currentURL+window.location.search;
swmenu.currentSymb="$ENV{'request.symb'}";
swmenu.reloadSymb="$ENV{'request.symb'}";
swmenu.currentStale=0;
@@ -714,7 +716,7 @@ sub rawconfig {
$output.=&secondlevel(
$uname,$udom,$rol,$crs,$pub,$con,$row,$col,$prt,$img,$top,$bot,$act,$desc);
}
- } elsif (($pro=~/p(\w+)/) && ($prt)) {
+ } elsif (($pro=~/^p(\w+)/) && ($prt)) {
if (&Apache::lonnet::allowed($1,$prt)) {
$output.=switch($uname,$udom,$row,$col,$img,$top,$bot,$act,$desc);
}
@@ -722,6 +724,14 @@ sub rawconfig {
if ($ENV{'request.course.fn'}) {
$output.=switch($uname,$udom,$row,$col,$img,$top,$bot,$act,$desc);
}
+ } elsif ($pro =~ /^course_(.*)$/) {
+ # Check for permissions inside of a course
+ if (($ENV{'request.course.id'}) &&
+ (&Apache::lonnet::allowed($1,$ENV{'request.course.id'}.
+ ($ENV{'request.course.sec'}?'/'.$ENV{'request.course.sec'}:''))
+ )) {
+ $output.=switch($uname,$udom,$row,$col,$img,$top,$bot,$act,$desc);
+ }
} elsif ($pro eq 'author') {
if ($author) {
if ((($prt eq 'rca') && ($ENV{'request.role'}=~/^ca/)) ||