--- loncom/interface/lonmenu.pm 2003/05/16 20:47:07 1.66 +++ loncom/interface/lonmenu.pm 2003/05/23 23:58:53 1.70 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Routines to control the menu # -# $Id: lonmenu.pm,v 1.66 2003/05/16 20:47:07 albertel Exp $ +# $Id: lonmenu.pm,v 1.70 2003/05/23 23:58:53 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -164,7 +164,7 @@ sub registerurl { my $forcereg=shift; my $target = shift; my $result = ''; - + if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; } my $force_title=''; if ($ENV{'request.state'} eq 'construct') { $force_title=&Apache::lonxml::display_title(); @@ -180,8 +180,27 @@ sub registerurl { ((($ENV{'request.publicaccess'}) || (!&Apache::lonnet::is_on_map($ENV{'REQUEST_URI'}))) && (!$forcereg))) { - return $result. - ''.$force_title; + my $loadfunction=''; + my $unloadfunction=''; + unless (($ENV{'browser.interface'} eq 'textual') || + ($ENV{'environment.remote'} eq 'off') || + ($ENV{'request.publicaccess'})) { + my $reopen=&Apache::lonmenu::reopenmenu(); + $loadfunction='swmenu='.$reopen.'swmenu.noclient=0;'; + $unloadfunction='swmenu='.$reopen.'swmenu.noclient=1;'; + } + return $result.(< +function LONCAPAreg() { + $loadfunction +} + +function LONCAPAstale() { + $unloadfunction +} + +$force_title +ENDFUNCTIONS } # Graphical display after login only if ($Apache::lonxml::registered && !$forcereg) { return ''; } @@ -196,6 +215,7 @@ sub innerregister { my $forcereg=shift; my $target = shift; my $result = ''; + if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; } $Apache::lonxml::registered=1; @@ -371,6 +391,7 @@ var swmenu=null; function LONCAPAreg() { swmenu=$reopen; + swmenu.noclient=0; swmenu.clearTimeout(swmenu.menucltim); $timesync $newmail @@ -398,7 +419,7 @@ var swmenu=null; 'clearbut(2,1);clearbut(2,3);clearbut(8,1);clearbut(8,2);clearbut(8,3);'+ 'clearbut(9,1);clearbut(9,2);clearbut(9,3);clearbut(6,3);clearbut(6,1)', 2000); - + swmenu.noclient=1; } // END LON-CAPA Internal @@ -422,6 +443,7 @@ var swmenu=null; function LONCAPAreg() { swmenu=$reopen + swmenu.noclient=0; $timesync swmenu.currentStale=1; swmenu.clearbut(2,1); @@ -438,6 +460,8 @@ var swmenu=null; } function LONCAPAstale() { + swmenu=$reopen + swmenu.noclient=1; } // END LON-CAPA Internal @@ -450,10 +474,12 @@ ENDDONOTREGTHIS } sub loadevents() { + if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; } return 'LONCAPAreg();'; } sub unloadevents() { + if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; } return 'LONCAPAstale();'; }