Diff for /loncom/homework/caparesponse/caparesponse.pm between versions 1.44 and 1.45

version 1.44, 2001/10/01 20:18:31 version 1.45, 2001/10/29 22:50:32
Line 66  sub start_numericalresponse { Line 66  sub start_numericalresponse {
       $result.=&Apache::edit::select_arg('Type:','type',        $result.=&Apache::edit::select_arg('Type:','type',
  ['cs','ci','mc'],$token)   ['cs','ci','mc'],$token)
     } elsif ($token->[1] eq 'formularesponse') {      } elsif ($token->[1] eq 'formularesponse') {
       $result.=&Apache::edit::text_arg('Sample Points:','points',$token,40);        $result.=&Apache::edit::text_arg('Sample Points:','samples',$token,40);
     }      }
     $result.='</td></tr><tr><td colspan="3">';      $result.='</td></tr><tr><td colspan="3">';
   } elsif ($target eq 'modified') {    } elsif ($target eq 'modified') {
Line 79  sub start_numericalresponse { Line 79  sub start_numericalresponse {
  'answer','type');   'answer','type');
     } elsif ($token->[1] eq 'formularesponse') {      } elsif ($token->[1] eq 'formularesponse') {
       $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval,        $constructtag=&Apache::edit::get_new_args($token,$parstack,$safeeval,
  'answer','points');   'answer','samples');
     }      }
     if ($constructtag) {      if ($constructtag) {
       $result = &Apache::edit::rebuild_tag($token);        $result = &Apache::edit::rebuild_tag($token);
Line 96  sub end_numericalresponse { Line 96  sub end_numericalresponse {
   my $result = '';    my $result = '';
   if ( $target eq 'grade' ) {    if ( $target eq 'grade' ) {
     if ( defined $ENV{'form.submitted'}) {      if ( defined $ENV{'form.submitted'}) {
       &Apache::response::setup_params('numericalresponse');        &Apache::response::setup_params($$tagstack[-1]);
       $safeeval->share_from('capa',['&caparesponse_capa_check_answer']);        $safeeval->share_from('capa',['&caparesponse_capa_check_answer']);
       my $partid = $Apache::inputtags::part;        my $partid = $Apache::inputtags::part;
       my $id = $Apache::inputtags::response['-1'];        my $id = $Apache::inputtags::response['-1'];
Line 115  sub end_numericalresponse { Line 115  sub end_numericalresponse {
   $expression.= ';my $'. #'    $expression.= ';my $'. #'
     $key.'="'.$Apache::inputtags::params{$key}.'"';      $key.'="'.$Apache::inputtags::params{$key}.'"';
  }   }
    if ($$tagstack[-1] eq 'formularesponse') {
     $expression.=';$type="fml";';
    }
  $expression.="');";   $expression.="');";
  $result = &Apache::run::run($expression,$safeeval);   $result = &Apache::run::run($expression,$safeeval);
  my ($awards) = split /:/ , $result;   my ($awards) = split /:/ , $result;
Line 142  sub end_numericalresponse { Line 145  sub end_numericalresponse {
    $safeeval);     $safeeval);
       my $unit=&Apache::lonxml::get_param_var('unit',$parstack,$safeeval);        my $unit=&Apache::lonxml::get_param_var('unit',$parstack,$safeeval);
   
       $result="<br></br>The computer got ";        $result="<br />The computer got ";
   
       for (my $i=0; $i <= $#answers; $i++) {        for (my $i=0; $i <= $#answers; $i++) {
  my $answer=$answers[$i];   my $answer=$answers[$i];
Line 172  sub end_numericalresponse { Line 175  sub end_numericalresponse {
     my $unit=&Apache::lonxml::get_param_var('unit',$parstack,$safeeval);      my $unit=&Apache::lonxml::get_param_var('unit',$parstack,$safeeval);
     my $type=&Apache::lonxml::get_param('type',$parstack,$safeeval);      my $type=&Apache::lonxml::get_param('type',$parstack,$safeeval);
   
     $result.=&Apache::response::answer_header('numericalresponse');      $result.=&Apache::response::answer_header($$tagstack[-1]);
     for(my $i=0;$i<=$#answers;$i++) {      for(my $i=0;$i<=$#answers;$i++) {
       my $ans=$answers[$i];        my $ans=$answers[$i];
       my $fmt;        my $fmt;
Line 184  sub end_numericalresponse { Line 187  sub end_numericalresponse {
  }   }
       }        }
       if ($fmt) { $ans = sprintf('%.'.$fmt,$ans); }        if ($fmt) { $ans = sprintf('%.'.$fmt,$ans); }
       $result.=&Apache::response::answer_part('numericalresponse',$ans);        $result.=&Apache::response::answer_part($$tagstack[-1],$ans);
     }      }
     if ($unit) {      if ($unit) {
       $result.=&Apache::response::answer_part('numericalresponse',        $result.=&Apache::response::answer_part($$tagstack[-1],
       '<b>'.$unit.'</b>');        '<b>'.$unit.'</b>');
     }      }
     if ($type || $token->[1] eq 'stringresponse') {      if ($type || $token->[1] eq 'stringresponse') {
Line 198  sub end_numericalresponse { Line 201  sub end_numericalresponse {
  $string='Case Sensitive';   $string='Case Sensitive';
       } elsif ($type eq 'ci') {        } elsif ($type eq 'ci') {
  $string='Case Insensitive';   $string='Case Insensitive';
         } elsif ($type eq 'fml') {
    $string='Formula';
       }        }
       $result.=&Apache::response::answer_part('numericalresponse',        $result.=&Apache::response::answer_part($$tagstack[-1],
       '<b>'.$string.'</b>');        '<b>'.$string.'</b>');
     }      }
     $result.=&Apache::response::answer_footer('numericalresponse');      if ($$tagstack[-1] eq 'formularesponse') {
         my $samples=&Apache::lonxml::get_param('samples',$parstack,$safeeval);
         $result.=&Apache::response::answer_part($$tagstack[-1],$samples);
       }
       $result.=&Apache::response::answer_footer($$tagstack[-1]);
   }    }
   &Apache::response::end_response;    &Apache::response::end_response;
   return $result;    return $result;

Removed from v.1.44  
changed lines
  Added in v.1.45


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