Diff for /loncom/lonnet/perl/lonnet.pm between versions 1.1035 and 1.1036

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;
                         }                          }

Removed from v.1.1035  
changed lines
  Added in v.1.1036


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>