--- loncom/homework/inputtags.pm 2004/11/06 01:27:42 1.149.2.2 +++ loncom/homework/inputtags.pm 2004/10/19 15:24:32 1.152 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # input definitons # -# $Id: inputtags.pm,v 1.149.2.2 2004/11/06 01:27:42 albertel Exp $ +# $Id: inputtags.pm,v 1.152 2004/10/19 15:24:32 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -347,8 +347,8 @@ sub decideoutput { $message = '\textbf{'.&mt('You are correct.').'}'; } else { $message = "".&mt('You are correct.').""; + $message.=" ".&mt("Computer's answer now shown above."); } - $message.=" ".&mt("Computer's answer now shown above."); $added_computer_text=1; unless ($ENV{'course.'. $ENV{'request.course.id'}. @@ -380,8 +380,8 @@ sub decideoutput { $message = '\textbf{'.&mt('You are correct.').'}'; } else { $message = "".&mt('You are correct.').""; + $message.=" ".&mt("Computer's answer now shown above."); } - $message.=" ".&mt("Computer's answer now shown above."); $added_computer_text=1; unless ($ENV{'course.'. $ENV{'request.course.id'}. @@ -439,17 +439,17 @@ sub decideoutput { $bgcolor=$possiblecolors{'not_charged_try'}; $button=1; } elsif ($award eq 'UNIT_INVALID_STUDENT') { - $message = &mt('Unable to interpret units. Computer reads units as "[_1]"',''.$awardmsg.'.'); + $message = &mt('Unable to interpret units. Computer reads units as "[_1]".',''.$awardmsg.''); if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units');} $bgcolor=$possiblecolors{'not_charged_try'}; $button=1; } elsif ($award eq 'UNIT_FAIL' || $award eq 'UNIT_IRRECONCIBLE') { - $message = &mt('Incompatible units. No conversion found between "[_1]" and the required units ',''.$awardmsg.'.'); + $message = &mt('Incompatible units. No conversion found between "[_1]" and the required units.',''.$awardmsg.''); if ($target ne 'tex') {$message.=&Apache::loncommon::help_open_topic('Physical_Units');} $bgcolor=$possiblecolors{'not_charged_try'}; $button=1; } elsif ($award eq 'UNIT_NOTNEEDED') { - $message = &mt('Only a number required. Computer reads units of "[_1]"',''.$awardmsg.'.'); + $message = &mt('Only a number required. Computer reads units of "[_1]".',''.$awardmsg.''); $bgcolor=$possiblecolors{'not_charged_try'}; $button=1; } elsif ($award eq 'NO_UNIT') { @@ -491,7 +491,7 @@ sub decideoutput { $button=1; } if ($Apache::inputtags::status[-1] eq 'SHOW_ANSWER' && - !$added_computer_text) { + !$added_computer_text && $target ne 'tex') { $message.=" ".&mt("Computer's answer now shown above."); $added_computer_text=1; } @@ -524,15 +524,10 @@ sub hidealldata { sub setgradedata { my ($award,$msg,$id,$previously_used) = @_; - if ($Apache::lonhomework::scantronmode && - &Apache::lonnet::validCODE($ENV{'form.CODE'})) { + # if the student already has it correct, don't modify the status + if ($Apache::lonhomework::scantronmode && defined($ENV{'form.CODE'})) { $Apache::lonhomework::results{"resource.CODE"}=$ENV{'form.CODE'}; - } elsif ($Apache::lonhomework::scantronmode && - $ENV{'form.CODE'} eq '' && - $Apache::lonhomework::history{"resource.CODE"} ne '') { - $Apache::lonhomework::results{"resource.CODE"}=''; } - if (!$Apache::lonhomework::scantronmode && $Apache::inputtags::status['-1'] ne 'CAN_ANSWER' && $Apache::inputtags::status['-1'] ne 'CANNOT_ANSWER') { @@ -541,10 +536,7 @@ sub setgradedata { } elsif ( $Apache::lonhomework::history{"resource.$id.solved"} !~ /^correct/ || $Apache::lonhomework::scantronmode || lc($Apache::lonhomework::problemstatus) eq 'no') { - # the student doesn't already have it correct, - # or we are in a mode (scantron orno problem status) where a correct - # can become incorrect - # handle assignment of tries and solved status + #handle assignment of tries and solved status my $solvemsg; if ($Apache::lonhomework::scantronmode) { $solvemsg='correct_by_scantron';