Diff for /loncom/interface/lonmenu.pm between versions 1.228 and 1.233

version 1.228, 2007/10/11 22:49:49 version 1.233, 2008/01/15 16:53:27
Line 54  my @inlineremote; Line 54  my @inlineremote;
   
   
 # ================================================================ Little texts  # ================================================================ Little texts
   sub show_course {
       my $course = !$env{'user.adv'};
       if (!$env{'user.adv'}) {
    foreach my $env (keys(%env)) {
       next if ($env !~ m/^user\.priv\./);
       if ($env !~ m/^user\.priv\.(?:st|cm)/) {
    $course = 0;
    last;
       }
    }
       }
       return $course;
   }
   
 sub initlittle {  sub initlittle {
     return &Apache::lonlocal::texthash('ret' => 'Return to Last Location',      return &Apache::lonlocal::texthash('ret' => 'Return to Last Location',
        'nav' => 'Navigate Contents',         'nav' => 'Navigate Contents',
        'main' => 'Main Menu',         'main' => 'Main Menu',
                                        'roles' => ($env{'user.adv'}?                                         'roles' => (&show_course()?
                                                     'Roles':'Courses'),                                                      'Courses':'Roles'),
                                        'docs' => 'Edit Course',                                         'docs' => 'Edit Course',
                                        'exit' => 'Exit',                                         'exit' => 'Exit',
                                        'login' => 'Log In',                                         'login' => 'Log In',
Line 206  ENDDOCS Line 219  ENDDOCS
 <td><a href="/adm/coursegroups" target="_top">$lt{'groups'}</a></td>  <td><a href="/adm/coursegroups" target="_top">$lt{'groups'}</a></td>
 ENDGROUPS  ENDGROUPS
             }              }
     foreach my $key (sort(keys(%env))) {  
  next if ($key !~ /^request/);  
  &Apache::lonnet::logthis("$key =>".$env{$key});  
     }  
     if (&show_return_link()) {      if (&show_return_link()) {
                 my $escreload=&escape('return:');                  my $escreload=&escape('return:');
                 $reloadlink=(<<ENDRELOAD);                  $reloadlink=(<<ENDRELOAD);
Line 340  sub innerregister { Line 349  sub innerregister {
  } else {   } else {
     $newmail= 'swmenu.setstatus("you have","messages");';      $newmail= 'swmenu.setstatus("you have","messages");';
  }   }
     } elsif (($textual)       } 
       if (($textual) 
      && ($env{'request.symb'})        && ($env{'request.symb'}) 
      && ($env{'request.course.id'})) {       && ($env{'request.course.id'})) {
  $newmail.= '<td class="LC_current_location">';   $newmail.= '<td class="LC_current_location">';
  my ($mapurl,$rid,$resurl)=   my ($mapurl,$rid,$resurl)=
     &Apache::lonnet::decode_symb(&Apache::lonnet::symbread());      &Apache::lonnet::decode_symb(&Apache::lonnet::symbread());
         $newmail.=$env{'course.'.$env{'request.course.id'}.'.description'};          my $coursetitle=$env{'course.'.$env{'request.course.id'}.'.description'};
           $newmail.=$coursetitle;
         my $maptitle=&Apache::lonnet::gettitle($mapurl);          my $maptitle=&Apache::lonnet::gettitle($mapurl);
  my $restitle=&Apache::lonnet::gettitle(&Apache::lonnet::symbread());   my $restitle=&Apache::lonnet::gettitle(&Apache::lonnet::symbread());
         if ($maptitle && $maptitle ne 'default.sequence') {          if ($maptitle && ($maptitle ne 'default.sequence') && ($maptitle ne $coursetitle)) {
     $newmail.=', '.$maptitle;      $newmail.=', '.$maptitle;
         }          }
         if ($restitle) {          if ($restitle) {
Line 799  sub load_remote_msg { Line 810  sub load_remote_msg {
 <p>$link</p>  <p>$link</p>
 ENDREMOTEFORM  ENDREMOTEFORM
 }  }
   
   sub get_menu_name {
       my $hostid = $Apache::lonnet::perlvar{'lonHostID'};
       $hostid =~ s/\W//g;
       return 'LCmenu'.$hostid;
   }
   
 # ================================================================= Reopen menu  # ================================================================= Reopen menu
   
 sub reopenmenu {  sub reopenmenu {
    if (($env{'browser.interface'} eq 'textual') ||     if (($env{'browser.interface'} eq 'textual') ||
        ($env{'environment.remote'} eq 'off')) { return ''; }         ($env{'environment.remote'} eq 'off')) { return ''; }
    my $menuname='LCmenu'.$Apache::lonnet::perlvar{'lonHostID'};     my $menuname = &get_menu_name();
    my $nothing = &Apache::lonhtmlcommon::javascript_nothing();     my $nothing = &Apache::lonhtmlcommon::javascript_nothing();
    return('window.open('.$nothing.',"'.$menuname.'","",false);');     return('window.open('.$nothing.',"'.$menuname.'","",false);');
 }   } 
Line 817  sub open { Line 835  sub open {
         ($env{'environment.remote'} eq 'off')) {           ($env{'environment.remote'} eq 'off')) { 
  return '<script type="text/javascript">self.name="loncapaclient";</script>';   return '<script type="text/javascript">self.name="loncapaclient";</script>';
     }      }
     my $menuname='LCmenu'.$Apache::lonnet::perlvar{'lonHostID'};      my $menuname = &get_menu_name();
           
 #    unless (shift eq 'unix') {  #    unless (shift eq 'unix') {
 # resizing does not work on linux because of virtual desktop sizes  # resizing does not work on linux because of virtual desktop sizes
Line 945  sub secondlevel { Line 963  sub secondlevel {
 }  }
   
 sub openmenu {  sub openmenu {
     my $menuname='LCmenu'.$Apache::lonnet::perlvar{'lonHostID'};      my $menuname = &get_menu_name();
     if (($env{'browser.interface'} eq 'textual') ||      if (($env{'browser.interface'} eq 'textual') ||
         ($env{'environment.remote'} eq 'off')) { return ''; }          ($env{'environment.remote'} eq 'off')) { return ''; }
     my $nothing = &Apache::lonhtmlcommon::javascript_nothing();      my $nothing = &Apache::lonhtmlcommon::javascript_nothing();
Line 995  sub rawconfig { Line 1013  sub rawconfig {
     my $uname=$env{'user.name'};      my $uname=$env{'user.name'};
     my $udom=$env{'user.domain'};      my $udom=$env{'user.domain'};
     my $adv=$env{'user.adv'};      my $adv=$env{'user.adv'};
       my $show_course=&show_course();
     my $author=$env{'user.author'};      my $author=$env{'user.author'};
     my $crs='';      my $crs='';
     if ($env{'request.course.id'}) {      if ($env{'request.course.id'}) {
Line 1034  sub rawconfig { Line 1053  sub rawconfig {
                $output.=&secondlevel(                 $output.=&secondlevel(
   $uname,$udom,$rol,$crs,$pub,$con,$row,$col,$prt,$img,$top,$bot,$act,$desc,$cat);    $uname,$udom,$rol,$crs,$pub,$con,$row,$col,$prt,$img,$top,$bot,$act,$desc,$cat);
             }              }
    } elsif ($pro eq 'shc') {
               if ($show_course) {
                  $output.=&secondlevel(
             $uname,$udom,$rol,$crs,$pub,$con,$row,$col,$prt,$img,$top,$bot,$act,$desc,$cat);
               }
           } elsif ($pro eq 'nsc') {
               if (!$show_course) {
                  $output.=&secondlevel(
     $uname,$udom,$rol,$crs,$pub,$con,$row,$col,$prt,$img,$top,$bot,$act,$desc,$cat);
               }
         } elsif (($pro=~/^p(\w+)/) && ($prt)) {          } elsif (($pro=~/^p(\w+)/) && ($prt)) {
     if (&Apache::lonnet::allowed($1,$prt)) {      if (&Apache::lonnet::allowed($1,$prt)) {
                $output.=&switch($uname,$udom,$row,$col,$img,$top,$bot,$act,$desc,$cat);                 $output.=&switch($uname,$udom,$row,$col,$img,$top,$bot,$act,$desc,$cat);
Line 1095  sub rawconfig { Line 1124  sub rawconfig {
 sub close {  sub close {
     if (($env{'browser.interface'} eq 'textual') ||      if (($env{'browser.interface'} eq 'textual') ||
         ($env{'environment.remote'} eq 'off')) { return ''; }          ($env{'environment.remote'} eq 'off')) { return ''; }
     my $menuname='LCmenu'.$Apache::lonnet::perlvar{'lonHostID'};      my $menuname = &get_menu_name();
     return(<<ENDCLOSE);      return(<<ENDCLOSE);
 <script type="text/javascript">  <script type="text/javascript">
 window.status='Accessing Remote Control';  window.status='Accessing Remote Control';
Line 1371  sub hidden_button_check { Line 1400  sub hidden_button_check {
     if ($env{'request.role.adv'}) {      if ($env{'request.role.adv'}) {
         return;          return;
     }      }
     return &Apache::lonnet::EXT('resource.0.buttonshide');       my $buttonshide = &Apache::lonnet::EXT('resource.0.buttonshide');
       return $buttonshide; 
 }  }
   
 # ================================================================ Main Program  # ================================================================ Main Program

Removed from v.1.228  
changed lines
  Added in v.1.233


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>