--- loncom/homework/inputtags.pm 2013/08/29 13:02:11 1.322 +++ loncom/homework/inputtags.pm 2014/11/07 22:00:17 1.327 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # input definitons # -# $Id: inputtags.pm,v 1.322 2013/08/29 13:02:11 raeburn Exp $ +# $Id: inputtags.pm,v 1.327 2014/11/07 22:00:17 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -235,11 +235,16 @@ sub start_textfield { my $addchars=&Apache::lonxml::get_param('addchars',$parstack,$safeeval); $result=''; my $tagident = 'HWVAL_' . $resid; + my $itemid = 'HWVAL_'.$partid.'_'.$resid; if ($addchars) { $result.=&addchars($tagident, $addchars); } - my $textareaclass = 'class="LC_richDetectHtml spellchecked"'; - $result.= '"; - $result .= &spellcheck_onblur($tagident, $spellcheck); + $result .= &spellcheck_onblur($itemid, $spellcheck); return $result; } } elsif ($target eq 'edit') { @@ -452,18 +459,19 @@ sub start_textline { $readonly=''; } my $name = 'HWVAL_'.$id; + my $itemid = 'HWVAL_'.$partid.'_'.$id; if ($Apache::inputtags::status[-1] eq 'CANNOT_ANSWER') { $name = "none"; } $result.= ''; + . ' class="LC_textline spellchecked" size="'.$size.'"'.$maxlength + . ' autocomplete="off" />'; - $result .= &spellcheck_onblur($name, $spellcheck); + $result .= &spellcheck_onblur($itemid, $spellcheck); } if ($Apache::lonhomework::type eq 'exam' && &needs_exam_box($tagstack)) { @@ -992,7 +1000,7 @@ sub finalizeawards { } sub decideoutput { - my ($award,$awarded,$awardmsg,$solved,$previous,$target,$nocorrect)=@_; + my ($award,$awarded,$awardmsg,$solved,$previous,$target,$nocorrect,$tdclass)=@_; my $message=''; my $button=0; @@ -1568,7 +1576,7 @@ sub grade { } sub get_grade_messages { - my ($id,$prefix,$target,$status,$nocorrect) = @_; + my ($id,$prefix,$target,$status,$nocorrect,$tdclass) = @_; # nocorrect suppresses "Computer's answer now shown above" my ($message,$latemessage,$trystr,$previousmsg); my $showbutton = 1; @@ -1583,13 +1591,13 @@ 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,(($status eq 'CAN_ANSWER') || $nocorrect),$tdclass); if ($target eq 'tex') { $message='\vskip 2 mm '.$message.' '; } else { - $message="$message"; + $message="$message"; if ($previousmsg) { - $previousmsg="$previousmsg"; + $previousmsg="$previousmsg"; } } } @@ -1624,7 +1632,7 @@ sub get_grade_messages { $trial.="/".$Apache::inputtags::params{'maxtries'}; } } - $trystr = ''.&mt($tries_text.' [_1]',$trial).''; + $trystr = ''.&mt($tries_text.' [_1]',$trial).''; } } @@ -1632,7 +1640,7 @@ sub get_grade_messages { #last submissions was after due date $latemessage=&mt(' The last submission was after the Due Date ');; if ($target eq 'web') { - $latemessage=''.$latemessage.''; + $latemessage=''.$latemessage.''; } } return ($previousmsg,$latemessage,$message,$trystr,$showbutton); @@ -1646,6 +1654,7 @@ sub gradestatus { my $trystr=''; my $button=''; my $previousmsg=''; + my $tdclass=''; my $status = $Apache::inputtags::status['-1']; &Apache::lonxml::debug("gradestatus has :$status:"); @@ -1662,21 +1671,29 @@ sub gradestatus { $showbutton = 0; } + unless (($status eq 'SHOW_ANSWER') || ($status eq 'CANNOT_ANSWER')) { + if ($target ne 'tex') { + $tdclass = 'LC_status_submit_'.$id; + } + } + ($previousmsg,$latemessage,$message,$trystr) = &get_grade_messages($id,"resource.$id",$target,$status, - $showbutton); + $showbutton,$tdclass); if ($status eq 'CANNOT_ANSWER') { $showbutton = 0; } if ( $status eq 'SHOW_ANSWER') { undef($previousmsg); } - if ( $showbutton ) { + if ( $showbutton ) { if ($target ne 'tex') { $button = ''; + type="submit" name="submit_'.$id.'" id="submit_'.$id.'" class="LC_hwk_submit" + value="'.&mt('Submit Answer').'" /> '. + ''; } } @@ -1691,7 +1708,7 @@ sub gradestatus { $output = ''.$output; if (!$no_previous) { - $output.=''; + $output.=''; } $output.= '
'.$button.''.&previous_tries($id,$target).''.&previous_tries($id,$target).'
'; return $output;