Diff for /loncom/homework/grades.pm between versions 1.470 and 1.471

version 1.470, 2007/10/29 09:46:28 version 1.471, 2007/10/30 00:27:23
Line 5316  sub scantron_parse_scanline { Line 5316  sub scantron_parse_scanline {
     } elsif (!defined($currentquest)      } elsif (!defined($currentquest)
      || (&occurence_count($currentquest, $$scantron_config{'Qoff'}) == length($currentquest))       || (&occurence_count($currentquest, $$scantron_config{'Qoff'}) == length($currentquest))
      || (&occurence_count($currentquest, "[A-Z]") == 0)) {       || (&occurence_count($currentquest, "[A-Z]") == 0)) {
  &Apache::lonnet::logthis("Missing if, $questnum, $ansnum");  
  for (my $ans = 0; $ans < $answers_needed; $ans++ ) {   for (my $ans = 0; $ans < $answers_needed; $ans++ ) {
     $record{"scantron.$ansnum.answer"}='';      $record{"scantron.$ansnum.answer"}='';
     $ansnum++;      $ansnum++;
   
  }   }
  if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) {   if (!&scan_data($scan_data,"$whichline.no_bubble.$questnum")) {
     &Apache::lonnet::logthis("Parsed missing: $questnum");  
     push(@{$record{"scantron.missingerror"}},$questnum);      push(@{$record{"scantron.missingerror"}},$questnum);
    #  $ansnum += $answers_needed;     #  $ansnum += $answers_needed;
  }   }
  &Apache::lonnet::logthis("Residual scanline:  '$questions'");  
   
     } else {      } else {
  for (my $ans = 0; $ans < $answers_needed; $ans++) {   for (my $ans = 0; $ans < $answers_needed; $ans++) {
     $record{"scantron.$ansnum.answer"} = substr($currentquest, $ans, 1);      $record{"scantron.$ansnum.answer"} = substr($currentquest, $ans, 1);
Line 6487  ENDSCRIPT Line 6483  ENDSCRIPT
  foreach my $question (@{$arg}) {   foreach my $question (@{$arg}) {
     my $selected = &get_response_bubbles($scan_record, $question);      my $selected = &get_response_bubbles($scan_record, $question);
     my @select_array = split(/:/,$selected); # ought to be an array of empties.      my @select_array = split(/:/,$selected); # ought to be an array of empties.
     &Apache::lonnet::logthis("Calling bubble selector (missing)");  
     &scantron_bubble_selector($r,$scan_config,$question, @select_array);      &scantron_bubble_selector($r,$scan_config,$question, @select_array);
  }   }
     } else {      } else {
Line 6529  sub scantron_bubble_selector { Line 6524  sub scantron_bubble_selector {
   
     my $total_lines = $lines*2;      my $total_lines = $lines*2;
     my @alphabet=('A'..'Z');      my @alphabet=('A'..'Z');
     &Apache::lonnet::logthis("Putting in question number $quest");  
     $r->print("<table border='1'><tr><td rowspan='".$total_lines."'>$quest</td>");      $r->print("<table border='1'><tr><td rowspan='".$total_lines."'>$quest</td>");
   
     for (my $l = 0; $l < $lines; $l++) {      for (my $l = 0; $l < $lines; $l++) {
Line 6885  sub scantron_validate_missingbubbles { Line 6879  sub scantron_validate_missingbubbles {
   
  foreach my $missing (@{$$scan_record{'scantron.missingerror'}}) {   foreach my $missing (@{$$scan_record{'scantron.missingerror'}}) {
     if ($missing > $max_bubble) { next; }      if ($missing > $max_bubble) { next; }
     &Apache::lonnet::logthis("Marking $missing for missing bubble check");  
     push(@to_correct,$missing);      push(@to_correct,$missing);
  }   }
  if (@to_correct) {   if (@to_correct) {

Removed from v.1.470  
changed lines
  Added in v.1.471


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>