--- loncom/homework/inputtags.pm 2011/10/08 20:44:20 1.271.2.8 +++ loncom/homework/inputtags.pm 2011/03/05 20:32:02 1.280 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # input definitons # -# $Id: inputtags.pm,v 1.271.2.8 2011/10/08 20:44:20 raeburn Exp $ +# $Id: inputtags.pm,v 1.280 2011/03/05 20:32:02 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -60,7 +60,7 @@ use LONCAPA; BEGIN { - &Apache::lonxml::register('Apache::inputtags',('hiddensubmission','hiddenline','textfield','textline')); + &Apache::lonxml::register('Apache::inputtags',('hiddenline','textfield','textline')); } =pod @@ -354,7 +354,6 @@ sub start_textline { unless ($newvariation) { $oldresponse = $Apache::lonhomework::history{"resource.$partid.$id.submission"}; &Apache::lonxml::debug("oldresponse $oldresponse is ".ref($oldresponse)); - if (ref($oldresponse) eq 'ARRAY') { $oldresponse = $oldresponse->[$#Apache::inputtags::inputlist]; } @@ -479,48 +478,6 @@ sub end_hiddenline { return ""; } -sub start_hiddensubmission { - my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - my $result = ""; - my $input_id = &start_input($parstack,$safeeval); - if ($target eq 'web') { - $Apache::lonxml::evaluate--; - if ($Apache::inputtags::status[-1] eq 'CAN_ANSWER') { - my $partid=$Apache::inputtags::part; - my $id=$Apache::inputtags::response[-1]; - if ($Apache::lonhomework::type ne 'exam') { - my $value = &Apache::lonxml::get_param('value',$parstack,$safeeval); - $value = &HTML::Entities::encode($value,'<>&"'); - $result= ''; - } - } - } elsif ($target eq 'edit') { - $result=&Apache::edit::tag_start($target,$token); - $result.=&Apache::edit::text_arg('Value:','value',$token,'15'); - $result.=&Apache::edit::end_row(); - $result.=&Apache::edit::end_table(); - } elsif ($target eq 'modified') { - my $constructtag=&Apache::edit::get_new_args($token,$parstack, - $safeeval,'value'); - if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } - } - - if ( ($target eq 'web' || $target eq 'tex') - && $Apache::lonhomework::type eq 'exam' - && &needs_exam_box($tagstack)) { - $result.=&exam_box($target); - } - return $result; -} - -sub end_hiddensubmission { - my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; - if ($target eq 'web') { $Apache::lonxml::evaluate++; } - elsif ($target eq 'edit') { return ('','no'); } - &end_input(); - return ""; -} - =pod =item file_selector() @@ -728,7 +685,7 @@ sub valid_award { 'UNIT_FAIL', 'NO_UNIT', 'UNIT_NOTNEEDED', 'WANTED_NUMERIC', 'BAD_FORMULA', 'NOT_FUNCTION', 'WRONG_FORMAT', - 'INTERNAL_ERROR', 'SIG_FAIL', 'INCORRECT', + 'INTERNAL_ERROR', 'SIG_FAIL', 'INCORRECT', 'MISORDERED_RANK', 'INVALID_FILETYPE', 'EXCESS_FILESIZE', 'FILENAME_INUSE', 'DRAFT', 'SUBMITTED', 'SUBMITTED_CREDIT', @@ -746,7 +703,7 @@ sub valid_award { 'UNIT_INVALID_INSTRUCTOR', 'UNIT_INVALID_STUDENT', 'UNIT_IRRECONCIBLE', 'UNIT_FAIL', 'NO_UNIT', 'UNIT_NOTNEEDED', 'WANTED_NUMERIC', 'BAD_FORMULA', 'NOT_FUNCTION', - 'WRONG_FORMAT', 'INTERNAL_ERROR', + 'WRONG_FORMAT', 'INTERNAL_ERROR', 'COMMA_FAIL', 'SIG_FAIL', 'INCORRECT', 'MISORDERED_RANK', 'INVALID_FILETYPE', 'EXCESS_FILESIZE', 'FILENAME_INUSE', 'DRAFT', 'SUBMITTED', @@ -844,7 +801,7 @@ sub finalizeawards { } sub decideoutput { - my ($award,$awarded,$awardmsg,$solved,$previous,$target,$nocorrect)=@_; + my ($award,$awarded,$awardmsg,$solved,$previous,$target)=@_; my $message=''; my $button=0; @@ -862,14 +819,8 @@ sub decideoutput { my $part = $Apache::inputtags::part; my $tohandgrade = &Apache::lonnet::EXT("resource.$part.handgrade"); my $handgrade = ('yes' eq lc($tohandgrade)); - -# -# Should "Computer's Answer" be displayed? -# Should not be displayed if still answerable, -# if the problem is handgraded, -# or if the problem does not give a correct answer -# - my $computer = ($handgrade || $nocorrect)? '' + + my $computer = ($handgrade)? '' : " ".&mt("Computer's answer now shown above."); &Apache::lonxml::debug("handgrade has :$handgrade:"); @@ -885,8 +836,8 @@ sub decideoutput { $message=&mt('Incorrect.'); $css_class=$possible_class{'charged_try'}; } - if ($handgrade || - ($env{'request.filename'}=~ m{/res/lib/templates/(examupload|DropBox)\.problem$}) { + if ($env{'request.filename'} =~ + m|/res/lib/templates/examupload.problem$|) { $message = &mt("A score has been assigned."); $added_computer_text=1; } else { @@ -1047,7 +998,7 @@ sub decideoutput { $message = &mt("Wrong format").'.'; $css_class=$possible_class{'not_charged_try'}; $button=1; - } elsif ($award eq 'INTERNAL_ERROR') { + } elsif ($award eq 'INTERNAL_ERROR') { $message = &mt("An internal error occurred while processing your answer. Please try again later."); $css_class=$possible_class{'not_charged_try'}; $button=1; @@ -1324,7 +1275,7 @@ sub setgradedata { &Apache::response::add_to_gradingqueue(); } if (($Apache::lonhomework::type eq 'anonsurvey') || - ($Apache::lonhomework::type eq 'anonsurveycred') || + ($Apache::lonhomework::type eq 'anonsurveycred') || ($Apache::lonhomework::type eq 'randomizetry')) { $Apache::lonhomework::results{"resource.$id.type"} = $Apache::lonhomework::type; } @@ -1410,8 +1361,8 @@ sub grade { } sub get_grade_messages { - my ($id,$prefix,$target,$status,$nocorrect) = @_; -# nocorrect suppresses "Computer's answer now shown above" + my ($id,$prefix,$target,$status) = @_; + my ($message,$latemessage,$trystr,$previousmsg); my $showbutton = 1; @@ -1425,7 +1376,7 @@ sub get_grade_messages { &Apache::lonxml::debug('Getting message'); ($showbutton,my $css_class,$message,$previousmsg) = &decideoutput($award,$awarded,$awardmsg,$solved,$previous, - $target,(($status eq 'CAN_ANSWER') || $nocorrect)); + $target); if ($target eq 'tex') { $message='\vskip 2 mm '.$message.' '; } else { @@ -1443,30 +1394,28 @@ sub get_grade_messages { if ( $tries eq '' ) { $tries = '0'; } if ( $maxtries eq '' ) { $maxtries = '2'; } if ( $maxtries eq 'con_lost' ) { $maxtries = '0'; } - my $tries_text= &get_tries_text(); + my $tries_text= &get_tries_text();; if ($showbutton) { if ($target eq 'tex') { if ($env{'request.state'} ne "construct" && $Apache::lonhomework::type ne 'exam' && $env{'form.suppress_tries'} ne 'yes') { - $trystr ='{\vskip 1 mm \small ' - .&mt('[_1]'.$tries_text.'[_2] [_3]' - ,'\textit{','}',$tries.'/'.$maxtries ) - .'} \vskip 2 mm'; + $trystr = ' {\vskip 1 mm \small \textit{'.$tries_text.'} '. + $tries.'/'.$maxtries.'} \vskip 2 mm '; } else { $trystr = '\vskip 0 mm '; } } else { - my $trial = $tries; + $trystr = ''.&mt($tries_text)." $tries"; if ($Apache::lonhomework::parsing_a_task) { } elsif($env{'request.state'} ne 'construct') { - $trial.="/$maxtries"; + $trystr.="/".&Apache::lonhtmlcommon::direct_parm_link($maxtries,$env{'request.symb'},'maxtries',$id,$target); } else { if (defined($Apache::inputtags::params{'maxtries'})) { - $trial.="/".$Apache::inputtags::params{'maxtries'}; + $trystr.="/".$Apache::inputtags::params{'maxtries'}; } } - $trystr.=''.&mt("$tries_text [_1]",$trial).''; + $trystr.=""; } } @@ -1556,7 +1505,6 @@ sub previous_tries { $count++; $count_lookup{$i} = $count; my $curr_rndseed = $Apache::lonhomework::history{"$prefix.rndseed"}; - my ($previousmsg,$latemessage,$message,$trystr); ($previousmsg,$latemessage,$message,$trystr) = @@ -1575,6 +1523,7 @@ sub previous_tries { my $txt_correct = &mt('Correct'); my $awarded = $Apache::lonhomework::history{"$prefix.awarded"}; + my $txt_correct = &mt('Correct'); if ($awarded < 1 && $awarded > 0) { $txt_correct=&mt('Partially Correct'); } elsif ($awarded < 1) { @@ -1588,11 +1537,11 @@ sub previous_tries { {$1 $txt_correct. $3}s; } my $trystr = "(".&mt('Try [_1]',$Apache::lonhomework::history{"$prefix.tries"}).")"; - if (($curr_rndseed || $lastrndseed) && ($i > 1)) { + if ($curr_rndseed || $lastrndseed) { if ($curr_rndseed ne $lastrndseed) { $trystr .= '
'.&mt('New problem variation this try.').''; } - } + } $message =~ s{()}{ $trystr $1}; } my ($class) = ($message =~ m{