--- loncom/homework/radiobuttonresponse.pm 2010/05/03 14:43:50 1.145 +++ loncom/homework/radiobuttonresponse.pm 2011/05/27 18:40:37 1.148 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # mutliple choice style responses # -# $Id: radiobuttonresponse.pm,v 1.145 2010/05/03 14:43:50 onken Exp $ +# $Id: radiobuttonresponse.pm,v 1.148 2011/05/27 18:40:37 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -141,7 +141,7 @@ sub start_foilgroup { my $result; %Apache::response::foilgroup=(); $Apache::radiobuttonresponse::conceptgroup=0; - &Apache::response::pushrandomnumber(); + &Apache::response::pushrandomnumber(undef,$target); if ($target eq 'tex' && $Apache::lonhomework::type eq 'exam') { $result.='\item[\textbf{'.$Apache::lonxml::counter.'}.]'; } @@ -167,7 +167,7 @@ sub storesurvey { if ($style eq 'anonsurvey') { $ad=$Apache::lonhomework::results{"resource.$part.$id.awarddetail"}='ANONYMOUS'; } elsif ($style eq 'anonsurveycred') { - $ad=$Apache::lonhomework::results{"resource.$part.$id.awarddetail"}='ANONYMOUS_CRED'; + $ad=$Apache::lonhomework::results{"resource.$part.$id.awarddetail"}='ANONYMOUS_CREDIT'; } elsif ($style eq 'surveycred') { $ad=$Apache::lonhomework::results{"resource.$part.$id.awarddetail"}='SUBMITTED_CREDIT'; } else { @@ -336,14 +336,24 @@ sub displayallfoils { my $i =0; my $id=$Apache::inputtags::response['-1']; my $part=$Apache::inputtags::part; - my $lastresponse; - unless ((($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurvey') || ($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurveycred')) && (defined($env{'form.grade_symb'}))) { + my ($lastresponse,$newvariation,$showanswer); + if ((($Apache::lonhomework::history{"resource.$part.type"} eq 'randomizetry') || + ($Apache::lonhomework::type eq 'randomizetry')) && + ($Apache::inputtags::status[-1] eq 'CAN_ANSWER')) { + if ($env{'form.'.$part.'.rndseed'} ne + $Apache::lonhomework::history{"resource.$part.rndseed"}) { + $newvariation = 1; + } + } + $showanswer = &Apache::response::show_answer(); + unless ((($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurvey') || ($Apache::lonhomework::history{"resource.$part.type"} eq 'anonsurveycred')) && (defined($env{'form.grade_symb'})) || + ($newvariation && !$showanswer)) { $lastresponse = $Apache::lonhomework::history{"resource.$part.$id.submission"}; } if ($direction eq 'horizontal') { $result.='