--- loncom/homework/grades.pm 2004/04/24 08:35:10 1.189 +++ loncom/homework/grades.pm 2004/04/24 09:01:52 1.190 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.189 2004/04/24 08:35:10 albertel Exp $ +# $Id: grades.pm,v 1.190 2004/04/24 09:01:52 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -3521,8 +3521,8 @@ sub scantron_selectphase { <tr bgcolor="#ffffe6"> <td> Options: </td> <td> - <input type="checkbox" name="scantron_options" value="redo_skipped"/> Redo skipped records <br /> - <input type="checkbox" name="scantron_options" value="ignore_corrections"/> Ignore Original Corrections + <input type="checkbox" name="scantron_options_redo" value="redo_skipped"/> Redo skipped records <br /> + <input type="checkbox" name="scantron_options_ignore" value="ignore_corrections"/> Ignore Original Corrections </td> </tr> <tr bgcolor="#ffffe6"> @@ -3836,7 +3836,15 @@ sub scantron_process_corrections { 'username'=>$ENV{'form.scantron_username'}, 'domain'=>$ENV{'form.scantron_domain'}}); } elsif ($ENV{'form.scantron_corrections'} =~ /^(duplicate|incorrect)CODE$/) { - my $newCODE=$ENV{'form.scantron_CODE'}; + my $resolution=$ENV{'form.scantron_CODE_resolution'}; + my $newCODE; + if ($resolution eq 'use_unfound') { + &FIXME_blow_up(); + } elsif ($resolution eq 'use_found') { + $newCODE=$ENV{'form.scantron_CODE_selectedvalue'}; + } elsif ($resolution eq 'use_typed') { + $newCODE=$ENV{'form.scantron_CODE_newvalue'}; + } ($line,$err,$errmsg)= &scantron_fixup_scanline(\%scantron_config,$scan_data,$line,$which, 'CODE',{'CODE'=>$newCODE}); @@ -3876,6 +3884,10 @@ sub scantron_validate_file { <input type="hidden" name="scantron_format" value="$ENV{'form.scantron_format'}" /> <input type="hidden" name="scantron_selectfile" value="$ENV{'form.scantron_selectfile'}" /> <input type="hidden" name="scantron_maxbubble" value="$ENV{'form.scantron_maxbubble'}" /> + <input type="hidden" name="scantron_CODElist" value="$ENV{'form.scantron_CODElist'}" /> + <input type="hidden" name="scantron_CODEunique" value="$ENV{'form.scantron_CODEunique'}" /> + <input type="hidden" name="scantron_options_redo" value="$ENV{'form.scantron_optiond_redo'}" /> + <input type="hidden" name="scantron_options_ignore" value="$ENV{'form.scantron_optiond_ignore'}" /> $default_form_data SCANTRONFORM $r->print($result); @@ -4116,12 +4128,12 @@ sub scantron_get_correction { $$scan_record{'scantron.FirstName'}."</p>"); $r->print("<p>How should I handle this? <br /> \n"); $r->print("\n<br /> "); - $r->print("<input type='radio' name='scan_CODE_resolution' value='use_unfound' checked='on' /> Use the CODE <b><tt>".$$scan_record{'scantron.CODE'}."</tt></b> that is was on the paper, ignoring the error."); + $r->print("<input type='radio' name='scantron_CODE_resolution' value='use_unfound' checked='on' /> Use the CODE <b><tt>".$$scan_record{'scantron.CODE'}."</tt></b> that is was on the paper, ignoring the error."); $r->print("\n<br />"); $r->print(<<ENDSCRIPT); <script type="text/javascript"> function change_radio(field) { - var slct=document.scantronupload.scan_CODE_resolution; + var slct=document.scantronupload.scantron_CODE_resolution; var i; for (i=0;i<slct.length;i++) { if (slct[i].value==field) { slct[i].checked=true; } @@ -4135,9 +4147,9 @@ ENDSCRIPT "&scantron_CODElist=".&Apache::lonnet::escape($ENV{'form.scantron_CODElist'}). "&curCODE=".&Apache::lonnet::escape($$scan_record{'scantron.CODE'}). "&scantron_selectfile=".&Apache::lonnet::escape($ENV{'form.scantron_selectfile'}); - $r->print("<input type='radio' name='scan_CODE_resolution' value='use_found' /> <a target='_blank' href='$href'>Select</a> a CODE from the list of all CODEs and use it. Selected CODE is <input readonly='true' type='text' size='8' name='scan_CODE_selectedvalue' onfocus=\"javascript:change_radio('use_found')\" onchange=\"javascript:change_radio('use_found')\" />"); + $r->print("<input type='radio' name='scantron_CODE_resolution' value='use_found' /> <a target='_blank' href='$href'>Select</a> a CODE from the list of all CODEs and use it. Selected CODE is <input readonly='true' type='text' size='8' name='scantron_CODE_selectedvalue' onfocus=\"javascript:change_radio('use_found')\" onchange=\"javascript:change_radio('use_found')\" />"); $r->print("\n<br />"); - $r->print("<input type='radio' name='scan_CODE_resolution' value='use_typed' /> Use <input type='text' size='8' name='scan_CODE_newvalue' onfocus=\"javascript:change_radio('use_typed')\" onkeypress=\"javascript:change_radio('use_typed')\" /> as the CODE."); + $r->print("<input type='radio' name='scantron_CODE_resolution' value='use_typed' /> Use <input type='text' size='8' name='scantron_CODE_newvalue' onfocus=\"javascript:change_radio('use_typed')\" onkeypress=\"javascript:change_radio('use_typed')\" /> as the CODE."); $r->print("\n<br /><br />"); } elsif ($error eq 'doublebubble') { #FIXME Need to print out who this is along with the paper info @@ -4198,7 +4210,6 @@ sub scantron_validate_CODE { &FIXME_blow_up() } } else { - &Apache::lonnet::logthis(" CODE stuf $scantron_config{'CODElocation'}:$scantron_config{'CODEstart'}:$scantron_config{'CODElength'}"); return (0,$currentphase+1); }