Diff for /loncom/homework/structuretags.pm between versions 1.105 and 1.106

version 1.105, 2002/08/23 21:17:16 version 1.106, 2002/08/26 20:29:30
Line 379  sub end_problem { Line 379  sub end_problem {
   my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;    my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
   my $result='';    my $result='';
   my $status=$Apache::inputtags::status['-1'];    my $status=$Apache::inputtags::status['-1'];
   if ($target eq 'grade' || $target eq 'web' || $target eq 'answer' ) {    if ($target eq 'grade' || $target eq 'web' || $target eq 'answer' || $target eq 'tex') {
     if ( $target eq 'grade' && $Apache::inputtags::part eq '0') {      if ( $target eq 'grade' && $Apache::inputtags::part eq '0') {
       # if part is zero, no <part>s existed, so we need to the grading        # if part is zero, no <part>s existed, so we need to the grading
       &Apache::inputtags::grade;        &Apache::inputtags::grade;
     } elsif ( $target eq 'web' && $Apache::inputtags::part eq '0' &&       } elsif ( ($target eq 'web' || $target eq 'tex') && $Apache::inputtags::part eq '0' && 
       $status ne 'UNCHECKEDOUT') {        $status ne 'UNCHECKEDOUT') {
       # if part is zero, no <part>s existed, so we need show the current         # if part is zero, no <part>s existed, so we need show the current 
       # grading status        # grading status
       $result.= &Apache::inputtags::gradestatus($Apache::inputtags::part);        my $gradesatement = &Apache::inputtags::gradestatus($Apache::inputtags::part);
         if ($target eq 'tex') {
     $gradesatement =~ s/<table>//;
     $gradesatement =~ s/<\/table>//;
     $gradesatement =~ s/<tr([^>]*)>//g;
     $gradesatement =~ s/<\/tr>//g;
     $gradesatement =~ s/<td([^>]*)>//g;
     $gradesatement =~ s/<\/td>//g;
     $gradesatement =~ s/<b>/\\textbf{/g;
     $gradesatement =~ s/<\/b>/}/g;
     $gradesatement =~ s/<br \/>/\\vskip 0 mm /g;
     $gradesatement =~ s/<input([^>]*)>//g;
         }
         $result.= $gradesatement;
         if ($target eq 'tex') {
     $result .= '\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill}';
     if (not $ENV{'request.symb'} =~ m/\.page_/) {
         $result .= '\end{document} ';
     } else {
         $result .= '} ';
     }
         }
     }      }
     if (      if (
  ($target eq 'web' && ($ENV{'request.state'} ne 'construct')) ||   (($target eq 'web' || $target eq 'tex') && ($ENV{'request.state'} ne 'construct')) ||
  ($target eq 'answer')   ($target eq 'answer')
        ) {         ) {
       if ($status eq 'CAN_ANSWER') {        if ($status eq 'CAN_ANSWER') {
  $result.="</form></body>\n";     if ($target ne 'tex') {
         $result.="</form></body>\n";
     } 
       } elsif ($status eq 'SHOW_ANSWER' || $status eq 'CANNOT_ANSWER' ||        } elsif ($status eq 'SHOW_ANSWER' || $status eq 'CANNOT_ANSWER' ||
        $status eq 'UNCHECKEDOUT' ) {         $status eq 'UNCHECKEDOUT' ) {
  $result.="</body>\n";    if ($target ne 'tex') {
         $result.="</body>\n";
     }
         }
         if ($target ne 'tex') {
     $result.=&Apache::lonxml::xmlend();
         } else {
         $result .= '\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill}';
         if (not $ENV{'request.symb'} =~ m/\.page_/) {
     $result .= '\end{document} ';
         } else {
     $result .= '} ';
         }
       }        }
       $result.=&Apache::lonxml::xmlend();  
     }      }
     if ($target eq 'grade') {       if ($target eq 'grade') { 
       &Apache::lonhomework::showhash(%Apache::lonhomework::results);        &Apache::lonhomework::showhash(%Apache::lonhomework::results);
Line 412  sub end_problem { Line 446  sub end_problem {
   } elsif ($target eq 'edit') {    } elsif ($target eq 'edit') {
     &Apache::lonxml::debug("in end_problem with $target, edit");      &Apache::lonxml::debug("in end_problem with $target, edit");
     $result = &problem_edit_footer();      $result = &problem_edit_footer();
   } elsif ($target eq 'tex') {    } 
       $result .= '\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill}';  
       if (not $ENV{'request.symb'} =~ m/\.page_/) {  
   $result .= '\end{document} ';  
       } else {  
   $result .= '} ';  
       }  
   }  
   return $result;    return $result;
 }  }
   

Removed from v.1.105  
changed lines
  Added in v.1.106


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