version 1.691, 2013/06/16 16:59:29
|
version 1.693, 2013/06/28 22:40:04
|
Line 7431 used to fill in the scantron_questions f
|
Line 7431 used to fill in the scantron_questions f
|
startline - Reference to hash where key is question number (0 is first) |
startline - Reference to hash where key is question number (0 is first) |
and key is number of first bubble line for current student |
and key is number of first bubble line for current student |
or code-based randompick and/or randomorder. |
or code-based randompick and/or randomorder. |
|
|
=cut |
=cut |
|
|
|
|
Line 8065 sub scantron_validate_missingbubbles {
|
Line 8066 sub scantron_validate_missingbubbles {
|
my $max_bubble=&scantron_get_maxbubble(\$nav_error,\%scantron_config); |
my $max_bubble=&scantron_get_maxbubble(\$nav_error,\%scantron_config); |
if ($nav_error) { |
if ($nav_error) { |
$r->print(&navmap_errormsg()); |
$r->print(&navmap_errormsg()); |
return ''; |
return(1,$currentphase); |
} |
} |
|
|
if (!$max_bubble) { $max_bubble=2**31; } |
if (!$max_bubble) { $max_bubble=2**31; } |
Line 8188 sub scantron_process_students {
|
Line 8189 sub scantron_process_students {
|
} |
} |
my $map=$navmap->getResourceByUrl($sequence); |
my $map=$navmap->getResourceByUrl($sequence); |
my ($randomorder,$randompick,@master_seq,%symb_to_resource,%grader_partids_by_symb, |
my ($randomorder,$randompick,@master_seq,%symb_to_resource,%grader_partids_by_symb, |
%grader_randomlists_by_symb,%orderedforcode); |
%grader_randomlists_by_symb); |
if (ref($map)) { |
if (ref($map)) { |
$randomorder = $map->randomorder(); |
$randomorder = $map->randomorder(); |
$randompick = $map->randompick(); |
$randompick = $map->randompick(); |
Line 8340 SCANTRONFORM
|
Line 8341 SCANTRONFORM
|
return ''; # Why return ''? Beats me. |
return ''; # Why return ''? Beats me. |
} |
} |
|
|
|
if (($scancode) && ($randomorder || $randompick)) { |
|
my $parmresult = |
|
&Apache::lonparmset::storeparm_by_symb($symb, |
|
'0_examcode',2,$scancode, |
|
'string_examcode',$uname, |
|
$udom); |
|
} |
$completedstudents{$uname}={'line'=>$line}; |
$completedstudents{$uname}={'line'=>$line}; |
if ($env{'form.verifyrecord'}) { |
if ($env{'form.verifyrecord'}) { |
my $lastpos = $env{'form.scantron_maxbubble'}*$scantron_config{'Qlength'}; |
my $lastpos = $env{'form.scantron_maxbubble'}*$scantron_config{'Qlength'}; |
Line 8871 sub checkscantron_results {
|
Line 8879 sub checkscantron_results {
|
my $scan_record= |
my $scan_record= |
&Apache::grades::scantron_parse_scanline($line,$i,\%scantron_config, |
&Apache::grades::scantron_parse_scanline($line,$i,\%scantron_config, |
$scan_data); |
$scan_data); |
unless ($uname=&Apache::grades::scantron_find_student($scan_record,$scan_data, |
unless ($uname=&scantron_find_student($scan_record,$scan_data, |
\%idmap,$i)) { |
\%idmap,$i)) { |
&Apache::grades::scantron_add_delay(\@delayqueue,$line, |
&Apache::grades::scantron_add_delay(\@delayqueue,$line, |
'Unable to find a student that matches',1); |
'Unable to find a student that matches',1); |
next; |
next; |