Diff for /loncom/homework/imageresponse.pm between versions 1.101 and 1.104

version 1.101, 2011/06/07 17:27:37 version 1.104, 2012/10/12 12:45:46
Line 179  sub end_imageresponse { Line 179  sub end_imageresponse {
           
     if ($target eq 'grade' || $target eq 'web' || $target eq 'answer' ||       if ($target eq 'grade' || $target eq 'web' || $target eq 'answer' || 
  $target eq 'tex' || $target eq 'analyze') {   $target eq 'tex' || $target eq 'analyze') {
  &Apache::lonxml::increment_counter(&Apache::response::repetition(),           my $repetition = &Apache::response::repetition();
    &Apache::lonxml::increment_counter($repetition, 
    "$part_id.$response_id");     "$part_id.$response_id");
  if ($target eq 'analyze') {   if ($target eq 'analyze') {
     &Apache::lonhomework::set_bubble_lines();      &Apache::lonhomework::set_bubble_lines();
Line 211  sub getfoilcounts { Line 212  sub getfoilcounts {
   
 sub whichfoils {  sub whichfoils {
     my ($max)=@_;      my ($max)=@_;
     return if (!defined(@{ $Apache::response::foilgroup{'names'} }));      my @names;
     my @names = @{ $Apache::response::foilgroup{'names'} };      if (ref($Apache::response::foilgroup{'names'}) eq 'ARRAY') {
           @names = @{ $Apache::response::foilgroup{'names'} };
       }
       return if (!@names);
     my @whichopt;      my @whichopt;
     while ((($#whichopt+1) < $max) && ($#names > -1)) {      while ((($#whichopt+1) < $max) && ($#names > -1)) {
  &Apache::lonxml::debug("Have $#whichopt max is $max");   &Apache::lonxml::debug("Have $#whichopt max is $max");
Line 472  sub gradefoils { Line 476  sub gradefoils {
  my ($x,$y) = split(':',$env{"form.HWVAL_$id:$temp"});   my ($x,$y) = split(':',$env{"form.HWVAL_$id:$temp"});
  $response{$name} = $env{"form.HWVAL_$id:$temp"};   $response{$name} = $env{"form.HWVAL_$id:$temp"};
  &Apache::lonxml::debug("Got a x of $x and a y of $y for $name");   &Apache::lonxml::debug("Got a x of $x and a y of $y for $name");
  if (defined($x) && defined($y) &&          my @areas; 
     defined(@{ $Apache::response::foilgroup{"$name.area"} })) {          if (ref($Apache::response::foilgroup{"$name.area"}) eq 'ARRAY') {
     my @areas = @{ $Apache::response::foilgroup{"$name.area"} };              @areas = @{ $Apache::response::foilgroup{"$name.area"} };
           }
    if (defined($x) && defined($y) && @areas) {
     my $grade="INCORRECT";      my $grade="INCORRECT";
     foreach my $area (@areas) {      foreach my $area (@areas) {
  &Apache::lonxml::debug("Area is $area for $name");   &Apache::lonxml::debug("Area is $area for $name");
Line 631  sub start_foil { Line 637  sub start_foil {
     &Apache::lonxml::warning(&mt('Foils without names exist. This can cause problems to malfunction.'));      &Apache::lonxml::warning(&mt('Foils without names exist. This can cause problems to malfunction.'));
     $name=$Apache::lonxml::curdepth;      $name=$Apache::lonxml::curdepth;
  }   }
         if ($name eq "0") {  
             &Apache::lonxml::error(&mt('Foil name [_1] is not supported. Please choose another name.','<b><tt>'.$name.'</tt></b>'));  
         }  
  if (defined($Apache::response::foilnames{$name})) {   if (defined($Apache::response::foilnames{$name})) {
     &Apache::lonxml::error(&mt("Foil name [_1] appears more than once. Foil names need to be unique."      &Apache::lonxml::error(&mt("Foil name [_1] appears more than once. Foil names need to be unique."
                                       ,'<b><tt>'.$name.'</tt></b>'));                                        ,'<b><tt>'.$name.'</tt></b>'));

Removed from v.1.101  
changed lines
  Added in v.1.104


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