Diff for /loncom/homework/caparesponse/caparesponse.pm between versions 1.7 and 1.16

version 1.7, 2000/10/02 22:15:37 version 1.16, 2000/12/04 21:53:07
Line 11  sub BEGIN { Line 11  sub BEGIN {
   
 $Apache::caparesponse::result='';  $Apache::caparesponse::result='';
 sub start_caparesponse {  sub start_caparesponse {
   my $envkey;    my ($target,$token,$parstack,$parser,$safeeval)=@_;
       my $args ='';
   foreach $envkey (sort keys %ENV) {    if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; }
     Apache::lonxml::debug("$envkey ---- $ENV{$envkey}<br>");    my $id = &Apache::run::run("{$args;".'return $id}',$safeeval);
   }    if ($id eq '') { $id = $Apache::lonxml::curdepth; }
       push (@Apache::inputtags::response,$id);
   Apache::lonxml::debug("\n<br>\nreal caparesponse<br>\n");    push (@Apache::inputtags::responselist,$id);
     return '';
     #my $envkey;
     #foreach $envkey (sort keys %ENV) {
     #  Apache::lonxml::debug("$envkey ---- $ENV{$envkey}<br>");
     #}
     #Apache::lonxml::debug("\n<br>\nreal caparesponse<br>\n");
 }  }
   
 sub end_caparesponse {  sub end_caparesponse {
   my ($target,$token,$parstack,$parser,$safeeval,$style)=@_;    my ($target,$token,$parstack,$parser,$safeeval,$style)=@_;
   if ( defined $ENV{'form.'.$ENV{'form.request.prefix'}.'submit'}) {    my $result = '';
     $Apache::caparesponse::result='';    if ( $target eq 'grade' ) {
     $safeeval->share('&caparesponse_capa_check_answer');      if ( defined $ENV{'form.submit'}) {
     $safeeval->share('$Apache::caparesponse::result');        $Apache::caparesponse::result='';
     my $response = $ENV{'form.'.$ENV{'form.request.prefix'}.'HWVAL'.$Apache::inputtags::curvalue};        $safeeval->share_from('capa',['&caparesponse_capa_check_answer']);
     Apache::lonxml::debug("submitted a $response<br>\n");        my $response = $ENV{'form.HWVAL'.$Apache::inputtags::curvalue};
     Apache::lonxml::debug($$parstack[$#$parstack] . "\n<br>");        $Apache::lonhomework::results{"resource.submission.$Apache::inputtags::part.$Apache::inputtags::response['-1']"}=$response;
     my $expression="caparesponse_check $response $$parstack[$#$parstack];";      &Apache::lonxml::debug("submitted a $response<br>\n");
     &Apache::run::run($expression,$safeeval);        &Apache::lonxml::debug($$parstack[$#$parstack] . "\n<br>");
             my $expression="&caparesponse_check('".$response."','".
     &Apache::lonxml::debug("\n<br>result:$Apache::caparesponse::result:<br>\n");   $$parstack[$#$parstack].
     ';my $tol="'.$Apache::inputtags::params{'tol'}.'"'.
       ';my $sig="'.$Apache::inputtags::params{'sig'}.'"'.
         "');";
         $result = &Apache::run::run($expression,$safeeval);
         my ($ad) = split /:/ , $result;
         $Apache::lonhomework::results{"resource.awarddetail.$Apache::inputtags::part.$Apache::inputtags::response['-1']"}=$ad;
         &Apache::lonxml::debug("$expression");
         &Apache::lonxml::debug("\n<br>result:$Apache::caparesponse::result:$result:$Apache::lonxml::curdepth<br>\n");
       }
     } else {
       $result .= "The correct answer is ".&Apache::run::run("{$$parstack['-1'];".'return $answer}',$safeeval)."\n";
   }    }
   #Apache::lonxml::debug("\n<br>\nreal end caparesponse<br>\n");    #Apache::lonxml::debug("\n<br>\nreal end caparesponse<br>\n");
     pop @Apache::inputtags::response;
     return $result;
 }  }
   
 1;  1;

Removed from v.1.7  
changed lines
  Added in v.1.16


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