version 1.168, 2006/10/20 19:59:57
|
version 1.172, 2006/12/05 02:55:56
|
Line 42 use Apache::lonlocal;
|
Line 42 use Apache::lonlocal;
|
use Apache::lonpageflip(); |
use Apache::lonpageflip(); |
use Apache::lonnavdisplay(); |
use Apache::lonnavdisplay(); |
use GDBM_File; |
use GDBM_File; |
use LONCAPA; |
use LONCAPA qw(:DEFAULT :match); |
|
|
|
|
sub redirect_user { |
sub redirect_user { |
Line 126 sub handler {
|
Line 126 sub handler {
|
if ($numdc > 0) { |
if ($numdc > 0) { |
foreach my $envkey (keys %env) { |
foreach my $envkey (keys %env) { |
if (my ($domain,$coursenum) = |
if (my ($domain,$coursenum) = |
($envkey =~ m-^form\.cc\./(\w+)/(\w+)$-)) { |
($envkey =~ m-^form\.cc\./($match_domain)/($match_courseid)$-)) { |
if ($dcroles{$domain}) { |
if ($dcroles{$domain}) { |
&check_privs($domain,$coursenum,$then,$now); |
&check_privs($domain,$coursenum,$then,$now); |
} |
} |
Line 165 sub handler {
|
Line 165 sub handler {
|
my $authnum=$cnum; |
my $authnum=$cnum; |
if ($env{'course.'.$cdom.'_'.$cnum.'.keyauth'}) { |
if ($env{'course.'.$cdom.'_'.$cnum.'.keyauth'}) { |
($authnum,$authdom)= |
($authnum,$authdom)= |
split(/\W/,$env{'course.'.$cdom.'_'.$cnum.'.keyauth'}); |
split(/:/,$env{'course.'.$cdom.'_'.$cnum.'.keyauth'}); |
} |
} |
# check with key authority |
# check with key authority |
unless (&Apache::lonnet::validate_access_key( |
unless (&Apache::lonnet::validate_access_key( |
Line 313 ENDENTERKEY
|
Line 313 ENDENTERKEY
|
} |
} |
} |
} |
# Are we allowed to look at the first resource? |
# Are we allowed to look at the first resource? |
if (!&Apache::lonnet::allowed('bre',$furl)) { |
if ($furl !~ m|^/adm/|) { |
# Guess not ... |
# Guess not ... |
$furl=&Apache::lonpageflip::first_accessible_resource(); |
$furl=&Apache::lonpageflip::first_accessible_resource(); |
} |
} |
Line 663 ENDHEADER
|
Line 663 ENDHEADER
|
foreach (sort(keys(%recent_roles))) { |
foreach (sort(keys(%recent_roles))) { |
if (defined($roletext{'user.role.'.$_})) { |
if (defined($roletext{'user.role.'.$_})) { |
$output.=$roletext{'user.role.'.$_}; |
$output.=$roletext{'user.role.'.$_}; |
if ($_ =~ m-dc\./(\w+)/- && $dcroles{$1}) { |
if ($_ =~ m-dc\./($match_domain)/- |
|
&& $dcroles{$1}) { |
$output .= &allcourses_row($1,'recent'); |
$output .= &allcourses_row($1,'recent'); |
} |
} |
} elsif ($numdc > 0) { |
} elsif ($numdc > 0) { |
Line 690 ENDHEADER
|
Line 691 ENDHEADER
|
foreach my $which (sort {uc($a) cmp uc($b)} (keys(%sortrole))) { |
foreach my $which (sort {uc($a) cmp uc($b)} (keys(%sortrole))) { |
if ($roleclass{$sortrole{$which}} =~ /^\Q$type\E/) { |
if ($roleclass{$sortrole{$which}} =~ /^\Q$type\E/) { |
$output.=$roletext{$sortrole{$which}}; |
$output.=$roletext{$sortrole{$which}}; |
if ($sortrole{$which} =~ m-dc\./(\w+)/-) { |
if ($sortrole{$which} =~ m-dc\./($match_domain)/-) { |
if ($dcroles{$1}) { |
if ($dcroles{$1}) { |
$output .= &allcourses_row($1,''); |
$output .= &allcourses_row($1,''); |
} |
} |
Line 890 sub check_fordc {
|
Line 891 sub check_fordc {
|
my $numdc = 0; |
my $numdc = 0; |
if ($env{'user.adv'}) { |
if ($env{'user.adv'}) { |
foreach my $envkey (sort keys %env) { |
foreach my $envkey (sort keys %env) { |
if ($envkey=~/^user\.role\.dc\.\/(\w+)\/$/) { |
if ($envkey=~/^user\.role\.dc\.\/($match_domain)\/$/) { |
my $dcdom = $1; |
my $dcdom = $1; |
my $livedc = 1; |
my $livedc = 1; |
my ($tstart,$tend)=split(/\./,$env{$envkey}); |
my ($tstart,$tend)=split(/\./,$env{$envkey}); |
Line 987 sub display_cc_role {
|
Line 988 sub display_cc_role {
|
my $advanced = $env{'user.adv'}; |
my $advanced = $env{'user.adv'}; |
my $tryagain = $env{'form.tryagain'}; |
my $tryagain = $env{'form.tryagain'}; |
unless ($rolekey =~/^error\:/) { |
unless ($rolekey =~/^error\:/) { |
if ($rolekey =~ m-^user\.role.cc\./(\w+)/(\w+)$-) { |
if ($rolekey =~ m-^user\.role.cc\./($match_domain)/($match_courseid)$-) { |
my $tcourseid = $1.'_'.$2; |
my $tcourseid = $1.'_'.$2; |
my $trolecode = 'cc./'.$1.'/'.$2; |
my $trolecode = 'cc./'.$1.'/'.$2; |
my $twhere; |
my $twhere; |