Diff for /loncom/interface/lonaboutme.pm between versions 1.146 and 1.147

version 1.146, 2010/03/29 12:21:38 version 1.147, 2010/09/26 02:02:42
Line 452  sub in_course { Line 452  sub in_course {
         $cdom = $env{'course.'.$cid.'.domain'};          $cdom = $env{'course.'.$cid.'.domain'};
         $cnum = $env{'course.'.$cid.'.num'};          $cnum = $env{'course.'.$cid.'.num'};
     }      }
     my %roles = &Apache::lonnet::dump('roles',$udom,$uname);      my $typesref;
     my @course_roles = grep(m{^/\Q$cdom\E/\Q$cnum\E[/_]}, keys(%roles));      if ($type eq 'all') {
     return 0 if (!@course_roles);          $typesref = ['active','previous','future'];
     return 1 if ($type eq 'any');      } elsif ($type eq 'previous' || $type eq 'future') {
     my $now = time();          $typesref = [$type];
     foreach my $role (@course_roles) {      }
         my (undef,$role_end,$role_start)=split(/\_/,$roles{$role});      my %roles = &Apache::lonnet::get_my_roles($uname,$udom,'userroles',
         my $status = 'active';                                               $typesref,undef,[$cdom]);
         if ($role_start > 0 && $now < $role_start) {      my ($tmp) = keys(%roles);
             $status = 'future';      return 0 if ($tmp =~ /^(con_lost|error|no_such_host)/i);
         }      my @course_roles = grep(/^\Q$cnum\E:\Q$cdom\E:/, keys(%roles));
         if ($role_end > 0 && $now > $role_end) {      if (@course_roles > 0) {
             $status = 'previous';          return 1;
         }  
         return 1 if ($status eq $type);  
     }      }
     return 0;      return 0;
 }  }

Removed from v.1.146  
changed lines
  Added in v.1.147


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