--- loncom/homework/inputtags.pm 2004/06/04 22:06:07 1.144 +++ loncom/homework/inputtags.pm 2004/09/09 09:52:58 1.150 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # input definitons # -# $Id: inputtags.pm,v 1.144 2004/06/04 22:06:07 albertel Exp $ +# $Id: inputtags.pm,v 1.150 2004/09/09 09:52:58 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -330,6 +330,7 @@ sub decideoutput { my $button=0; my $previousmsg; my $bgcolor='orange'; + my $added_computer_text=0; my %possiblecolors = ( 'correct' => '#aaffaa', 'charged_try' => '#ffaaaa', @@ -346,8 +347,9 @@ 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."); + $added_computer_text=1; unless ($ENV{'course.'. $ENV{'request.course.id'}. '.disable_receipt_display'} eq 'yes') { @@ -378,8 +380,9 @@ 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."); + $added_computer_text=1; unless ($ENV{'course.'. $ENV{'request.course.id'}. '.disable_receipt_display'} eq 'yes') { @@ -423,7 +426,11 @@ sub decideoutput { $bgcolor=$possiblecolors{'not_charged_try'}; $button=1; } elsif ($award eq 'SIG_FAIL') { - $message = &mt("Significant figures are incorrect, you provided [_1] significant figures while [_2] to [_3] were expected. Submission not graded.",(split(/:/,$awardmsg))); + my ($used,$min,$max)=split(':',$awardmsg); + my $word; + if ($used < $min) { $word=&mt('more'); } + if ($used > $max) { $word=&mt('fewer'); } + $message = &mt("Submission not graded. Use [_2] digits.",$used,$word); $bgcolor=$possiblecolors{'not_charged_try'}; $button=1; } elsif ($award eq 'UNIT_INVALID_INSTRUCTOR') { @@ -483,8 +490,10 @@ sub decideoutput { $bgcolor=$possiblecolors{'correct'}; $button=1; } - if ($Apache::inputtags::status[-1] eq 'SHOW_ANSWER') { - $message.=" ".&mt("Computer's answer now shown."); + if ($Apache::inputtags::status[-1] eq 'SHOW_ANSWER' && + !$added_computer_text && $target ne 'tex') { + $message.=" ".&mt("Computer's answer now shown above."); + $added_computer_text=1; } return ($button,$bgcolor,$message,$previousmsg); } @@ -687,7 +696,6 @@ sub gradestatus { &Apache::lonxml::debug('Getting message'); ($showbutton,$bgcolor,$message,$previousmsg) = &decideoutput($award,$awardmsg,$solved,$previous,$target); - &Apache::lonnet::logthis(" mesage is $message status is $status"); if ($target eq 'tex') { $message='\vskip 2 mm '.$message.' '; } else { @@ -709,7 +717,7 @@ sub gradestatus { if ( $Apache::lonhomework::type eq 'survey') { $tries_text=&mt('Submissions'); } if ( $showbutton ) { if ($target eq 'tex') { - if ($ENV{'request.state'} ne "construct" && $Apache::lonhomework::type ne 'exam') { + if ($ENV{'request.state'} ne "construct" && $Apache::lonhomework::type ne 'exam' && $ENV{'form.suppress_tries'} ne 'yes') { $trystr = ' {\vskip 1 mm \small \textit{'.$tries_text.'} '.$tries.'/'.$maxtries.'} \vskip 2 mm '; } else { $trystr = '\vskip 0 mm ';