version 1.30, 2009/01/04 05:52:58
|
version 1.33, 2013/03/01 05:20:01
|
Line 54
|
Line 54
|
my $run_enroll = 0; |
my $run_enroll = 0; |
my $domsettings; |
my $domsettings; |
my %domconfig = |
my %domconfig = |
&Apache::lonnet::get_dom('configuration',['autoenroll'],$dom); |
&Apache::lonnet::get_dom('configuration',['autoenroll','coursedefaults'],$dom); |
if (ref($domconfig{'autoenroll'}) eq 'HASH') { |
if (ref($domconfig{'autoenroll'}) eq 'HASH') { |
$domsettings = $domconfig{'autoenroll'}; |
$domsettings = $domconfig{'autoenroll'}; |
if ($domsettings->{'run'} eq '1') { |
if ($domsettings->{'run'} eq '1') { |
Line 74
|
Line 74
|
my %enrollvar = (); |
my %enrollvar = (); |
my %reply = (); |
my %reply = (); |
my %LC_code = (); |
my %LC_code = (); |
|
my ($showcredits,$domdefcredits); |
|
if ((ref($domconfig{'coursedefaults'}) eq 'HASH') && |
|
(ref($domconfig{'coursedefaults'}{'coursecredits'}) eq 'HASH')) { |
|
if ($domconfig{'coursedefaults'}{'coursecredits'}{'official'}) { |
|
$showcredits = 1; |
|
$domdefcredits = $domconfig{'coursedefaults'}{'coursecredits'}{'official'}; |
|
} |
|
} |
foreach my $key (sort keys %courses) { |
foreach my $key (sort keys %courses) { |
my %args = ( |
my %args = ( |
one_time => 1, |
one_time => 1, |
); |
); |
my %coursehash = &Apache::lonnet::coursedescription($key,\%args); |
|
my $crs = $coursehash{'num'}; |
|
next if ($coursehash{'domain'} ne $dom); |
|
# Get course settings |
# Get course settings |
my %settings = &Apache::lonnet::dump('environment',$dom,$crs); |
my %settings = &Apache::lonnet::coursedescription($key,\%args); |
|
my $crs = $settings{'num'}; |
|
next if ($settings{'domain'} ne $dom); |
%{$enrollvar{$crs}} = (); |
%{$enrollvar{$crs}} = (); |
@{$affiliates{$crs}} = (); |
@{$affiliates{$crs}} = (); |
%{$LC_code{$crs}} = (); |
%{$LC_code{$crs}} = (); |
Line 93
|
Line 100
|
$enrollvar{$crs}{$item} = &HTML::Entities::decode($settings{$item}); |
$enrollvar{$crs}{$item} = &HTML::Entities::decode($settings{$item}); |
} elsif ($item eq 'default_enrollment_start_date') { |
} elsif ($item eq 'default_enrollment_start_date') { |
$enrollvar{$crs}{startdate} = $settings{$item}; |
$enrollvar{$crs}{startdate} = $settings{$item}; |
} elsif ($item eq 'default_enrollment_end_date') { |
} elsif ($item eq 'default_enrollment_end_date') { |
$enrollvar{$crs}{enddate} = $settings{$item}; |
$enrollvar{$crs}{enddate} = $settings{$item}; |
} |
} |
} |
} |
Line 118
|
Line 125
|
if ($sec =~ m/^(\w+):(\w*)$/ ) { |
if ($sec =~ m/^(\w+):(\w*)$/ ) { |
my $course_id = $enrollvar{$crs}{coursecode}.$1; |
my $course_id = $enrollvar{$crs}{coursecode}.$1; |
my $gp = $2; |
my $gp = $2; |
if (!grep/^$course_id$/,@{$affiliates{$crs}}) { |
if (!grep/^\Q$course_id\E$/,@{$affiliates{$crs}}) { |
push @{$affiliates{$crs}}, $course_id; |
push @{$affiliates{$crs}}, $course_id; |
$LC_code{$crs}{$course_id} = $gp; |
$LC_code{$crs}{$course_id} = $gp; |
} |
} |
Line 128
|
Line 135
|
if ($xlist =~ m/^([^:]+):(\w*)$/) { |
if ($xlist =~ m/^([^:]+):(\w*)$/) { |
my $course_id = $1; |
my $course_id = $1; |
my $gp = $2; |
my $gp = $2; |
if (!grep/^$course_id$/,@{$affiliates{$crs}}) { |
if (!grep/^\Q$course_id\E$/,@{$affiliates{$crs}}) { |
push @{$affiliates{$crs}}, $course_id; |
push @{$affiliates{$crs}}, $course_id; |
$LC_code{$crs}{$course_id} = $gp; |
$LC_code{$crs}{$course_id} = $gp; |
} |
} |
Line 149
|
Line 156
|
if ($reply{$crs} > 0) { |
if ($reply{$crs} > 0) { |
if ( ($enrollvar{$crs}{autostart} < $timenow) && ( ($enrollvar{$crs}{autoend} > $timenow) || ($enrollvar{$crs}{autoend} == 0) ) ) { |
if ( ($enrollvar{$crs}{autostart} < $timenow) && ( ($enrollvar{$crs}{autoend} > $timenow) || ($enrollvar{$crs}{autoend} == 0) ) ) { |
if (($enrollvar{$crs}{autoadds} == 1) || ($enrollvar{$crs}{autodrops} == 1)) { |
if (($enrollvar{$crs}{autoadds} == 1) || ($enrollvar{$crs}{autodrops} == 1)) { |
my ($changecount,$response) = &LONCAPA::Enrollment::update_LC($dom,$crs,$enrollvar{$crs}{autoadds},$enrollvar{$crs}{autodrops},$enrollvar{$crs}{startdate},$enrollvar{$crs}{enddate},$enrollvar{$crs}{authtype},$enrollvar{$crs}{autharg},\@{$affiliates{$crs}},\%{$LC_code{$crs}},\$logmsg,\$newusermsg,'automated'); |
my $defaultcredits = $domdefcredits; |
|
if ($enrollvar{$crs}{defaultcredits}) { |
|
$defaultcredits = $enrollvar{$crs}{defaultcredits}; |
|
} |
|
my ($changecount,$response) = &LONCAPA::Enrollment::update_LC($dom,$crs,$enrollvar{$crs}{autoadds},$enrollvar{$crs}{autodrops},$enrollvar{$crs}{startdate},$enrollvar{$crs}{enddate},$enrollvar{$crs}{authtype},$enrollvar{$crs}{autharg},$showcredits,$defaultcredits,$affiliates{$crs},$LC_code{$crs},\$logmsg,\$newusermsg,'automated'); |
print $fh &mt('Messages start for [_1]',$crs)."\n"; |
print $fh &mt('Messages start for [_1]',$crs)."\n"; |
print $fh "$logmsg\n"; |
print $fh "$logmsg\n"; |
print $fh &mt('Messages end for [_1]',$crs)."\n"; |
print $fh &mt('Messages end for [_1]',$crs)."\n"; |
Line 172
|
Line 183
|
if (ref($domsettings) eq 'HASH') { |
if (ref($domsettings) eq 'HASH') { |
if (($domsettings->{'sender_uname'} ne '') && |
if (($domsettings->{'sender_uname'} ne '') && |
($domsettings->{'sender_domain'} ne '')) { |
($domsettings->{'sender_domain'} ne '')) { |
$env{'user.name'} = $settings->{'sender_uname'}; |
$env{'user.name'} = $domsettings->{'sender_uname'}; |
$env{'user.domain'} = $settings->{'sender_domain'}; |
$env{'user.domain'} = $domsettings->{'sender_domain'}; |
} |
} |
} |
} |
if ($enrollvar{$crs}{notifylist} eq '') { |
if ($enrollvar{$crs}{notifylist} eq '') { |