Diff for /loncom/enrollment/Autoenroll.pl between versions 1.35 and 1.38

version 1.35, 2021/06/15 20:52:27 version 1.38, 2023/10/02 21:01:22
Line 52 Line 52
     foreach my $dom (@domains) {      foreach my $dom (@domains) {
         #only run if configured to          #only run if configured to
         my $run_enroll = 0;          my $run_enroll = 0;
         my ($domsettings,$autofailsafe);          my ($domsettings,$autofailsafe,$autofailsafetype);
         my %domconfig =          my %domconfig =
             &Apache::lonnet::get_dom('configuration',['autoenroll','coursedefaults'],$dom);              &Apache::lonnet::get_dom('configuration',['autoenroll','coursedefaults'],$dom);
         if (ref($domconfig{'autoenroll'}) eq 'HASH') {          if (ref($domconfig{'autoenroll'}) eq 'HASH') {
Line 63 Line 63
             if ($domsettings->{'autofailsafe'} ne '') {              if ($domsettings->{'autofailsafe'} ne '') {
                 $autofailsafe = $domsettings->{'autofailsafe'};                  $autofailsafe = $domsettings->{'autofailsafe'};
             }              }
               if ($domsettings->{'failsafe'} =~ /^(zero|any|off)$/) {
                    $autofailsafetype = $domsettings->{'failsafe'};
               }
         } else {          } else {
             $run_enroll = &localenroll::run($dom);              $run_enroll = &localenroll::run($dom);
         }          }
Line 186 Line 189
                         if ($enrollvar{$crs}{'autodropfailsafe'}) {                          if ($enrollvar{$crs}{'autodropfailsafe'}) {
                             $failsafe = $enrollvar{$crs}{'autodropfailsafe'};                              $failsafe = $enrollvar{$crs}{'autodropfailsafe'};
                         }                          }
                         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,$failsafe,$affiliates{$crs},$LC_code{$crs},\$logmsg,\$newusermsg,'automated');                          my $failsafetype = $autofailsafetype;
                           if ($enrollvar{$crs}{'autodropfailsafetype'}) {
                               $failsafetype = $enrollvar{$crs}{'autodropfailsafetype'};  
                           }
                           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,$failsafe,$failsafetype,$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";
                         if ($changecount > 0) {                          if ($changecount > 0) {
 # Set $env{'user.name'}, $env{'user.domain'}, $env{'user.home'}  # Set $env{'user.name'}, $env{'user.domain'}, $env{'user.home'},
 # and $env{'request.course.id'} for use by logging in lonmsg  # $env{'request.course.id'} for use by logging in lonmsg,
   # and $env{'course.'.$env{'request.course.id'}.'.internal.userdomains'}
   # for use in courserolelog
                             $env{'request.course.id'} = $dom.'_'.$crs;                              $env{'request.course.id'} = $dom.'_'.$crs;
                               if (exists($enrollvar{$crs}{'userdomains'})) {
                                   $env{'course.'.$dom.'_'.$crs.'.internal.userdomains'} = $enrollvar{$crs}{'userdomains'};
                               }
                             my ($ownername,$ownerdom);                              my ($ownername,$ownerdom);
                             if ($enrollvar{$crs}{'courseowner'} ne '') {                              if ($enrollvar{$crs}{'courseowner'} ne '') {
                                 if ($enrollvar{$crs}{'courseowner'} =~ /:/) {                                  if ($enrollvar{$crs}{'courseowner'} =~ /:/) {
Line 266 Line 278
                             }                              }
                             delete($env{'user.name'});                              delete($env{'user.name'});
                             delete($env{'user.home'});                              delete($env{'user.home'});
                               if (exists($enrollvar{$crs}{'userdomains'})) {
                                   delete($env{'course.'.$dom.'_'.$crs.'.internal.userdomains'});
                               }
                             delete($env{'request.course.id'});                              delete($env{'request.course.id'});
                             $env{'user.domain'} = $dom;                              $env{'user.domain'} = $dom;
                         }                          }

Removed from v.1.35  
changed lines
  Added in v.1.38


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