Diff for /loncom/automation/Autocreate.pl between versions 1.3 and 1.7

version 1.3, 2005/06/01 18:26:20 version 1.7, 2007/09/03 15:34:16
Line 34 Line 34
     use strict;      use strict;
     use lib '/home/httpd/lib/perl';      use lib '/home/httpd/lib/perl';
     use Apache::lonnet;      use Apache::lonnet;
       use Apache::lonlocal;
     use LONCAPA::batchcreatecourse;      use LONCAPA::batchcreatecourse;
     use LONCAPA::Configuration;      use LONCAPA::Configuration;
   
Line 60 Line 61
         close($fh);          close($fh);
         exit;          exit;
     }      }
                                                      
       # Initialize language handler
       &Apache::lonlocal::get_language_handle();
   
     my $batchdir = $$perlvarref{'lonDaemons'}.'/tmp/addcourse/'.$defdom.'/auto';      my $batchdir = $$perlvarref{'lonDaemons'}.'/tmp/addcourse/'.$defdom.'/auto';
     opendir(DIR,"$batchdir/pending");      opendir(DIR,"$batchdir/pending");
     my @requests = grep(!/^\.\.?$/,readdir(DIR));      my @requests = grep(!/^\.\.?$/,readdir(DIR));
     closedir(DIR);      closedir(DIR);
     my %courseids = ();      my %courseids = ();
     my @permissions = ('ccc','cin','cta','cep','ccr','cst');      my @permissions = ('mau','ccc','cin','cta','cep','ccr','cst');
     my %permissionflags = ();      my %permissionflags = ();
     &set_permissions(\%permissionflags,\@permissions);      &set_permissions(\%permissionflags,\@permissions);
     $ENV{'user.name'} = $dcname;      $env{'user.name'} = $dcname;
     $ENV{'user.domain'} = $dcdom;      $env{'user.domain'} = $dcdom;
       $env{'request.role.domain'} = $defdom;
     my $wwwid=getpwnam('www');      my $wwwid=getpwnam('www');
     if ($wwwid!=$<) {      if ($wwwid!=$<) {
         my $emailto=$$perlvarref{'lonAdmEMail'};          my $emailto=$$perlvarref{'lonAdmEMail'};
Line 96 Line 101
   
     print $fh "Sending to batch - auto,$defdom,$dcname,$dcdom ".join(":",@requests)."\n";      print $fh "Sending to batch - auto,$defdom,$dcname,$dcdom ".join(":",@requests)."\n";
     my ($result,$logmsg) = &LONCAPA::batchcreatecourse::create_courses(\@requests,\%courseids,'auto',$defdom,$dcname,$dcdom);      my ($result,$logmsg) = &LONCAPA::batchcreatecourse::create_courses(\@requests,\%courseids,'auto',$defdom,$dcname,$dcdom);
     print $fh "$result && $logmsg\n";      my $output;
       if ($result ne '') {
           $output = $result."\n";
       }
       if ($logmsg ne '') {
           $output .= $logmsg."\n";    
       }
   
 # Copy requests from pending directory to processed directory and unlink.  # Copy requests from pending directory to processed directory and unlink.
   foreach my $request (@requests) {      foreach my $request (@requests) {  
Line 116 Line 127
         }          }
     }      }
   
     my $output;  
     foreach my $key (sort keys %courseids) {      foreach my $key (sort keys %courseids) {
         print $fh "created course: $key - $courseids{$key}\n";          print $fh "created course: $key - $courseids{$key}\n";
         my $newcourse = &Apache::lonnet::escape($key.':'.$courseids{$key});          my $newcourse = &Apache::lonnet::escape($key.':'.$courseids{$key});
Line 126 Line 136
     print $output;      print $output;
   
     &unset_permissions(\%permissionflags);      &unset_permissions(\%permissionflags);
     delete($ENV{'user.name'});      delete($env{'user.name'});
     delete($ENV{'user.domain'});      delete($env{'user.domain'});
       delete($env{'request.role.domain'});
     print $fh "-- ".localtime(time)." Autocreation messages end\n*******************\n\n";      print $fh "-- ".localtime(time)." Autocreation messages end\n*******************\n\n";
     close($fh);      close($fh);
   
Line 153  sub check_activedc { Line 164  sub check_activedc {
 sub set_permissions {  sub set_permissions {
     my ($permissionflags,$permissions) = @_;      my ($permissionflags,$permissions) = @_;
     foreach my $allowtype (@{$permissions}) {      foreach my $allowtype (@{$permissions}) {
         unless($ENV{"allowed.$allowtype"}) {          unless($env{"allowed.$allowtype"}) {
             $ENV{"allowed.$allowtype"} = 'F';              $env{"allowed.$allowtype"} = 'F';
             $permissionflags{$allowtype} = 1;              $permissionflags{$allowtype} = 1;
         }          }
     }      }
Line 163  sub set_permissions { Line 174  sub set_permissions {
 sub unset_permissions {  sub unset_permissions {
     my ($permissionflags) = @_;      my ($permissionflags) = @_;
     foreach my $allowtype (keys %{$permissionflags}) {      foreach my $allowtype (keys %{$permissionflags}) {
         delete($ENV{"allowed.$allowtype"});          delete($env{"allowed.$allowtype"});
     }      }
 }  }

Removed from v.1.3  
changed lines
  Added in v.1.7


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