--- loncom/lonnet/perl/lonnet.pm 2001/01/09 22:27:07 1.91 +++ loncom/lonnet/perl/lonnet.pm 2001/01/10 22:55:52 1.94 @@ -84,6 +84,8 @@ # 12/02,12/12,12/13,12/14,12/28,12/29 Gerd Kortemeyer # 05/01/01 Guy Albertelli # 05/01,06/01,09/01 Gerd Kortemeyer +# 09/01 Guy Albertelli +# 09/01,10/01 Gerd Kortemeyer package Apache::lonnet; @@ -234,7 +236,6 @@ sub critical { sub appenv { my %newenv=@_; - my ($in,$out); map { if (($newenv{$_}=~/^user\.role/) || ($newenv{$_}=~/^user\.priv/)) { &logthis("WARNING: ". @@ -256,13 +257,9 @@ sub appenv { $fh->close(); return 'error: '.$!; } - &logthis("appenv LOCK_SH gotten"); @oldenv=<$fh>; - $in=$#oldenv+1; - &logthis("appenv LOCK_SH to be closed"); $fh->close(); } - &logthis("Number of elements read appenv: ".$in."from".join(" ",caller)); for (my $i=0; $i<=$#oldenv; $i++) { chomp($oldenv[$i]); if ($oldenv[$i] ne '') { @@ -284,16 +281,11 @@ sub appenv { $fh->close(); return 'error: '.$!; } - &logthis("appenv LOCK_EX gotten"); - $out=0; - foreach $newname (sort keys %newenv) { + foreach $newname (keys %newenv) { print $fh "$newname=$newenv{$newname}\n"; - $out++; } - &logthis("appenv LOCK_EX to be closed"); $fh->close(); } - &logthis("Number of elements read appenv: ".$in." number out:".$out."from".join(" ",caller)); return 'ok'; } # ----------------------------------------------------- Delete from Environment @@ -1049,6 +1041,7 @@ sub allowed { if ($envkey=~/^user\.role\.(st|ta)\.([^\.]*)/) { my $courseid=$2; my $roleid=$1.'.'.$2; + $courseid=~s/^\///; my $expiretime=600; if ($ENV{'request.role'} eq $roleid) { $expiretime=120; @@ -1626,7 +1619,8 @@ sub EXT { # ----------------------------------------------------------- first, check user my %resourcedata=get('resourcedata', ($courselevelr,$courselevelm,$courselevel)); - if ($resourcedata{$courselevelr}!~/^error\:/) { + if (($resourcedata{$courselevelr}!~/^error\:/) && + ($resourcedata{$courselevelr}!~/^con_lost/)) { if ($resourcedata{$courselevelr}) { return $resourcedata{$courselevelr}; } @@ -1634,6 +1628,13 @@ sub EXT { return $resourcedata{$courselevelm}; } if ($resourcedata{$courselevel}) { return $resourcedata{$courselevel}; } + } else { + if ($resourcedata{$courselevelr}!~/No such file/) { + &logthis("WARNING:". + " Trying to get resource data for ".$ENV{'user.name'}." at " + .$ENV{'user.domain'}.": ".$resourcedata{$courselevelr}. + ""); + } } # -------------------------------------------------------- second, check course my $section=''; @@ -1652,7 +1653,12 @@ sub EXT { if ($_) { return &unescape($_); } } split(/\&/,$reply); } - + if (($reply=~/^con_lost/) || ($reply=~/^error\:/)) { + &logthis("WARNING:". + " Getting ".$reply." asking for ".$varname." from ". + $ENV{'course.'.$ENV{'request.course.id'}.$section.'.home'}. + ""); + } # ------------------------------------------------------ third, check map parms my %parmhash=(); my $thisparm='';