Diff for /loncom/xml/londefdef.pm between versions 1.452 and 1.455

version 1.452, 2014/06/17 23:22:17 version 1.455, 2014/09/01 19:01:08
Line 1735  sub start_a { Line 1735  sub start_a {
                         } elsif ($env{'request.course.id'}) {                          } elsif ($env{'request.course.id'}) {
                             my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};                              my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'};
                             my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};                              my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
                             if ($linkurl =~ m{^([^/]|/uploaded/$cdom/$cnum/docs/)}) {                              if ($linkurl =~ m{^([^/]|/uploaded/$cdom/$cnum/(docs|supplemental)/)}) {
                                 my $cleanhref = &clean_docs_httpref($linkurl,$url,$cdom,$cnum);                                  my $cleanhref = &clean_docs_httpref($linkurl,$url,$cdom,$cnum);
                                 if ($cleanhref) {                                  if ($cleanhref) {
                                     &Apache::lonxml::extlink($cleanhref);                                      &Apache::lonxml::extlink($cleanhref);
Line 2753  sub start_img { Line 2753  sub start_img {
  my $inside = &Apache::lonxml::get_all_text("/img",$parser,$style);   my $inside = &Apache::lonxml::get_all_text("/img",$parser,$style);
  return '';   return '';
     }      }
     &Apache::lonxml::extlink($src);      unless ($src =~ m{^data\:image/gif;base64,}) {
           &Apache::lonxml::extlink($src);
       }
     my $currentstring = '';      my $currentstring = '';
     my $scaling = .3;      my $scaling = .3;
   
Line 2763  sub start_img { Line 2765  sub start_img {
         my $enc = ('yes' eq           my $enc = ('yes' eq 
                    lc(&Apache::lonxml::get_param('encrypturl',$parstack,                     lc(&Apache::lonxml::get_param('encrypturl',$parstack,
                       $safeeval)));                        $safeeval)));
         $currentstring.=&Apache::lonenc::encrypt_ref($token,{'src'=>$src},          unless ($src =~ m{^data\:image/gif;base64,}) {
                          $enc);              $currentstring.=&Apache::lonenc::encrypt_ref($token,{'src'=>$src},
                               $enc);
           }
   
     # and render unto TeX that which is LaTeX      # and render unto TeX that which is LaTeX
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
Line 2807  sub start_img { Line 2811  sub start_img {
   
  # &Apache::lonxml::debug("LaTeX rendering = $latex_rendering image file: $src");   # &Apache::lonxml::debug("LaTeX rendering = $latex_rendering image file: $src");
   
  #if original bmp/gif/jpg/png file exist do following:   #if original bmp/gif/jpg/png/svg file exist do following:
  my $origsrc=$src;   my $origsrc=$src;
  my ($path,$file) = &get_eps_image($src);   my ($path,$file) = &get_eps_image($src);
  # &Apache::lonnet::logthis("Image source: $src result: $path $file");   # &Apache::lonnet::logthis("Image source: $src result: $path $file");
Line 4321  sub get_eps_image { Line 4325  sub get_eps_image {
  &Apache::lonnet::repcopy($orig_src); # Failure is not completely fatal.   &Apache::lonnet::repcopy($orig_src); # Failure is not completely fatal.
     }      }
     &Apache::lonxml::debug("get_eps_image: Original image: $orig_src");      &Apache::lonxml::debug("get_eps_image: Original image: $orig_src");
     my ($spath, $sname, $sext) = &fileparse($src, qr/\.(bmp|gif|png|jpg|jpeg)/i);      my ($spath, $sname, $sext) = &fileparse($src, qr/\.(bmp|gif|png|jpg|jpeg|svg)/i);
     $src=~s/\.(bmp|gif|png|jpg|jpeg)$/\.eps/i;      $src=~s/\.(bmp|gif|png|jpg|jpeg|svg)$/\.eps/i;
     $src=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1],$src);      $src=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1],$src);
     &Apache::lonxml::debug("Filelocation gives: $src");      &Apache::lonxml::debug("Filelocation gives: $src");
     if (! -e $src) {      if (! -e $src) {
Line 4608  sub clean_docs_httpref { Line 4612  sub clean_docs_httpref {
         $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};          $cnum = $env{'course.'.$env{'request.course.id'}.'.num'};
     }      }
     my $cleanhref;      my $cleanhref;
     if ($docuri =~ m{^(\Q/uploaded/$cdom/$cnum/docs/\E)(.+/)[^/]+$}) {      if ($docuri =~ m{^(\Q/uploaded/$cdom/$cnum/\E(?:docs|supplemental)/)(.+/)[^/]+$}) {
         my $prefix = $1;          my $prefix = $1;
         my $relpath = $2;          my $relpath = $2;
         my ($hrefpath,$fname);          my ($hrefpath,$fname);
Line 4761  described at http://www.lon-capa.org. Line 4765  described at http://www.lon-capa.org.
   
         Output:          Output:
         returns an absolute URL constructed from the href provided, and the calling context.          returns an absolute URL constructed from the href provided, and the calling context.
         (this will be null, if the URL does not begin: /uploaded/$cdom/$cnum/docs/).          (this will be null, if the URL does not begin: /uploaded/$cdom/$cnum/docs/ or
           /uploaded/$cdom/$cnum/supplemental/).
   
 =back  =back
   

Removed from v.1.452  
changed lines
  Added in v.1.455


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