Diff for /loncom/homework/structuretags.pm between versions 1.195 and 1.200.2.2

version 1.195, 2003/07/11 15:10:54 version 1.200.2.2, 2003/10/03 15:27:56
Line 39  use Apache::lonmenu; Line 39  use Apache::lonmenu;
   
 BEGIN {  BEGIN {
     &Apache::lonxml::register('Apache::structuretags',('block','languageblock','instructorcomment','while','randomlist','problem','library','web','tex','part','preduedate','postanswerdate','solved','notsolved','startouttext','endouttext',      &Apache::lonxml::register('Apache::structuretags',('block','languageblock','instructorcomment','while','randomlist','problem','library','web','tex','part','preduedate','postanswerdate','solved','notsolved','startouttext','endouttext',
 'simpleeditbutton'));  'simpleeditbutton','definetag'));
 }  }
   
 sub start_web {  sub start_web {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
     if (!($target eq 'web' || $target eq 'edit' || $target eq 'modified' ||      my $bodytext=&Apache::lonxml::get_all_text("/web",$parser);
   $target eq 'answer' || $target eq 'grade' || $target eq 'meta' )) {      if ($target eq 'web') {
  my $bodytext=&Apache::lonxml::get_all_text("/web",$parser);   return $bodytext;
     }      }
     return '';      return '';
 }  }
Line 57  sub end_web { Line 57  sub end_web {
   
 sub start_tex {  sub start_tex {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
     if (!($target eq 'tex' || $target eq 'edit' || $target eq 'modified' ||      my $result='';
   $target eq 'answer' || $target eq 'grade' || $target eq 'meta' )) {      my $bodytext=&Apache::lonxml::get_all_text("/tex",$parser);
  &Apache::lonxml::debug("tex 1");      if ($target eq 'tex') {
  my $bodytext=&Apache::lonxml::get_all_text("/tex",$parser);   return $bodytext.' ';
     }      }
     return '';      return $result;;
 }  }
   
 sub end_tex {  sub end_tex {
Line 72  sub end_tex { Line 72  sub end_tex {
 sub page_start {  sub page_start {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
     my %found;      my %found;
     foreach my $taginside ($tagstack) {      foreach my $taginside (@$tagstack) {
  foreach my $taglookedfor ('html','body','form') {   foreach my $taglookedfor ('html','body','form') {
     if ($taginside =~ /^$taglookedfor$/i) {$found{$taglookedfor} = 1;}      if ($taginside =~ /^$taglookedfor$/i) {$found{$taglookedfor} = 1;}
  }   }
Line 91  sub page_start { Line 91  sub page_start {
     'onUnload="'.&Apache::lonmenu::unloadevents().'" ';      'onUnload="'.&Apache::lonmenu::unloadevents().'" ';
  my $background=&Apache::lonxml::get_param('background',$parstack,   my $background=&Apache::lonxml::get_param('background',$parstack,
   $safeeval);    $safeeval);
    if ($ENV{'browser.imagesuppress'} eq 'on') { $background=''; }
  if ($background) {   if ($background) {
     $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=      $Apache::lonxml::extlinks[$#Apache::lonxml::extlinks+1]=
  $background;   $background;
Line 98  sub page_start { Line 99  sub page_start {
  } else {   } else {
     my $bgcolor=&Apache::lonxml::get_param('bgcolor',$parstack,      my $bgcolor=&Apache::lonxml::get_param('bgcolor',$parstack,
    $safeeval);     $safeeval);
     if ($bgcolor) {      if (($bgcolor) && ($ENV{'browser.blackwhite'} ne 'on')) {
  $body_tag_start.='bgcolor="'.$bgcolor.'" ';   $body_tag_start.='bgcolor="'.$bgcolor.'" ';
     } else {      } else {
  $body_tag_start.='bgcolor="#ffffff"';   $body_tag_start.='bgcolor="#ffffff"';
     }      }
  }   }
    if ($ENV{'browser.fontenhance'} eq 'on') {
       $body_tag_start.=' style="font-size: x-large;" ';
    }
  $body_tag_start.='>'.&Apache::lonmenu::menubuttons(undef,$target,1);   $body_tag_start.='>'.&Apache::lonmenu::menubuttons(undef,$target,1);
  if ($target eq 'web' && $ENV{'request.state'} ne 'construct') {   if ($target eq 'web' && $ENV{'request.state'} ne 'construct') {
     my ($symb,undef,undef,undef,$publicuser)=      my ($symb,undef,undef,undef,$publicuser)=
Line 596  sub end_library { Line 600  sub end_library {
     return $result;      return $result;
 }  }
   
   sub start_definetag {
       my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
   
       my $result;
   
       my $name = $token->[2]->{'name'};
       my $skip=&Apache::lonxml::get_all_text("/definetag",$parser);
       if ($name=~/^\//) {
    $result=
    '<br /><table bgcolor="#FFBBBB"><tr><th>END <tt>'.$name.'</tt></th></tr>';
       } else {
    $result=
    '<br /><table bgcolor="#BBFFBB"><tr><th>BEGIN <tt>'.$name.'</tt></th></tr>';
       }
       $skip=~s/\</\&lt\;/gs;
       $skip=~s/\>/\&gt\;/gs;
       $result.='<tr><td><pre>'.$skip.'</pre></td></tr></table>';
       return $result;
   }
   
   sub end_definetag {
       return '';
   }
   
 sub start_block {  sub start_block {
     my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
   
Line 947  sub end_part { Line 975  sub end_part {
     } elsif (($target eq 'web' || $target eq 'tex') && !$hidden ) {      } elsif (($target eq 'web' || $target eq 'tex') && !$hidden ) {
  my $gradestatus=&Apache::inputtags::gradestatus($Apache::inputtags::part,   my $gradestatus=&Apache::inputtags::gradestatus($Apache::inputtags::part,
  $target);   $target);
  if ($Apache::lonhomework::type eq 'exam') {$gradestatus='';}   if ($Apache::lonhomework::type eq 'exam' && $target eq 'tex') {
       $gradestatus='';
    }
  $result=$gradestatus;   $result=$gradestatus;
     } elsif ($target eq 'edit') {      } elsif ($target eq 'edit') {
  $result=&Apache::edit::end_table();   $result=&Apache::edit::end_table();
Line 1097  sub start_simpleeditbutton { Line 1127  sub start_simpleeditbutton {
         my $url=$ENV{'REQUEST_URI'};          my $url=$ENV{'REQUEST_URI'};
         $url=~s/\?.*$//;          $url=~s/\?.*$//;
  $result='<table width="100%" bgcolor="#FFFFAA" border="2"><tr><td>'.   $result='<table width="100%" bgcolor="#FFFFAA" border="2"><tr><td>'.
                 '<a href="'.$url.'/smpedit">Simple Problem Editor</a> - Note: it can take up to 10 minutes for changes to take effect for all users.</td></tr></table><br />';                  '<a href="'.$url.'/smpedit">Simple Problem Editor</a> - Note: it can take up to 10 minutes for changes to take effect for all users.'.
   &Apache::loncommon::help_open_topic('Caching').'</td></tr></table><br />';
     }      }
     return $result;      return $result;
 }  }

Removed from v.1.195  
changed lines
  Added in v.1.200.2.2


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