Diff for /loncom/homework/imageresponse.pm between versions 1.95 and 1.99

version 1.95, 2008/11/12 20:01:21 version 1.99, 2010/02/28 23:37:44
Line 41  Coordinates the response to clicking an Line 41  Coordinates the response to clicking an
 This is part of the LearningOnline Network with CAPA project  This is part of the LearningOnline Network with CAPA project
 described at http://www.lon-capa.org.  described at http://www.lon-capa.org.
   
 =head1 HANDLER SUBROUTINE  =head1 SUBROUTINES
   
   
   
 =head1 OTHER SUBROUTINES  
   
 =over  =over
   
 =item *  =item start_imageresponse()
   
 start_imageresponse()  
   
 =item *  
   
 end_imageresponse()  
   
 =item *  
   
 start_foilgroup()  
   
 =item *  
   
 getfoilcounts()  
   
 =item *  
   
 whichfoils()  
   
 =item *  
   
 prep_image()  
   
 =item *  
   
 draw_image()  
   
 =item *  
   
 displayfoils()  
   
 =item *  
   
 format_prior_response()  
   
 =item *  =item end_imageresponse()
   
 display_answers()  =item start_foilgroup()
   
 =item *  =item getfoilcounts()
   
 clean_up_image()  =item whichfoils()
   
 =item *  =item prep_image()
   
 gradefoils()  =item draw_image()
   
 =item *  =item displayfoils()
   
 stringify_submission()  =item format_prior_response()
   
 =item *  =item display_answers()
   
 get_submission()  =item clean_up_image()
   
 =item *  =item gradefoils()
   
 end_foilgroup()  =item stringify_submission()
   
 =item *  =item get_submission()
   
 start_conceptgroup()  =item end_foilgroup()
   
 =item *  =item start_conceptgroup()
   
 end_conceptgroup()  =item end_conceptgroup()
   
 =item *  =item insert_foil()
   
 insert_foil()  =item start_foil()
   
 =item *  =item end_foil()
   
 start_foil()  =item start_text()
   
 =item *  =item end_text()
   
 end_foil()  =item start_image()
   
 =item *  =item end_image()
   
 start_text()  =item start_rectangle()
   
 =item *  =item grade_rectangle()
   
 end_text()  =item end_rectangle()
   
 =item *  =item start_polygon()
   
 start_image()  =item grade_polygon()
   
   =item end_polygon()
 =item *  
   
 end_image()  
   
 =item *  
   
 start_rectangle()  
   
 =item *  
   
 grade_rectangle()  
   
 =item *  
   
 end_rectangle()  
   
 =item *  
   
 start_polygon()  
   
 =item *  
   
 grade_polygon()  
   
 =item *  
   
 end_polygon()  
   
 =back  =back
   
Line 252  sub end_imageresponse { Line 187  sub end_imageresponse {
   
     }      }
     &Apache::response::end_response();      &Apache::response::end_response();
   
     return $result;      return $result;
 }  }
   
Line 385  sub displayfoils { Line 319  sub displayfoils {
  my $image=$Apache::response::foilgroup{"$name.image"};   my $image=$Apache::response::foilgroup{"$name.image"};
  &Apache::lonxml::debug("image is $image");   &Apache::lonxml::debug("image is $image");
  if ( ($target eq 'web' || $target eq 'answer')    if ( ($target eq 'web' || $target eq 'answer') 
      && $image !~ /^http:/ ) {       && $image !~ /^https?\:/ ) {
     $image=&clean_up_image($image);      $image=&clean_up_image($image);
  }   }
  push(@images,$image);   push(@images,$image);
Line 451  sub display_answers { Line 385  sub display_answers {
  my $image=$Apache::response::foilgroup{"$name.image"};   my $image=$Apache::response::foilgroup{"$name.image"};
  &Apache::lonxml::debug("image is $image");   &Apache::lonxml::debug("image is $image");
  if ( ($target eq 'web' || $target eq 'answer')   if ( ($target eq 'web' || $target eq 'answer')
      && $image !~ /^http:/ ) {       && $image !~ /^https?\:/ ) {
     $image = &clean_up_image($image);      $image = &clean_up_image($image);
  }    } 
  my $token=&prep_image($image,'answeronly',$name);   my $token=&prep_image($image,'answeronly',$name);
Line 466  sub clean_up_image { Line 400  sub clean_up_image {
     my ($image)=@_;      my ($image)=@_;
     if ($image =~ /\s*<img\s*/) {      if ($image =~ /\s*<img\s*/) {
  ($image) = ($image =~ /src\s*=\s*[\"\']([^\"\']+)[\"\']/i);   ($image) = ($image =~ /src\s*=\s*[\"\']([^\"\']+)[\"\']/i);
  if ($image !~ /^http:/) {   if ($image !~ /^https?\:/) {
     $image=&Apache::lonnet::hreflocation('',$image);      $image=&Apache::lonnet::hreflocation('',$image);
  }   }
  if (!$image) {   if (!$image) {
Line 532  sub gradefoils { Line 466  sub gradefoils {
     my %previous=      my %previous=
  &Apache::response::check_for_previous(&stringify_submission(\%response),   &Apache::response::check_for_previous(&stringify_submission(\%response),
       $part,$id);        $part,$id);
     if ($result       if ($result) { 
  && $Apache::lonhomework::type eq 'survey') { $result='SUBMITTED'; }   if ($Apache::lonhomework::type eq 'survey') { 
               $result='SUBMITTED';
           } elsif ($Apache::lonhomework::type eq 'surveycred') { 
               $result='SUBMITTED_CREDIT'; 
           } elsif ($Apache::lonhomework::type eq 'anonsurvey') { 
               $result='ANONYMOUS'; 
           } elsif ($Apache::lonhomework::type eq 'anonsurveycred') { 
               $result='ANONYMOUS_CREDIT'; 
           }
       }
   
     &Apache::response::handle_previous(\%previous,$result);      &Apache::response::handle_previous(\%previous,$result);
     $Apache::lonhomework::results{"resource.$part.$id.submission"}=      $Apache::lonhomework::results{"resource.$part.$id.submission"}=
  &stringify_submission(\%response);   &stringify_submission(\%response);
Line 781  sub end_image { Line 725  sub end_image {
     my ($commentline, $restofstuff) = split(/\n/, $src);      my ($commentline, $restofstuff) = split(/\n/, $src);
     $graphinclude = $src;      $graphinclude = $src;
     $graphinclude =~ s/^$commentline//;      $graphinclude =~ s/^$commentline//;
  } else {   } elsif (!($src =~ /\\/)) {
     my ($path,$file) = &Apache::londefdef::get_eps_image($src);      my ($path,$file) = &Apache::londefdef::get_eps_image($src);
     my ($height_param,$width_param)=      my ($height_param,$width_param)=
  &Apache::londefdef::image_size($src,0.3,$parstack,$safeeval);   &Apache::londefdef::image_size($src,0.3,$parstack,$safeeval);
     $graphinclude = '\graphicspath{{'.$path.'}}\includegraphics[width='.$width_param.' mm]{'.$file.'}';      $graphinclude = '\graphicspath{{'.$path.'}}\includegraphics[width='.$width_param.' mm]{'.$file.'}';
    } else {
       $graphinclude = $src;   # Already fully formed.
  }   }
  $Apache::response::foilgroup{"$name.image"} ='\vskip 0 mm \noindent '.$graphinclude;   $Apache::response::foilgroup{"$name.image"} ='\vskip 0 mm \noindent '.$graphinclude;
     }       } 

Removed from v.1.95  
changed lines
  Added in v.1.99


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