version 1.1035, 2009/10/24 03:24:25
|
version 1.1036, 2009/10/25 14:49:07
|
Line 4842 sub is_advanced_user {
|
Line 4842 sub is_advanced_user {
|
} |
} |
|
|
sub check_can_request { |
sub check_can_request { |
my ($dom,$can_request) = @_; |
my ($dom,$can_request,$request_domains) = @_; |
my $canreq = 0; |
my $canreq = 0; |
my ($types,$typename) = &Apache::loncommon::course_types(); |
my ($types,$typename) = &Apache::loncommon::course_types(); |
my @options = ('approval','validate','autolimit'); |
my @options = ('approval','validate','autolimit'); |
Line 4853 sub check_can_request {
|
Line 4853 sub check_can_request {
|
$env{'user.domain'}, |
$env{'user.domain'}, |
$type,undef,'requestcourses')) { |
$type,undef,'requestcourses')) { |
$canreq ++; |
$canreq ++; |
|
if (ref($request_domains) eq 'HASH') { |
|
push(@{$request_domains->{$type}},$env{'user.domain'}); |
|
} |
if ($dom eq $env{'user.domain'}) { |
if ($dom eq $env{'user.domain'}) { |
$can_request->{$type} = 1; |
$can_request->{$type} = 1; |
} |
} |
Line 4860 sub check_can_request {
|
Line 4863 sub check_can_request {
|
if ($env{'environment.reqcrsotherdom.'.$type} ne '') { |
if ($env{'environment.reqcrsotherdom.'.$type} ne '') { |
my @curr = split(',',$env{'environment.reqcrsotherdom.'.$type}); |
my @curr = split(',',$env{'environment.reqcrsotherdom.'.$type}); |
if (@curr > 0) { |
if (@curr > 0) { |
$canreq ++; |
foreach my $item (@curr) { |
unless ($dom eq $env{'user.domain'}) { |
if (ref($request_domains) eq 'HASH') { |
|
my ($otherdom) = ($item =~ /^($match_domain):($optregex)(=?\d*)$/); |
|
if ($otherdom ne '') { |
|
if (ref($request_domains->{$type}) eq 'ARRAY') { |
|
unless (grep(/^\Q$otherdom\E$/,@{$request_domains->{$type}})) { |
|
push(@{$request_domains->{$type}},$otherdom); |
|
} |
|
} else { |
|
push(@{$request_domains->{$type}},$otherdom); |
|
} |
|
} |
|
} |
|
} |
|
unless($dom eq $env{'user.domain'}) { |
|
$canreq ++; |
if (grep(/^\Q$dom\E:($optregex)(=?\d*)$/,@curr)) { |
if (grep(/^\Q$dom\E:($optregex)(=?\d*)$/,@curr)) { |
$can_request->{$type} = 1; |
$can_request->{$type} = 1; |
} |
} |