Diff for /loncom/publisher/lonpublisher.pm between versions 1.80 and 1.81

version 1.80, 2002/05/07 18:07:46 version 1.81, 2002/05/17 22:08:01
Line 217  sub absoluteurl { Line 217  sub absoluteurl {
     return $url;      return $url;
 }  }
   
   sub set_allow {
       my ($allow,$logfile,$target,$tag,$oldurl)=@_;
       my $newurl=&urlfixup($oldurl,$target);
       my $return_url=$oldurl;
       print $logfile 'GUYURL: '.$tag.':'.$oldurl.' - '.$newurl."\n";
       if ($newurl ne $oldurl) {
    $return_url=$newurl;
    print $logfile 'URL: '.$tag.':'.$oldurl.' - '.$newurl."\n";
       }
       if (($newurl !~ /^javascript:/i) &&
    ($newurl !~ /^mailto:/i) &&
    ($newurl !~ /^http:/i) &&
    ($newurl !~ /^\#/)) {
    $$allow{&absoluteurl($newurl,$target)}=1;
       }
       return $return_url
   }
   
 sub publish {  sub publish {
   
     my ($source,$target,$style)=@_;      my ($source,$target,$style)=@_;
Line 318  sub publish { Line 336  sub publish {
   
                   foreach my $type ('src','href','background','bgimg') {                    foreach my $type ('src','href','background','bgimg') {
       foreach my $key (keys(%parms)) {        foreach my $key (keys(%parms)) {
     print $logfile "for $type, and $key\n";
   if ($key =~ /^$type$/i) {    if ($key =~ /^$type$/i) {
       my $oldurl=$parms{$key};        print $logfile "calling set_allow\n";
       my $newurl=&urlfixup($oldurl,$target);        $parms{$key}=&set_allow(\%allow,$logfile,
       if ($newurl ne $oldurl) {        $target,$tag,
   $parms{$key}=$newurl;        $parms{$key});
   print $logfile 'URL: '.$tag.':'.$oldurl.' - '.  
       $newurl."\n";  
       }  
       if (($newurl !~ /^javascript:/i) &&  
   ($newurl !~ /^mailto:/i) &&  
   ($newurl !~ /^http:/i) &&  
   ($newurl !~ /^\#/)) {  
   $allow{&absoluteurl($newurl,$target)}=1;  
       }  
   }    }
   last;  
       }        }
                   }                    }
     # probably a <randomlabel> image type <label>
     if ($lctag eq 'label' && defined($parms{'description'})) {
         my $next_token=$parser->get_token();
         if ($next_token->[0] eq 'T') {
     $next_token->[1]=&set_allow(\%allow,$logfile,
         $target,$tag,
         $next_token->[1]);
         }
         $parser->unget_token($next_token);
     }
                   if ($lctag eq 'applet') {                    if ($lctag eq 'applet') {
       my $codebase='';        my $codebase='';
                       if (defined($parms{'codebase'})) {                        if (defined($parms{'codebase'})) {

Removed from v.1.80  
changed lines
  Added in v.1.81


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