version 1.34, 2001/08/11 18:06:25
|
version 1.36, 2001/08/11 19:06:54
|
Line 133 sub selectbox {
|
Line 133 sub selectbox {
|
|
|
# -------------------------------------------------------- Publication Step One |
# -------------------------------------------------------- Publication Step One |
|
|
sub makeallowed { |
|
} |
|
|
|
sub urlfixup { |
sub urlfixup { |
return shift; |
my ($url,$target)=@_; |
|
my ($host)=($url=~/(?:http\:\/\/)*([^\/]+)/); |
|
map { |
|
if ($_ eq $host) { |
|
$url=~s/^http\:\/\///; |
|
$url=~s/^$host//; |
|
} |
|
} values %Apache::lonnet::hostname; |
|
$url=~s/\~$cuname/res\/$cudom\/$cuname/; |
|
if ($target) { |
|
$target=~s/\/[^\/]+$//; |
|
$url=&Apache::lonnet::hreflocation($target,$url); |
|
} |
|
return $url; |
} |
} |
|
|
sub publish { |
sub publish { |
Line 147 sub publish {
|
Line 157 sub publish {
|
my $scrout=''; |
my $scrout=''; |
my $allmeta=''; |
my $allmeta=''; |
my $content=''; |
my $content=''; |
|
my %allow=(); |
|
undef %allow; |
|
|
unless ($logfile=Apache::File->new('>>'.$source.'.log')) { |
unless ($logfile=Apache::File->new('>>'.$source.'.log')) { |
return |
return |
Line 236 sub publish {
|
Line 248 sub publish {
|
map { |
map { |
if (defined($parms{$_})) { |
if (defined($parms{$_})) { |
my $oldurl=$parms{$_}; |
my $oldurl=$parms{$_}; |
my $newurl=&urlfixup($oldurl); |
my $newurl=&urlfixup($oldurl,$target); |
if ($newurl ne $oldurl) { |
if ($newurl ne $oldurl) { |
$parms{$_}=$newurl; |
$parms{$_}=$newurl; |
print $logfile 'URL: '.$tag.':'.$oldurl.' - '. |
print $logfile 'URL: '.$tag.':'.$oldurl.' - '. |
$newurl."\n"; |
$newurl."\n"; |
} |
} |
&makeallowed($newurl); |
$allow{$newurl}=1; |
} |
} |
} ('src','href','codebase'); |
} ('src','href','codebase'); |
|
|
Line 258 sub publish {
|
Line 270 sub publish {
|
} keys %parms; |
} keys %parms; |
|
|
$outstring.='<'.$tag.$newparmstring.$endtag.'>'; |
$outstring.='<'.$tag.$newparmstring.$endtag.'>'; |
} |
} else { |
|
$allow{$token->[2]->{'src'}}=1; |
|
} |
} elsif ($token->[0] eq 'E') { |
} elsif ($token->[0] eq 'E') { |
unless ($token->[1] eq 'allow') { |
unless ($token->[1] eq 'allow') { |
$outstring.=$token->[2]; |
$outstring.=$token->[2]; |
Line 267 sub publish {
|
Line 281 sub publish {
|
$outstring.=$token->[1]; |
$outstring.=$token->[1]; |
} |
} |
} |
} |
|
# ------------------------------------------------------------ Construct Allows |
|
my $allowstr="\n"; |
|
map { |
|
$allowstr.='<allow src="'.$_.'" />'."\n"; |
|
} keys %allow; |
|
$outstring=~s/(\<\/[^\>]+\>\s*)$/$allowstr$1/s; |
|
|
{ |
{ |
my $org; |
my $org; |
unless ($org=Apache::File->new('>'.$source)) { |
unless ($org=Apache::File->new('>'.$source)) { |