--- loncom/interface/lonmenu.pm 2004/09/18 16:28:35 1.116
+++ loncom/interface/lonmenu.pm 2004/11/10 16:22:25 1.123
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines to control the menu
#
-# $Id: lonmenu.pm,v 1.116 2004/09/18 16:28:35 albertel Exp $
+# $Id: lonmenu.pm,v 1.123 2004/11/10 16:22:25 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -43,7 +43,6 @@ use Apache::lonnet();
use Apache::Constants qw(:common);
use Apache::lonhtmlcommon();
use Apache::loncommon();
-use Apache::lonnavmaps();
use Apache::lonlocal;
use vars qw(@desklines $readdesk);
@@ -167,7 +166,7 @@ $utility
$reloadlink
$navmaps
-
+
$lt{'launch'} |
@@ -226,6 +225,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 +251,38 @@ sub innerregister {
if ($noremote) {
$newmail='';
}
+ if ($textual && $const_space) {
+ my $formaction='/priv/'.$uname.'/'.$thisdisfn;
+ $formaction=~s/\/+/\//g;
+ my $titleinfo = '';
+ &Apache::lonhtmlcommon::store_recent('construct',$formaction,$formaction);
+ $newmail .= &constspaceform();
+# role and realm
+ my ($role,$realm) = &Apache::lonnet::plaintext((split(/\./,$ENV{'request.role'}))[0]);
+ unless ($realm) { $realm=' '; }
+ $newmail .= <
+
+
+$titleinfo
+ |
+
+
+ $ENV{'environment.firstname'}
+ $ENV{'environment.middlename'}
+ $ENV{'environment.lastname'}
+ $ENV{'environment.generation'}
+
+ $role
+ |
+ |
+END
+ }
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 +387,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 +398,19 @@ 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 +632,8 @@ function wait() {
function main() {
canceltim=setTimeout('tim=1;',30000);
window.status='-';
+ var date=new Date();
+ timestart=date.getTime();
wait();
}
@@ -598,6 +659,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 {
@@ -840,7 +920,11 @@ sub rawconfig {
unless (($ENV{'browser.interface'} eq 'textual') ||
($ENV{'environment.remote'} eq 'off')) {
$output.="\nwindow.status='Synchronizing Time';swmenu.syncclock(1000*".time.");\nwindow.status='Remote Control Configured.';";
+ if (&Apache::lonmsg::newmail()) {
+ $output.='swmenu.setstatus("you have","messages");';
+ }
}
+
return $output;
}
@@ -871,12 +955,29 @@ sub footer {
}
+sub nav_control_js {
+ my $nav=($ENV{'environment.remotenavmap'} eq 'on');
+ return (<
+
+
+
+ENDCONSTSPACEFORM
+}
+
+
sub get_nav_status {
my $navstatus="swmenu.w_loncapanav_flag=";
if ($ENV{'environment.remotenavmap'} eq 'on') {
|