Diff for /loncom/interface/lonmenu.pm between versions 1.61 and 1.75

version 1.61, 2003/04/17 14:51:31 version 1.75, 2003/06/05 00:01:45
Line 143  $navmaps Line 143  $navmaps
 <td bgcolor="$tabbg">  <td bgcolor="$tabbg">
 <a href="/adm/remote?action=launch&url=$escurl" target="_top">  <a href="/adm/remote?action=launch&url=$escurl" target="_top">
 <font color="$font">Launch Remote Control</font></a></td>  <font color="$font">Launch Remote Control</font></a></td>
   <td bgcolor="$tabbg">
   <img align="right" src="/adm/lonIcons/minilogo.gif" />
   <b>LON-CAPA</b></td>
 </tr>  </tr>
 </table>  </table>
 <script>  <script>
Line 155  ENDINLINEMENU Line 158  ENDINLINEMENU
     }      }
 }  }
   
   # ===== Early call to LONCAPAreg for long-running pages, preferably used right 
   # ===== before $r->rflush()
   
   sub regflush {
       return '<script type="text/javascript">'.&loadevents.'</script>';
   }
   
 # ====================================== This gets called in the header section  # ====================================== This gets called in the header section
   
 sub registerurl {  sub registerurl {
     my $forcereg=shift;      my $forcereg=shift;
     my $target = shift;      my $target = shift;
     my $result = '';      my $result = '';
           if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; }
       my $force_title='';
       if ($ENV{'request.state'} eq 'construct') {
    $force_title=&Apache::lonxml::display_title();
       }
     if ($target eq 'edit') {      if ($target eq 'edit') {
         $result .="<script type=\"text/javascript\">\n".          $result .="<script type=\"text/javascript\">\n".
             "if (typeof swmenu != 'undefined') {swmenu.currentURL=null;}\n".              "if (typeof swmenu != 'undefined') {swmenu.currentURL=null;}\n".
Line 173  sub registerurl { Line 187  sub registerurl {
         ((($ENV{'request.publicaccess'}) ||           ((($ENV{'request.publicaccess'}) || 
          (!&Apache::lonnet::is_on_map($ENV{'REQUEST_URI'}))) &&           (!&Apache::lonnet::is_on_map($ENV{'REQUEST_URI'}))) &&
         (!$forcereg))) {          (!$forcereg))) {
  return $result.          my $loadfunction='';
          '<script type="text/javascript">function LONCAPAreg(){;} function LONCAPAstale(){}</script>';          my $inlineloadfunction='';
           my $unloadfunction='';
           unless (($ENV{'browser.interface'} eq 'textual') ||
                   ($ENV{'environment.remote'} eq 'off') ||
                   ($ENV{'request.publicaccess'})) {
       my $reopen=&Apache::lonmenu::reopenmenu();
        $loadfunction='swmenu='.$reopen.'swmenu.windowloaded(self.name);window.focus();';
               $inlineloadfunction=&regflush();
        $unloadfunction='swmenu='.$reopen.'swmenu.windowunloaded(self.name);';
           } 
    return $result.(<<ENDFUNCTIONS);
   <script type="text/javascript">
   function LONCAPAreg() {
      $loadfunction
   } 
   
   function LONCAPAstale() {
      $unloadfunction
   }
   </script>
   $inlineloadfunction
   $force_title
   ENDFUNCTIONS
     }      }
 # Graphical display after login only  # Graphical display after login only
     if ($Apache::lonxml::registered && !$forcereg) { return ''; }      if ($Apache::lonxml::registered && !$forcereg) { return ''; }
     $result.=&innerregister($forcereg,$target);      $result.=&innerregister($forcereg,$target);
     return $result;      return $result.$force_title;
 }  }
   
 # =========== This gets called in order to register a URL, both with the Remote  # =========== This gets called in order to register a URL, both with the Remote
Line 189  sub innerregister { Line 225  sub innerregister {
     my $forcereg=shift;      my $forcereg=shift;
     my $target = shift;      my $target = shift;
     my $result = '';      my $result = '';
       if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; }
   
     $Apache::lonxml::registered=1;      $Apache::lonxml::registered=1;
   
Line 203  sub innerregister { Line 240  sub innerregister {
     my $reopen=&Apache::lonmenu::reopenmenu();      my $reopen=&Apache::lonmenu::reopenmenu();
   
     my $newmail='';      my $newmail='';
       if ($noremote) {
    $newmail='<table bgcolor="'.$pgbg.'" border="0" cellspacing="3" cellpadding="3" width="100%"><tr><td bgcolor="'.$tabbg.'">';
       }
     if (($textual) && ($ENV{'request.symb'}) && ($ENV{'request.course.id'})) {      if (($textual) && ($ENV{'request.symb'}) && ($ENV{'request.course.id'})) {
  my ($mapurl,$rid,$resurl)=split(/\_\_\_/,$ENV{'request.symb'});   my ($mapurl,$rid,$resurl)=split(/\_\_\_/,$ENV{'request.symb'});
         $newmail=$ENV{'course.'.$ENV{'request.course.id'}.'.description'};          $newmail.=$ENV{'course.'.$ENV{'request.course.id'}.'.description'};
         my $maptitle=&Apache::lonnet::gettitle($mapurl);          my $maptitle=&Apache::lonnet::gettitle($mapurl);
  my $restitle=&Apache::lonnet::gettitle($resurl);   my $restitle=&Apache::lonnet::gettitle($resurl);
         if ($maptitle) {          if ($maptitle) {
Line 221  sub innerregister { Line 261  sub innerregister {
  '<b><a href="/adm/communicate">You have new messages</a></b><br />':   '<b><a href="/adm/communicate">You have new messages</a></b><br />':
                           'swmenu.setstatus("you have","messages");');                            'swmenu.setstatus("you have","messages");');
     }      }
       if ($noremote) {
    $newmail.='</td></tr></table>';
       }
     my $timesync=($textual?'':'swmenu.syncclock(1000*'.time.');');      my $timesync=($textual?'':'swmenu.syncclock(1000*'.time.');');
     my $tablestart=($noremote?'<table bgcolor="'.$pgbg.'" border="0" cellspacing="3" cellpadding="3" width="100%">':'');      my $tablestart=($noremote?'<table bgcolor="'.$pgbg.'" border="0" cellspacing="3" cellpadding="3" width="100%">':'');
     my $tableend=($noremote?'</table>':'');      my $tableend=($noremote?'</table>':'');
Line 344  $inlinebuttons Line 387  $inlinebuttons
 $tableend  $tableend
 $form  $form
 <script>  <script>
 //END LON-CAPA Internal  // END LON-CAPA Internal
 </script>  </script>
   
 ENDREGTEXT  ENDREGTEXT
Line 355  ENDREGTEXT Line 398  ENDREGTEXT
 <script language="JavaScript">  <script language="JavaScript">
 // BEGIN LON-CAPA Internal  // BEGIN LON-CAPA Internal
 var swmenu=null;  var swmenu=null;
   swmenu=$reopen;
   swmenu.windowloaded(self.name);
   
     function LONCAPAreg() {      function LONCAPAreg() {
   swmenu=$reopen;    swmenu=$reopen;
             swmenu.windowloaded(self.name);
           swmenu.clearTimeout(swmenu.menucltim);            swmenu.clearTimeout(swmenu.menucltim);
           $timesync            $timesync
           $newmail            $newmail
Line 385  var swmenu=null; Line 431  var swmenu=null;
  'clearbut(2,1);clearbut(2,3);clearbut(8,1);clearbut(8,2);clearbut(8,3);'+   'clearbut(2,1);clearbut(2,3);clearbut(8,1);clearbut(8,2);clearbut(8,3);'+
  'clearbut(9,1);clearbut(9,2);clearbut(9,3);clearbut(6,3);clearbut(6,1)',   'clearbut(9,1);clearbut(9,2);clearbut(9,3);clearbut(6,3);clearbut(6,1)',
   2000);    2000);
             swmenu.windowunloaded(self.name);
       }        }
   
 // END LON-CAPA Internal  // END LON-CAPA Internal
Line 409  var swmenu=null; Line 455  var swmenu=null;
   
     function LONCAPAreg() {      function LONCAPAreg() {
   swmenu=$reopen    swmenu=$reopen
     swmenu.windowloaded(self.name);
           $timesync            $timesync
           swmenu.currentStale=1;            swmenu.currentStale=1;
           swmenu.clearbut(2,1);            swmenu.clearbut(2,1);
Line 425  var swmenu=null; Line 472  var swmenu=null;
     }      }
   
     function LONCAPAstale() {      function LONCAPAstale() {
      swmenu=$reopen
     swmenu.windowunloaded(self.name);  
     }      }
   
 // END LON-CAPA Internal  // END LON-CAPA Internal
Line 437  ENDDONOTREGTHIS Line 486  ENDDONOTREGTHIS
 }  }
   
 sub loadevents() {  sub loadevents() {
       if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; }
     return 'LONCAPAreg();';      return 'LONCAPAreg();';
 }  }
   
 sub unloadevents() {  sub unloadevents() {
       if ($ENV{'REQUEST_URI'} eq '/res/adm/pages/menu.html') { return ''; }
     return 'LONCAPAstale();';      return 'LONCAPAstale();';
 }  }
   
Line 553  ENDRESIZE Line 604  ENDRESIZE
 window.status='Opening LON-CAPA Remote Control';  window.status='Opening LON-CAPA Remote Control';
 var menu=window.open("/res/adm/pages/menu.html","$menuname",  var menu=window.open("/res/adm/pages/menu.html","$menuname",
 "height=350,width=150,scrollbars=no,menubar=no,top=5,left=5,screenX=5,screenY=5");  "height=350,width=150,scrollbars=no,menubar=no,top=5,left=5,screenX=5,screenY=5");
   self.name='loncapaclient';
 ENDOPEN  ENDOPEN
     return '<script>'.$returnval.'</script>';      return '<script>'.$returnval.'</script>';
 }  }
Line 590  sub switch { Line 642  sub switch {
        my $text=$top.' '.$bot;         my $text=$top.' '.$bot;
        $text=~s/\- //;         $text=~s/\- //;
        $inlineremote[10*$row+$col]="\n".($nobreak?' ':'<br />').         $inlineremote[10*$row+$col]="\n".($nobreak?' ':'<br />').
         '<a href="javascript:'.$act.';" target="_top">'.$text.'</a> '.          '<a href="javascript:'.$act.';">'.$text.'</a> '.
         ($nobreak?'':$desc);          ($nobreak?'':$desc);
    } else {     } else {
 # Inline Remote  # Inline Remote
Line 600  sub switch { Line 652  sub switch {
        $inlineremote[10*$row+$col]="\n".         $inlineremote[10*$row+$col]="\n".
          ($nobreak==3?'<td width="50%" colspan="2" align="right"':'<tr><td').           ($nobreak==3?'<td width="50%" colspan="2" align="right"':'<tr><td').
          ' bgcolor="'.$tabbg.'"'.($nobreak==1?' width="50%" colspan="2"':'').           ' bgcolor="'.$tabbg.'"'.($nobreak==1?' width="50%" colspan="2"':'').
      '"><a href="javascript:'.$act.';" target="_top"><font color="'.$font.'"'.       '"><a href="javascript:'.$act.';"><font color="'.$font.'"'.
           ($nobreak?' size="+1"':'').            ($nobreak?' size="+1"':'').
      '>'.$text.'</font></a></td>'.       '>'.$text.'</font></a></td>'.
      ($nobreak?'':'<td colspan="3" width="80%"><font color="'.$font.'" size="-1">'.$desc.'</font>').($nobreak!=1?'</tr>':'');       ($nobreak?'':'<td colspan="3" width="80%"><font color="'.$font.'" size="-1">'.$desc.'</font>').($nobreak!=1?'</tr>':'');
Line 802  ENDUTILITY Line 854  ENDUTILITY
 sub serverform {  sub serverform {
     return(<<ENDSERVERFORM);      return(<<ENDSERVERFORM);
   
 <form name="server" action="/adm/logout" method="post">  <form name="server" action="/adm/logout" method="post" target="_top">
 <input type="hidden" name="postdata" value="none" />  <input type="hidden" name="postdata" value="none" />
 <input type="hidden" name="command" value="none" />  <input type="hidden" name="command" value="none" />
 <input type="hidden" name="url" value="none" />  <input type="hidden" name="url" value="none" />

Removed from v.1.61  
changed lines
  Added in v.1.75


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