Diff for /loncom/homework/inputtags.pm between versions 1.63 and 1.70

version 1.63, 2002/10/01 21:05:45 version 1.70, 2002/10/28 19:19:19
Line 32  use HTML::Entities(); Line 32  use HTML::Entities();
 use strict;  use strict;
   
 BEGIN {  BEGIN {
   &Apache::lonxml::register('Apache::inputtags',('textfield','textline','datasubmission'));    &Apache::lonxml::register('Apache::inputtags',('textfield','textline'));
 }  }
   
   
Line 175  sub end_textline { Line 175  sub end_textline {
   return "";    return "";
 }  }
   
 sub start_datasubmission {  
   my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;  
   my $id = &Apache::response::start_response($parstack,$safeeval);  
   my $result;  
   if ($target eq 'meta') {  
     $result = &Apache::response::meta_stores_write($token->[2]->{'name'},  
    $token->[2]->{'type'},  
    $token->[2]->{'display'});  
     $result .= &Apache::response::meta_package_write('datasubmission');  
   }  
   return $result;  
 }  
   
 sub end_datasubmission {  
   my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;  
   my $result;  
   if ( $target eq 'web' ) {  
   } elsif ($target eq 'grade' ) {  
     if ( defined $ENV{'form.submitted'}) {  
       &Apache::response::setup_params('datasubmission');  
       my $partid = $Apache::inputtags::part;  
       my $id = $Apache::inputtags::response['-1'];  
       my $response = $ENV{'form.HWVAL'.$id};  
       my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval);  
       if ( $response =~ /[^\s]/) {  
  $Apache::lonhomework::results{"resource.$partid.$id.$name"}=  
   $response;  
       }  
     }  
   }  
   &Apache::response::end_response;  
   return $result;  
 }  
   
 sub finalizeawards {  sub finalizeawards {
   my $result='';    my $result='';
   my $award;    my $award;
Line 268  sub finalizeawards { Line 234  sub finalizeawards {
 }  }
   
 sub decideoutput {  sub decideoutput {
   my ($award,$solved,$previous)=@_;    my ($award,$solved,$previous,$target)=@_;
   my $message='';    my $message='';
   my $button=0;    my $button=0;
   my $previousmsg;    my $previousmsg;
Line 276  sub decideoutput { Line 242  sub decideoutput {
   if ($previous) { $previousmsg='You have entered that answer before'; }    if ($previous) { $previousmsg='You have entered that answer before'; }
   
   if      ($solved =~ /^correct/) {    if      ($solved =~ /^correct/) {
     $message = "<b>You are correct.</b> Your receipt is ".      if ($target eq 'tex') {
         $message = '\textbf{You are correct}. Your receipt is '.
       &Apache::lonnet::receipt;        &Apache::lonnet::receipt;
       } else {
         $message = "<b>You are correct.</b> Your receipt is ".
         &Apache::lonnet::receipt;
       }
     $button=0;      $button=0;
     $previousmsg='';      $previousmsg='';
   } elsif ($solved =~ /^excused/) {    } elsif ($solved =~ /^excused/) {
Line 442  sub gradestatus { Line 413  sub gradestatus {
     if ( $award ne '' ) {      if ( $award ne '' ) {
       &Apache::lonxml::debug('Getting message');        &Apache::lonxml::debug('Getting message');
       ($showbutton,$message,$previousmsg) =        ($showbutton,$message,$previousmsg) =
  &decideoutput($award,$solved,$previous);   &decideoutput($award,$solved,$previous,$target);
       if ($target eq 'tex') {        if ($target eq 'tex') {
  $message=' '.$message.' ';   $message=' '.$message.' ';
       } else {        } else {
Line 460  sub gradestatus { Line 431  sub gradestatus {
     if ( $maxtries eq 'con_lost' ) { $maxtries = '0'; }       if ( $maxtries eq 'con_lost' ) { $maxtries = '0'; } 
     if ( $showbutton ) {      if ( $showbutton ) {
       if ($target eq 'tex') {        if ($target eq 'tex') {
  $trystr = ' '.$tries.'/'.$maxtries.' ';    if ($ENV{'request.state'} ne "construct") {
         $trystr = ' {\small \textit{Tries} '.$tries.'/'.$maxtries.'} \vskip 0 mm ';
     }
       } else {        } else {
          $trystr = "<td>Tries $tries/$maxtries</td>";           $trystr = "<td>Tries $tries/$maxtries</td>";
       }        }

Removed from v.1.63  
changed lines
  Added in v.1.70


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