--- loncom/interface/lonmenu.pm 2007/04/28 23:13:56 1.218 +++ loncom/interface/lonmenu.pm 2007/08/30 22:37:27 1.222.2.1 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Routines to control the menu # -# $Id: lonmenu.pm,v 1.218 2007/04/28 23:13:56 www Exp $ +# $Id: lonmenu.pm,v 1.222.2.1 2007/08/30 22:37:27 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -61,7 +61,7 @@ sub initlittle { 'main' => 'Main Menu', 'roles' => ($env{'user.adv'}? 'Roles':'Courses'), - 'docs' => 'Course Documents', + 'docs' => 'Edit Course', 'exit' => 'Exit', 'login' => 'Log In', 'launch' => 'Launch Remote Control', @@ -507,10 +507,19 @@ ENDMENUITEMS my $buttons=''; foreach (split(/\n/,$menuitems)) { my ($command,@rest)=split(/\&/,$_); - if ($command eq 's') { - $buttons.=&switch('','',@rest); - } else { - $buttons.=&clear(@rest); + my $idx=10*$rest[0]+$rest[1]; + if (&hidden_button_check() eq 'yes') { + if ($idx == 21 ||$idx == 23) { + $buttons.=&switch('','',@rest); + } else { + $buttons.=&clear(@rest); + } + } else { + if ($command eq 's') { + $buttons.=&switch('','',@rest); + } else { + $buttons.=&clear(@rest); + } } } @@ -520,28 +529,35 @@ ENDMENUITEMS my $inlinebuttons=''; if ($addremote) { # Registered, textual output - if ($env{'browser.interface'} eq 'textual') { $inlinebuttons= join('',map { (defined($_)?$_:'') } @inlineremote); } else { if ($env{'environment.icons'} eq 'iconsonly') { - $inlinebuttons=(< $inlineremote[21] $inlineremote[23] +ENDARROWSINLINE + if (&hidden_button_check() ne 'yes') { + $inlinebuttons .= (< ENDINLINEICONS + } } else { - $inlinebuttons=(<$inlineremote[21] $inlineremote[23] +ENDFIRSTLINE + if (&hidden_button_check() ne 'yes') { + $inlinebuttons .= (<$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 + } } } } @@ -791,15 +807,16 @@ sub open { return ''; } my $menuname='LCmenu'.$Apache::lonnet::perlvar{'lonHostID'}; - unless (shift eq 'unix') { + +# unless (shift eq 'unix') { # resizing does not work on linux because of virtual desktop sizes - $returnval.=(<'; + ''.$text.''; if ($env{'browser.interface'} eq 'faketextual') { # Accessibility if ($nobreak==3) { @@ -1337,6 +1354,16 @@ sub convert_menu_function { return $rolename; } +sub hidden_button_check { + my $hidden; + if ($env{'request.course.id'} eq '') { + return; + } + if ($env{'request.role.adv'}) { + return; + } + return &Apache::lonnet::EXT('resource.0.buttonshide'); +} # ================================================================ Main Program