--- loncom/interface/lonmenu.pm 2004/09/18 16:55:33 1.117 +++ loncom/interface/lonmenu.pm 2004/10/29 18:40:40 1.120 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Routines to control the menu # -# $Id: lonmenu.pm,v 1.117 2004/09/18 16:55:33 albertel Exp $ +# $Id: lonmenu.pm,v 1.120 2004/10/29 18:40:40 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -226,6 +226,14 @@ sub innerregister { my $forcereg=shift; my $target = shift; my $result = ''; + my ($uname,$thisdisfn); + my $const_space = 0; + if ($ENV{'request.filename'} =~ /^\/home\/([^\/]+)\/public_html\/(.*)/) { + $const_space = 1; + $uname = $1; + $thisdisfn = $2; + } + if ($ENV{'request.noversionuri'} eq '/res/adm/pages/menu.html') { return ''; } $Apache::lonxml::registered=1; @@ -244,6 +252,17 @@ sub innerregister { if ($noremote) { $newmail='
'; } + if ($textual && $const_space) { + my $formaction='/priv/'.$uname.'/'.$thisdisfn; + $formaction=~s/\/+/\//g; + $newmail .= ('
'. + &Apache::lonhtmlcommon::crumbs($uname.'/'.$thisdisfn,'_top','/priv','','-1'). + &Apache::lonhtmlcommon::select_recent('construct','recent', + 'this.form.action=this.form.recent.value;this.form.submit()'). + '
'); + &Apache::lonhtmlcommon::store_recent('construct',$formaction,$formaction); + } if (($textual) && ($ENV{'request.symb'}) && ($ENV{'request.course.id'})) { my ($mapurl,$rid,$resurl)=&Apache::lonnet::decode_symb($ENV{'request.symb'}); $newmail.=$ENV{'course.'.$ENV{'request.course.id'}.'.description'}; @@ -348,7 +367,7 @@ sub innerregister { } } # Finally, turn the button on or off - if ($cfile) { + if ($cfile && !$const_space) { $editbutton=&switch ('','',6,1,'cstr.gif','edit[_1]','resource[_2]', "go('".$cfile."');","Edit this resource"); @@ -359,7 +378,18 @@ sub innerregister { ### ### # Prepare the rest of the buttons - my $menuitems=(< - +var timestart; function wheelswitch() { + if (typeof(document.wheel) != 'undefined') { + if (typeof(document.wheel.spin) != 'undefined') { + var date=new Date(); + var waited=Math.round(30-((date.getTime()-timestart)/1000)); + document.wheel.spin.value=$message; + } + } if (window.status=='|') { window.status='/'; } else { @@ -573,6 +611,8 @@ function wait() { function main() { canceltim=setTimeout('tim=1;',30000); window.status='-'; + var date=new Date(); + timestart=date.getTime(); wait(); } @@ -598,6 +638,25 @@ sub maincall() { ENDMAINCALL } + +sub load_remote_msg { + my ($lowerurl)=@_; + + if (($ENV{'browser.interface'} eq 'textual') || + ($ENV{'environment.remote'} eq 'off')) { return ''; } + + my $esclowerurl=&Apache::lonnet::escape($lowerurl); + my $link=&mt('Continue on in Inline Menu mode', + "/adm/remote?action=collapse?url=$esclowerurl"); + return(< +
+ +
+

+

$link

+ENDREMOTEFORM +} # ================================================================= Reopen menu sub reopenmenu {