[LON-CAPA-cvs] cvs: loncom(version_2_10_X) /lonnet/perl lonnet.pm
raeburn
raeburn@source.lon-capa.org
Mon, 27 Sep 2010 01:41:33 -0000
raeburn Mon Sep 27 01:41:33 2010 EDT
Modified files: (Branch: version_2_10_X)
/loncom/lonnet/perl lonnet.pm
Log:
- Backport 1.1085, 1.1086.
Index: loncom/lonnet/perl/lonnet.pm
diff -u loncom/lonnet/perl/lonnet.pm:1.1056.4.9 loncom/lonnet/perl/lonnet.pm:1.1056.4.10
--- loncom/lonnet/perl/lonnet.pm:1.1056.4.9 Fri Sep 24 03:35:42 2010
+++ loncom/lonnet/perl/lonnet.pm Mon Sep 27 01:41:33 2010
@@ -1,7 +1,7 @@
# The LearningOnline Network
# TCP networking package
#
-# $Id: lonnet.pm,v 1.1056.4.9 2010/09/24 03:35:42 raeburn Exp $
+# $Id: lonnet.pm,v 1.1056.4.10 2010/09/27 01:41:33 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1757,7 +1757,8 @@
# If there is a role which has expired, return it.
#
$courseid = &courseid_to_courseurl($courseid);
- my %roleshash = &dump('roles',$udom,$unam,$courseid);
+ my $extra = &freeze_escape({'skipcheck' => 1});
+ my %roleshash = &dump('roles',$udom,$unam,$courseid,undef,$extra);
foreach my $key (keys(%roleshash)) {
next if ($key !~/^\Q$courseid\E(?:\/)*(\w+)*\_st$/);
my $section=$1;
@@ -3060,7 +3061,8 @@
unless (defined($udom)) { $udom=$env{'user.domain'}; }
my (%dumphash,%nothide);
if ($context eq 'userroles') {
- %dumphash = &dump('roles',$udom,$uname);
+ my $extra = &freeze_escape({'skipcheck' => 1});
+ %dumphash = &dump('roles',$udom,$uname,'.',undef,$extra);
} else {
%dumphash=
&dump('nohist_userroles',$udom,$uname);
@@ -4124,7 +4126,7 @@
my ($domain,$username,$authhost)=@_;
my $now=time;
my %userroles = ('user.login.time' => $now);
- my $extra = &freeze_escape({'clientcheckrole' => 1});
+ my $extra = &freeze_escape({'skipcheck' => 1});
my $rolesdump=reply("dump:$domain:$username:roles:.::$extra",$authhost);
if (($rolesdump eq 'con_lost') || ($rolesdump eq '') ||
($rolesdump =~ /^error:/)) {
@@ -4475,7 +4477,7 @@
# -------------------------------------------------------------- dump interface
sub dump {
- my ($namespace,$udomain,$uname,$regexp,$range)=@_;
+ my ($namespace,$udomain,$uname,$regexp,$range,$extra)=@_;
if (!$udomain) { $udomain=$env{'user.domain'}; }
if (!$uname) { $uname=$env{'user.name'}; }
my $uhome=&homeserver($uname,$udomain);
@@ -4484,7 +4486,7 @@
} else {
$regexp='.';
}
- my $rep=&reply("dump:$udomain:$uname:$namespace:$regexp:$range",$uhome);
+ my $rep=&reply("dump:$udomain:$uname:$namespace:$regexp:$range:$extra",$uhome);
my @pairs=split(/\&/,$rep);
my %returnhash=();
foreach my $item (@pairs) {
@@ -5174,6 +5176,11 @@
sub is_advanced_user {
my ($udom,$uname) = @_;
+ if ($udom ne '' && $uname ne '') {
+ if (($udom eq $env{'user.domain'}) && ($uname eq $env{'user.name'})) {
+ return $env{'user.adv'};
+ }
+ }
my %roleshash = &get_my_roles($uname,$udom,'userroles',undef,undef,undef,1);
my %allroles;
my $is_adv;
@@ -6459,7 +6466,8 @@
} else {
$grouplist = '';
my $courseurl = &courseid_to_courseurl($courseid);
- my %roleshash = &dump('roles',$udom,$uname,$courseurl);
+ my $extra = &freeze_escape({'skipcheck' => 1});
+ my %roleshash = &dump('roles',$udom,$uname,$courseurl,undef,$extra);
my $access_end = $env{'course.'.$courseid.
'.default_enrollment_end_date'};
my $now = time;