--- loncom/interface/lonmenu.pm 2003/02/20 18:00:31 1.43
+++ loncom/interface/lonmenu.pm 2003/09/17 23:40:25 1.91
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines to control the menu
#
-# $Id: lonmenu.pm,v 1.43 2003/02/20 18:00:31 www Exp $
+# $Id: lonmenu.pm,v 1.91 2003/09/17 23:40:25 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -25,81 +25,238 @@
#
# http://www.lon-capa.org/
#
-# (TeX Conversion Module
#
-# 05/29/00,05/30 Gerd Kortemeyer)
+# There are two parameters controlling the action of this module:
+#
+# browser.interface - if this is 'textual', it overrides the second parameter
+# and goes to screen reader PDA mode
+#
+# environment.remote - if this is 'on', the routines controll the remote
+# control, otherwise they render the main window controls; ignored it
+# browser.interface is 'textual'
#
-# 10/05,05/28,05/30,06/01,06/08,06/09,07/04,08/07 Gerd Kortemeyer
-# 02/15/02 Matthew Hall
package Apache::lonmenu;
use strict;
use Apache::lonnet;
use Apache::Constants qw(:common);
+use Apache::lonhtmlcommon();
use Apache::loncommon;
use Apache::File;
+use Apache::lonlocal;
+
use vars qw(@desklines $readdesk);
+
+my @inlineremote;
+my $font;
+my $tabbg;
+my $pgbg;
+
+# ================================================================ Little texts
+
+sub initlittle {
+ return &Apache::lonlocal::texthash('ret' => 'Return to Last Location',
+ 'nav' => 'Navigate Contents',
+ 'main' => 'Main Menu',
+ 'launch' => 'Launch Remote Control');
+}
+
# ============================= This gets called at the top of the body section
sub menubuttons {
+ &Apache::lonlocal::reroutetrans();
my $forcereg=shift;
my $target =shift;
my $registration=shift;
- unless ($ENV{'browser.interface'} eq 'textual') { return ''; }
+ my $navmaps='';
+ my $reloadlink='';
+ my $escurl=&Apache::lonnet::escape($ENV{'REQUEST_URI'});
+ my $escsymb=&Apache::lonnet::escape($ENV{'request.symb'});
+ if ($ENV{'browser.interface'} eq 'textual') {
# Textual display only
- my $output='Main Menu
';
- if ($registration) { $output.=&innerregister($forcereg,$target); }
- return $output."
+$lt{'main'} + | +$reloadlink +$navmaps ++ +$lt{'launch'} | ++ +LON-CAPA | +
';
+ }
+ 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'};
+ my $maptitle=&Apache::lonnet::gettitle($mapurl);
+ my $restitle=&Apache::lonnet::gettitle($resurl);
+ if ($maptitle) {
+ $newmail.=', '.$maptitle;
+ }
+ if ($restitle) {
+ $newmail.=': '.$restitle;
+ }
+ $newmail.=' ';
+ }
if (&Apache::lonmsg::newmail()) {
$newmail=($textual?
- 'You have new messages ': + 'You have new messages ': 'swmenu.setstatus("you have","messages");'); } + if ($noremote) { + $newmail.=' |