version 1.457, 2003/12/08 13:50:57
|
version 1.459.2.3, 2004/02/10 19:23:11
|
Line 1319 sub flushcourselogs {
|
Line 1319 sub flushcourselogs {
|
# Writes to the dynamic metadata of resources to get hit counts, etc. |
# Writes to the dynamic metadata of resources to get hit counts, etc. |
# |
# |
foreach my $entry (keys(%accesshash)) { |
foreach my $entry (keys(%accesshash)) { |
my ($dom,$name,undef,$type)=($entry=~m:___(\w+)/(\w+)/(.*)___(\w+)$:); |
if ($entry =~ /___count$/) { |
if ($type eq 'count'){ |
my ($dom,$name); |
|
($dom,$name,undef)=($entry=~m:___(\w+)/(\w+)/(.*)___count$:); |
|
if (! defined($dom) || $dom eq '' || |
|
! defined($name) || $name eq '') { |
|
my $cid = $ENV{'request.course.id'}; |
|
$dom = $ENV{'request.'.$cid.'.domain'}; |
|
$name = $ENV{'request.'.$cid.'.num'}; |
|
} |
my $value = $accesshash{$entry}; |
my $value = $accesshash{$entry}; |
my (undef,$url,undef) = ($entry =~ /^(.*)___(.*)___count$/); |
my (undef,$url,undef) = ($entry =~ /^(.*)___(.*)___count$/); |
my %temphash=($url => $value); |
my %temphash=($url => $value); |
Line 1335 sub flushcourselogs {
|
Line 1342 sub flushcourselogs {
|
} |
} |
} |
} |
} else { |
} else { |
|
my ($dom,$name) = ($entry=~m:___(\w+)/(\w+)/(.*)___(\w+)$:); |
my %temphash=($entry => $accesshash{$entry}); |
my %temphash=($entry => $accesshash{$entry}); |
if (&put('nohist_resevaldata',\%temphash,$dom,$name) eq 'ok') { |
if (&put('nohist_resevaldata',\%temphash,$dom,$name) eq 'ok') { |
delete $accesshash{$entry}; |
delete $accesshash{$entry}; |
Line 1375 sub courselog {
|
Line 1383 sub courselog {
|
} else { |
} else { |
$courselogs{$ENV{'request.course.id'}}.=$what; |
$courselogs{$ENV{'request.course.id'}}.=$what; |
} |
} |
# if (length($courselogs{$ENV{'request.course.id'}})>4048) { |
if (length($courselogs{$ENV{'request.course.id'}})>4048) { |
if (length($courselogs{$ENV{'request.course.id'}})>48) { |
|
&flushcourselogs(); |
&flushcourselogs(); |
} |
} |
} |
} |
Line 1398 sub courseacclog {
|
Line 1405 sub courseacclog {
|
|
|
sub countacc { |
sub countacc { |
my $url=&declutter(shift); |
my $url=&declutter(shift); |
|
return if (! defined($url) || $url eq ''); |
unless ($ENV{'request.course.id'}) { return ''; } |
unless ($ENV{'request.course.id'}) { return ''; } |
$accesshash{$ENV{'request.course.id'}.'___'.$url.'___course'}=1; |
$accesshash{$ENV{'request.course.id'}.'___'.$url.'___course'}=1; |
my $key=$$.$processmarker.'_'.$dumpcount.'___'.$url.'___count'; |
my $key=$$.$processmarker.'_'.$dumpcount.'___'.$url.'___count'; |
Line 3695 sub EXT {
|
Line 3703 sub EXT {
|
if ($$result{$courselevel}) { |
if ($$result{$courselevel}) { |
return $$result{$courselevel}; } |
return $$result{$courselevel}; } |
} else { |
} else { |
if ($tmp!~/No such file/) { |
#error 2 occurs when the .db doesn't exist |
|
if ($tmp!~/error: 2 /) { |
&logthis("<font color=blue>WARNING:". |
&logthis("<font color=blue>WARNING:". |
" Trying to get resource data for ". |
" Trying to get resource data for ". |
$uname." at ".$udom.": ". |
$uname." at ".$udom.": ". |
$tmp."</font>"); |
$tmp."</font>"); |
} elsif ($tmp=~/error:No such file/) { |
} elsif ($tmp=~/error: 2 /) { |
&EXT_cache_set($udom,$uname); |
&EXT_cache_set($udom,$uname); |
} elsif ($tmp =~ /^(con_lost|no_such_host)/) { |
} elsif ($tmp =~ /^(con_lost|no_such_host)/) { |
return $tmp; |
return $tmp; |
Line 3783 sub packages_tab_default {
|
Line 3792 sub packages_tab_default {
|
foreach my $package (split(/,/,$packages)) { |
foreach my $package (split(/,/,$packages)) { |
my ($pack_type,$pack_part)=split(/_/,$package,2); |
my ($pack_type,$pack_part)=split(/_/,$package,2); |
if ($pack_part eq $part) { |
if ($pack_part eq $part) { |
return $packagetab{"$pack_type&$name&default"}; |
if (defined($packagetab{"$pack_type&$name&default"})) { |
|
return $packagetab{"$pack_type&$name&default"}; |
|
} |
} |
} |
} |
} |
return undef; |
return undef; |
Line 4418 sub filelocation {
|
Line 4429 sub filelocation {
|
$location=$file; |
$location=$file; |
} else { |
} else { |
$file=~s/^$perlvar{'lonDocRoot'}//; |
$file=~s/^$perlvar{'lonDocRoot'}//; |
$file=~s:^/*res::; |
$file=~s:^/res/:/:; |
if ( !( $file =~ m:^/:) ) { |
if ( !( $file =~ m:^/:) ) { |
$location = $dir. '/'.$file; |
$location = $dir. '/'.$file; |
} else { |
} else { |
Line 4442 sub hreflocation {
|
Line 4453 sub hreflocation {
|
} |
} |
} |
} |
|
|
|
|
|
sub current_machine_domains { |
|
my $hostname=$hostname{$perlvar{'lonHostID'}}; |
|
my @domains; |
|
while( my($id, $name) = each(%hostname)) { |
|
&logthis("-$id-$name-$hostname-"); |
|
if ($hostname eq $name) { |
|
push(@domains,$hostdom{$id}); |
|
} |
|
} |
|
return @domains; |
|
} |
|
|
|
sub current_machine_ids { |
|
my $hostname=$hostname{$perlvar{'lonHostID'}}; |
|
my @ids; |
|
while( my($id, $name) = each(%hostname)) { |
|
&logthis("-$id-$name-$hostname-"); |
|
if ($hostname eq $name) { |
|
push(@ids,$id); |
|
} |
|
} |
|
return @ids; |
|
} |
|
|
# ------------------------------------------------------------- Declutters URLs |
# ------------------------------------------------------------- Declutters URLs |
|
|
sub declutter { |
sub declutter { |