--- loncom/interface/lonmenu.pm 2005/02/07 23:37:45 1.144
+++ loncom/interface/lonmenu.pm 2005/02/21 00:32:04 1.149
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines to control the menu
#
-# $Id: lonmenu.pm,v 1.144 2005/02/07 23:37:45 albertel Exp $
+# $Id: lonmenu.pm,v 1.149 2005/02/21 00:32:04 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -60,6 +60,9 @@ sub initlittle {
return &Apache::lonlocal::texthash('ret' => 'Return to Last Location',
'nav' => 'Navigate Contents',
'main' => 'Main Menu',
+ 'roles' => ($ENV{'user.adv'}?
+ 'Roles':'Courses'),
+ 'exit' => 'Exit',
'launch' => 'Launch Remote Control');
}
@@ -72,7 +75,8 @@ sub menubuttons {
my $titletable=shift;
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
['inhibitmenu']);
- if ($ENV{'form.inhibitmenu'} eq 'yes') { return ''; }
+ if (($ENV{'form.inhibitmenu'} eq 'yes') ||
+ ($ENV{'REQUEST_URI'} eq '/adm/logout')) { return ''; }
my $navmaps='';
my $reloadlink='';
@@ -103,16 +107,20 @@ ENDNAV
$lt{'ret'}
ENDRELOAD
}
- }
+ }
my $form=&serverform();
my $utility=&utilityfunctions();
my $output=(<
-// BEGIN LON-CAPA Internal
+
$lt{'main'}
-$reloadlink $navmaps
+$reloadlink $navmaps
+$lt{'roles'}
+$lt{'exit'}
+
@@ -156,7 +164,7 @@ ENDMAINMENU
ENDNAV
if (
($ENV{'request.noversionuri'}=~m[^/(res|public)/] &&
- $ENV{'request.symb'} ne '')
+ $ENV{'request.symb'} eq '')
||
(($ENV{'request.noversionuri'}=~/^\/adm\//) &&
($ENV{'request.noversionuri'}!~/^\/adm\/wrapper\//) &&
@@ -177,10 +185,12 @@ ENDRELOAD
}
my $form=&serverform();
my $utility=&utilityfunctions();
+ my $logo=&Apache::loncommon::lonhttpdurl("/adm/lonIcons/minilogo.gif");
return (<
-// BEGIN LON-CAPA Internal
+
':'').($textinter?'':'');
# =============================================================================
# ============================ This is for URLs that actually can be registered
- if (($ENV{'request.noversionuri'}!~/^\/(res\/)*adm\//) || ($forcereg)) {
+ if (($ENV{'request.noversionuri'}!~m|^/(res/)*adm/|) || ($forcereg)) {
# -- This applies to homework problems for users with grading privileges
my $crs='/'.$ENV{'request.course.id'};
if ($ENV{'request.course.sec'}) {
@@ -311,7 +327,8 @@ sub innerregister {
$crs=~s/\_/\//g;
my $hwkadd='';
- if ($ENV{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form)$/) {
+ if ($ENV{'request.symb'} ne '' &&
+ $ENV{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form)$/) {
if (&Apache::lonnet::allowed('vgr',$crs)) {
$hwkadd.=&switch('','',7,1,'subm.gif','view sub-[_1]','missions[_1]',
"gocmd('/adm/grades','submission')",
@@ -323,7 +340,8 @@ sub innerregister {
'Modify user grades for this assessment resource');
}
}
- if (&Apache::lonnet::allowed('opa',$crs)) {
+ if ($ENV{'request.symb'} ne '' &&
+ &Apache::lonnet::allowed('opa',$crs)) {
$hwkadd.=&switch('','',7,3,'pparm.gif','problem[_2]','parms[_2]',
"gocmd('/adm/parmset','set')",
'Modify deadlines, etc, for this resource');
@@ -408,7 +426,8 @@ s&7&1&del.gif&delete[_1]&resource[_2]&go
s&7&2&prt.gif&prepare[_1]&printout[_1]&gocstr('/adm/printout','/~$uname/$thisdisfn')&Prepare a printable document
ENDMENUITEMS
}
- } elsif (defined($ENV{'request.course.id'})) {
+ } elsif (defined($ENV{'request.course.id'}) &&
+ $ENV{'request.symb'} ne '') {
$menuitems=(<$inlineremote[21] | | $inlineremote[23] |
$inlineremote[61] | $inlineremote[62] | $inlineremote[63] |
$inlineremote[71] | $inlineremote[72] | $inlineremote[73] |
$inlineremote[81] | $inlineremote[82] | $inlineremote[83] |
$inlineremote[91] | $inlineremote[92] | $inlineremote[93] |
ENDINLINE
+ }
}
- if ($const_space && $is_const_dir) {
- $inlinebuttons = '';
- }
$result =(<
// BEGIN LON-CAPA Internal
@@ -477,11 +498,12 @@ ENDREGTEXT
my $cursymb=&Apache::lonenc::check_encrypt($ENV{'request.symb'});
my $navstatus=&get_nav_status();
my $clearcstr;
+
if ($ENV{'user.adv'}) { $clearcstr='clearbut(6,1)'; }
$result = (<
-// BEGIN LON-CAPA Internal
+//
ENDREGTHIS
}
@@ -1168,8 +1190,10 @@ ENDSCRIPT
$ENV{'browser.interface'}='faketextual';
$ENV{'environment.remote'}='off';
}
+ my $html=&Apache::lonxml::xmlbegin();
$r->print(<
+$html
+
LON-CAPA Main Menu
$script_tag