--- loncom/homework/grades.pm 2007/10/09 09:16:04 1.447 +++ loncom/homework/grades.pm 2007/10/09 10:31:21 1.448 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.447 2007/10/09 09:16:04 foxr Exp $ +# $Id: grades.pm,v 1.448 2007/10/09 10:31:21 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -56,8 +56,9 @@ my %first_bubble_line = (); # First bubb sub save_bubble_lines { - + &Apache::lonnet::logthis("Saving bubble_lines..."); foreach my $line (keys(%bubble_lines_per_response)) { + &Apache::lonnet::logthis("Saving form.scantron.bubblelines.$line value: $bubble_lines_per_response{$line}"); $env{"form.scantron.bubblelines.$line"} = $bubble_lines_per_response{$line}; $env{"form.scantron.first_bubble_line.$line"} = $first_bubble_line{$line}; @@ -70,6 +71,7 @@ sub restore_bubble_lines { %bubble_lines_per_response = (); while ($env{"form.scantron.bubblelines.$line"}) { my $value = $env{"form.scantron.bubblelines.$line"}; + &Apache::lonnet::logthis("Restoring form.scantron.bubblelines.$line value: $value"); $bubble_lines_per_response{$line} = $value; $first_bubble_line{$line} = $env{"form.scantron.first_bubble_line.$line"}; @@ -85,7 +87,7 @@ sub get_response_bubbles { my ($parsed_line, $response) = @_; my $bubble_line = $first_bubble_line{$response}; - my $bubble_lines= $bubble_linse_per_response{$response}; + my $bubble_lines= $bubble_lines_per_response{$response}; my $selected = ""; for (my $bline = 0; $bline < $bubble_lines; $bline++) { @@ -5714,10 +5716,11 @@ SCANTRONFORM my $line = 0; while (defined($env{"form.scantron.bubblelines.$line"})) { + &Apache::lonnet::logthis("Saving chunk for $line"); my $chunk = ''."\n"; - $chunk += - ''."\n"; + $chunk .= + ''."\n"; $result .= $chunk; $line++; } @@ -5779,6 +5782,8 @@ sub scantron_validate_file { } my $currentphase=$env{'form.validatepass'}; + &Apache::lonnet::logthis("Phase: $currentphase"); + my $stop=0; while (!$stop && $currentphase < scalar(@validate_phases)) { $r->print("

Validating ".$validate_phases[$currentphase]."

"); @@ -6401,7 +6406,7 @@ ENDSCRIPT $r->print(''); foreach my $question (@{$arg}) { - my $selected = &get_response_bubbles($scan_record, $quesion); + my $selected = &get_response_bubbles($scan_record, $question); &scantron_bubble_selector($r,$scan_config,$question); } } else { @@ -6435,8 +6440,9 @@ sub scantron_bubble_selector { if ($scmode eq 'number' || $scmode eq 'letter') { $max=10; } - - my $lines = $bubble_lines_per_response{$quest}; + my $response = $quest-1; + my $lines = $bubble_lines_per_response{$response}; + &Apache::lonnet::logthis("Question $quest, lines: $lines"); my $total_lines = $lines*2; my @alphabet=('A'..'Z'); @@ -6700,12 +6706,14 @@ sub scantron_validate_doublebubble { =cut sub scantron_get_maxbubble { - + &Apache::lonnet::logthis("get_max_bubble"); if (defined($env{'form.scantron_maxbubble'}) && $env{'form.scantron_maxbubble'}) { + &Apache::lonnet::logthis("cached"); &restore_bubble_lines(); return $env{'form.scantron_maxbubble'}; } + &Apache::lonnet::logthis("computing"); my (undef, undef, $sequence) = &Apache::lonnet::decode_symb($env{'form.selectpage'});