version 1.249, 2002/06/27 21:11:44
|
version 1.251, 2002/07/04 15:56:17
|
Line 2271 sub courseresdata {
|
Line 2271 sub courseresdata {
|
my ($coursenum,$coursedomain,@which)=@_; |
my ($coursenum,$coursedomain,@which)=@_; |
my $coursehom=&homeserver($coursenum,$coursedomain); |
my $coursehom=&homeserver($coursenum,$coursedomain); |
my $hashid=$coursenum.':'.$coursedomain; |
my $hashid=$coursenum.':'.$coursedomain; |
unless (defined($courseresdatacache{$hashid.'.time'})) { |
my $dodump=0; |
unless (time-$courseresdatacache{$hashid.'.time'}<300) { |
if (!defined($courseresdatacache{$hashid.'.time'})) { |
my $coursehom=&homeserver($coursenum,$coursedomain); |
$dodump=1; |
if ($coursehom) { |
} else { |
my $dumpreply=&reply('dump:'.$coursedomain.':'.$coursenum. |
if (time-$courseresdatacache{$hashid.'.time'}>300) { $dodump=1; } |
':resourcedata:.',$coursehom); |
|
unless ($dumpreply=~/^error\:/) { |
|
$courseresdatacache{$hashid.'.time'}=time; |
|
$courseresdatacache{$hashid}=$dumpreply; |
|
} |
|
} |
|
} |
|
} |
} |
my @pairs=split(/\&/,$courseresdatacache{$hashid}); |
if ($dodump) { |
my %returnhash=(); |
my %dumpreply=&dump('resourcedata',$coursedomain,$coursenum); |
foreach (@pairs) { |
my ($tmp) = keys(%dumpreply); |
my ($key,$value)=split(/=/,$_); |
if ($tmp !~ /^(con_lost|error|no_such_host)/i) { |
$returnhash{unescape($key)}=unescape($value); |
$courseresdatacache{$hashid.'.time'}=time; |
} |
$courseresdatacache{$hashid}=\%dumpreply; |
my $item; |
} |
foreach $item (@which) { |
} |
if ($returnhash{$item}) { return $returnhash{$item}; } |
foreach my $item (@which) { |
} |
if ($courseresdatacache{$hashid}->{$item}) { |
return ''; |
return $courseresdatacache{$hashid}->{$item}; |
|
} |
|
} |
|
return ''; |
} |
} |
|
|
# --------------------------------------------------------- Value of a Variable |
# --------------------------------------------------------- Value of a Variable |