version 1.9, 2007/06/04 14:13:08
|
version 1.10, 2007/06/05 23:23:01
|
Line 36
|
Line 36
|
|
|
my $perlvarref = LONCAPA::Configuration::read_conf('loncapa.conf'); |
my $perlvarref = LONCAPA::Configuration::read_conf('loncapa.conf'); |
my $logfile = $$perlvarref{'lonDaemons'}.'/logs/autoupdate.log'; |
my $logfile = $$perlvarref{'lonDaemons'}.'/logs/autoupdate.log'; |
my $hostid = $perlvarref->{'lonHostID'}; |
my $hostid = $perlvarref->{'lonHostID'}; |
|
if (!&Apache::lonnet::is_library($hostid)) { |
|
exit; |
|
} |
my @info = ('inststatus','lockedname','internalname','lastname', |
my @info = ('inststatus','lockedname','internalname','lastname', |
'firstname','id','permanentemail'); |
'firstname','id','permanentemail'); |
# Initialize language handler |
# Initialize language handler |
Line 44
|
Line 47
|
# find out which users we need to examine |
# find out which users we need to examine |
my @domains = sort(&Apache::lonnet::current_machine_domains()); |
my @domains = sort(&Apache::lonnet::current_machine_domains()); |
foreach my $dom (@domains) { |
foreach my $dom (@domains) { |
my $primaryhost_id = &Apache::lonnet::domain($dom,'primary'); |
|
if ($primaryhost_id ne $hostid) { |
|
next; |
|
} |
|
my %domconfig = &Apache::lonnet::get_dom('configuration',['autoupdate'], |
my %domconfig = &Apache::lonnet::get_dom('configuration',['autoupdate'], |
$dom); |
$dom); |
#only run if configured to |
#only run if configured to |
Line 63
|
Line 62
|
open(my $fh,">>$logfile"); |
open(my $fh,">>$logfile"); |
print $fh ("********************\n".localtime(time).' '.&mt('Autoupdate messages start for domain: [_1]',$dom).' --'."\n"); |
print $fh ("********************\n".localtime(time).' '.&mt('Autoupdate messages start for domain: [_1]',$dom).' --'."\n"); |
# get courseIDs for domain |
# get courseIDs for domain |
my %courses=&Apache::lonnet::courseiddump($dom,'.',1,'.','.','',undef,undef,'.'); |
my %courses=&Apache::lonnet::courseiddump($dom,'.',1,'.','.','.',1,[$hostid],'.'); |
# get user information |
# get user information |
my (%instusers,%instids); |
my (%instusers,%instids); |
next if (&localenroll::allusers_info($dom,\%instusers,\%instids) ne 'ok'); |
next if (&localenroll::allusers_info($dom,\%instusers,\%instids) ne 'ok'); |
Line 132
|
Line 131
|
my %roleshash = |
my %roleshash = |
&Apache::lonnet::get_my_roles($uname, |
&Apache::lonnet::get_my_roles($uname, |
$dom,'userroles',\@types,\@roles,\@cdoms); |
$dom,'userroles',\@types,\@roles,\@cdoms); |
foreach my $item (%roleshash) { |
foreach my $item (keys(%roleshash)) { |
my ($cnum,$cdom,$role) = split(/:/,$item); |
my ($cnum,$cdom,$role) = split(/:/,$item); |
my ($start,$end) = split(/:/,$roleshash{$item}); |
my ($start,$end) = split(/:/,$roleshash{$item}); |
if (&Apache::lonnet::is_course($cdom,$cnum)) { |
if (&Apache::lonnet::is_course($cdom,$cnum)) { |
Line 200 sub update_classlist {
|
Line 199 sub update_classlist {
|
my ($cdom,$cnum,$udom,$uname,$user) = @_; |
my ($cdom,$cnum,$udom,$uname,$user) = @_; |
my ($uid,$fullname,$classlistentry); |
my ($uid,$fullname,$classlistentry); |
my $fullname = |
my $fullname = |
&Apache::lonnet::format_name($user->{'first'},$user->{'middle'}, |
&Apache::lonnet::format_name($user->{'firstname'},$user->{'middlename'}, |
$user->{'last'},$user->{'gene'},'lastname'); |
$user->{'lastname'},$user->{'generation'}, |
|
'lastname'); |
my %classhash = &Apache::lonnet::get('classlist',[$uname.':'.$udom], |
my %classhash = &Apache::lonnet::get('classlist',[$uname.':'.$udom], |
$cdom,$cnum); |
$cdom,$cnum); |
my @classinfo = split(/:/,$classhash{$uname.':'.$udom}); |
my @classinfo = split(/:/,$classhash{$uname.':'.$udom}); |