Diff for /loncom/homework/response.pm between versions 1.65 and 1.69

version 1.65, 2002/10/08 18:04:04 version 1.69, 2003/02/13 23:48:27
Line 68  sub start_hintresponse { Line 68  sub start_hintresponse {
   
 sub end_hintresponse {  sub end_hintresponse {
   pop @Apache::inputtags::response;    pop @Apache::inputtags::response;
   %Apache::inputtags::params=@{pop(@Apache::inputtags::paramstack)};    if (defined($Apache::inputtags::paramstack[-1])) {
         %Apache::inputtags::params=
     @{ pop(@Apache::inputtags::paramstack) };
     }
   return '';    return '';
 }  }
   
Line 172  sub check_for_previous { Line 175  sub check_for_previous {
   my ($curresponse,$partid,$id) = @_;    my ($curresponse,$partid,$id) = @_;
   my %previous;    my %previous;
   $previous{'used'} = 0;    $previous{'used'} = 0;
   foreach my $key (reverse(sort(keys(%Apache::lonhomework::history)))) {    foreach my $key (sort(keys(%Apache::lonhomework::history))) {
     if ($key =~ /resource\.$partid\.$id\.submission/) {      if ($key =~ /resource\.$partid\.$id\.submission/) {
       &Apache::lonxml::debug("Trying $key");        &Apache::lonxml::debug("Trying $key");
       my $pastresponse=$Apache::lonhomework::history{$key};        my $pastresponse=$Apache::lonhomework::history{$key};
Line 183  sub check_for_previous { Line 186  sub check_for_previous {
   $history=$1;    $history=$1;
   $previous{'award'} = $Apache::lonhomework::history{"$history:resource.$partid.$id.awarddetail"};    $previous{'award'} = $Apache::lonhomework::history{"$history:resource.$partid.$id.awarddetail"};
   $previous{'last'}='0';    $previous{'last'}='0';
     push(@{ $previous{'version'} },$history);
  } else {   } else {
   $previous{'award'} = $Apache::lonhomework::history{"resource.$partid.$id.awarddetail"};    $previous{'award'} = $Apache::lonhomework::history{"resource.$partid.$id.awarddetail"};
   $previous{'last'}='1';    $previous{'last'}='1';
  }   }
  if (! $previous{'award'} ) { $previous{'award'} = 'UNKNOWN'; }   if (! $previous{'award'} ) { $previous{'award'} = 'UNKNOWN'; }
  &Apache::lonxml::debug("got a match :$previous{'award'}:$previous{'used'}:");   &Apache::lonxml::debug("got a match :$previous{'award'}:$previous{'used'}:");
  last;  
       }        }
     }      }
   }    }
     &Apache::lonhomework::showhash(%previous);
   return %previous;    return %previous;
 }  }
   
Line 204  sub handle_previous { Line 208  sub handle_previous {
     } else {      } else {
       push(@Apache::inputtags::previous,'PREVIOUSLY_USED');        push(@Apache::inputtags::previous,'PREVIOUSLY_USED');
     }      }
       push(@Apache::inputtags::previous_version,$$previous{'version'});
   }    }
 }  }
   
Line 245  sub end_dataresponse { Line 250  sub end_dataresponse {
       my ($symb,$courseid,$domain,$name)=&Apache::lonxml::whichuser();        my ($symb,$courseid,$domain,$name)=&Apache::lonxml::whichuser();
       my $allowed=&Apache::lonnet::allowed('mgr',$courseid);        my $allowed=&Apache::lonnet::allowed('mgr',$courseid);
       if ($allowed) {        if ($allowed) {
  &Apache::response::setup_params('datasubmission');   &Apache::response::setup_params('dataresponse');
  my $partid = $Apache::inputtags::part;   my $partid = $Apache::inputtags::part;
  my $id = $Apache::inputtags::response['-1'];   my $id = $Apache::inputtags::response['-1'];
  my $response = $ENV{'form.HWVAL'.$id};   my $response = $ENV{'form.HWVAL'.$id};
Line 293  sub start_responseparam { Line 298  sub start_responseparam {
       $result = &Apache::edit::rebuild_tag($token);        $result = &Apache::edit::rebuild_tag($token);
       $result.=&Apache::edit::handle_insert();        $result.=&Apache::edit::handle_insert();
     }      }
   } elsif ($target eq 'grade' || $target eq 'answer' ||    } elsif ($target eq 'grade' || $target eq 'answer' || $target eq 'web' ||
    $target eq 'web'   || $target eq 'tex') {     $target eq 'tex' || $target eq 'analyze' ) {
     if ($ENV{'request.state'} eq 'construct') {      if ($ENV{'request.state'} eq 'construct') {
       my $name    = &Apache::lonxml::get_param('name',$parstack,$safeeval);        my $name    = &Apache::lonxml::get_param('name',$parstack,$safeeval);
       my $default = &Apache::lonxml::get_param('default',$parstack,$safeeval);        my $default = &Apache::lonxml::get_param('default',$parstack,$safeeval);
Line 320  sub end_parameter { Line 325  sub end_parameter {
   return $result;    return $result;
 }  }
   
   sub reset_params {
       %Apache::inputtags::params=();
   }
   
 sub setup_params {  sub setup_params {
   my ($tag) = @_;    my ($tag) = @_;
   
   if ($ENV{'request.state'} eq 'construct') { return; }    if ($ENV{'request.state'} eq 'construct') { return; }
   %Apache::inputtags::params=();  
   my %paramlist=();    my %paramlist=();
   foreach my $key (keys(%Apache::lonnet::packagetab)) {    foreach my $key (keys(%Apache::lonnet::packagetab)) {
     if ($key =~ /^$tag/) {      if ($key =~ /^$tag/) {

Removed from v.1.65  
changed lines
  Added in v.1.69


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