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