version 1.80, 2004/10/26 15:15:20
|
version 1.83, 2004/12/06 21:41:01
|
Line 150 sub loadmap {
|
Line 150 sub loadmap {
|
$hash{'version_'.$turi}=$1; |
$hash{'version_'.$turi}=$1; |
} |
} |
} |
} |
|
my $title=$token->[2]->{'title'}; |
|
$title=~s/\&colon\;/\:/gs; |
&Apache::lonnet::do_cache(\%Apache::lonnet::titlecache, |
&Apache::lonnet::do_cache(\%Apache::lonnet::titlecache, |
&Apache::lonnet::encode_symb($uri,$token->[2]->{'id'}, |
&Apache::lonnet::encode_symb($uri,$token->[2]->{'id'}, |
$turi), |
$turi),$title,'title'); |
$token->[2]->{'title'},'title'); |
|
unless ($ispage) { |
unless ($ispage) { |
$turi=~/\.(\w+)$/; |
$turi=~/\.(\w+)$/; |
my $embstyle=&Apache::loncommon::fileembstyle($1); |
my $embstyle=&Apache::loncommon::fileembstyle($1); |
Line 332 sub simplify {
|
Line 333 sub simplify {
|
|
|
sub traceroute { |
sub traceroute { |
my ($sofar,$rid,$beenhere,$encflag,$hdnflag)=@_; |
my ($sofar,$rid,$beenhere,$encflag,$hdnflag)=@_; |
$sofar=simplify($sofar); |
my $newsofar=$sofar=simplify($sofar); |
unless ($beenhere=~/\&$rid\&/) { |
unless ($beenhere=~/\&$rid\&/) { |
$beenhere.=$rid.'&'; |
$beenhere.=$rid.'&'; |
my ($mapid,$resid)=split(/\./,$rid); |
my ($mapid,$resid)=split(/\./,$rid); |
my $symb=&Apache::lonnet::encode_symb($hash{'map_id_'.$mapid},$resid,$hash{'src_'.$rid}); |
my $symb=&Apache::lonnet::encode_symb($hash{'map_id_'.$mapid},$resid,$hash{'src_'.$rid}); |
my $encrypt=&Apache::lonnet::EXT('resource.0.hiddenresource',$symb); |
my $hidden=&Apache::lonnet::EXT('resource.0.hiddenresource',$symb); |
if ($hdnflag || lc($encrypt) eq 'yes') { $hiddenurl{$rid}=1; } |
if ($hdnflag || lc($hidden) eq 'yes') { $hiddenurl{$rid}=1; } |
my $encrypt=&Apache::lonnet::EXT('resource.0.encrypturl',$symb); |
my $encrypt=&Apache::lonnet::EXT('resource.0.encrypturl',$symb); |
if ($encflag || lc($encrypt) eq 'yes') { $encurl{$rid}=1; } |
if ($encflag || lc($encrypt) eq 'yes') { $encurl{$rid}=1; } |
if (($retfurl eq '') && ($hash{'src_'.$rid}) |
if (($retfurl eq '') && ($hash{'src_'.$rid}) |
Line 352 sub traceroute {
|
Line 353 sub traceroute {
|
} else { |
} else { |
$hash{'conditions_'.$rid}=$sofar; |
$hash{'conditions_'.$rid}=$sofar; |
} |
} |
|
$newsofar=$hash{'conditions_'.$rid}; |
if (defined($hash{'is_map_'.$rid})) { |
if (defined($hash{'is_map_'.$rid})) { |
if (defined($hash{'map_start_'.$hash{'src_'.$rid}})) { |
if (defined($hash{'map_start_'.$hash{'src_'.$rid}})) { |
&traceroute($sofar,$hash{'map_start_'.$hash{'src_'.$rid}},'&', |
$sofar=$newsofar= |
$encflag || $encurl{$rid}, |
&traceroute($sofar, |
$hdnflag || $hiddenurl{$rid}); |
$hash{'map_start_'.$hash{'src_'.$rid}},'&', |
if (defined($hash{'map_finish_'.$hash{'src_'.$rid}})) { |
$encflag || $encurl{$rid}, |
$sofar= |
$hdnflag || $hiddenurl{$rid}); |
$hash{'conditions_'.$hash{'map_finish_'.$hash{'src_'.$rid}}}; |
|
} |
|
} |
} |
} |
} |
if (defined($hash{'to_'.$rid})) { |
if (defined($hash{'to_'.$rid})) { |
Line 375 sub traceroute {
|
Line 375 sub traceroute {
|
.$hash{'undercond_'.$_}.'. '; |
.$hash{'undercond_'.$_}.'. '; |
} |
} |
} |
} |
&traceroute($further,$hash{'goesto_'.$_},$beenhere,$encflag,$hdnflag); |
$newsofar=&traceroute($further,$hash{'goesto_'.$_},$beenhere, |
|
$encflag,$hdnflag); |
} |
} |
} |
} |
} |
} |
|
return $newsofar; |
} |
} |
|
|
# ------------------------------ Cascading conditions, quick access, parameters |
# ------------------------------ Cascading conditions, quick access, parameters |
Line 579 sub readmap {
|
Line 581 sub readmap {
|
} |
} |
# ---------------------------------------------------------------- Encrypt URLs |
# ---------------------------------------------------------------- Encrypt URLs |
foreach (keys %encurl) { |
foreach (keys %encurl) { |
$hash{'src_'.$_}=&Apache::lonenc::encrypted($hash{'src_'.$_}); |
# $hash{'src_'.$_}=&Apache::lonenc::encrypted($hash{'src_'.$_}); |
|
$hash{'encrypted_'.$_}=1; |
} |
} |
# ----------------------------------------------- Close hashes to finally store |
# ----------------------------------------------- Close hashes to finally store |
# --------------------------------- Routine must pass this point, no early outs |
# --------------------------------- Routine must pass this point, no early outs |