version 1.158.2.2, 2016/10/24 03:05:25
|
version 1.158.2.3.2.1, 2017/11/16 16:22:58
|
Line 848 sub upload_batchfile {
|
Line 848 sub upload_batchfile {
|
|
|
sub process_batchfile { |
sub process_batchfile { |
my $r = shift; |
my $r = shift; |
my $start_page = |
|
&Apache::loncommon::start_page('Create a New Course or Community'); |
|
my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Creation Outcome','Create_Course',undef,'Create_Courses'); |
|
my $end_page = |
|
&Apache::loncommon::end_page(); |
|
my $defdom=$env{'request.role.domain'}; |
my $defdom=$env{'request.role.domain'}; |
my $batchfilepath=&Apache::lonnet::userfileupload('coursecreatorxml',undef, |
my $uname = $env{'user.name'}; |
'batchupload',undef,undef, |
my $udom = $env{'user.domain'}; |
undef,undef,$defdom); |
my $dir = &LONCAPA::tempdir().'addcourse'; |
my ($batchdir,$filename) = ($batchfilepath =~ m-^(.+)/pending/([^/]+)$-); |
|
my ($result,$logmsg); |
my ($result,$logmsg); |
if (-e "$batchfilepath") { |
if (($defdom =~ /^$match_domain$/) && ($uname =~ /^$match_username$/) && ($udom =~/^$match_domain$/)) { |
open(FILE,"<$batchfilepath"); |
my $batchfilepath=&Apache::lonnet::userfileupload('coursecreatorxml',undef, |
my @buffer = <FILE>; |
'batchupload',undef,undef, |
close(FILE); |
undef,undef,$defdom); |
if ((defined($filename)) && (defined($batchdir))) { |
if ($batchfilepath =~ m{^(\Q$dir/$defdom/web/$uname\_$udom\E)/pending/([^/]+)$}) { |
my @requests = ($filename); |
my ($batchdir,$filename) = ($1,$2); |
my %courseids = (); |
if (-e "$batchfilepath") { |
($result,$logmsg) = &LONCAPA::batchcreatecourse::create_courses( |
if (open(FILE,"<",$batchfilepath)) { |
\@requests,\%courseids,'web',$defdom, |
my @buffer = <FILE>; |
$env{'user.name'},$env{'user.domain'}); |
|
if ($result) { |
|
if (!-e "$batchdir/processed") { |
|
mkdir("$batchdir/processed", 0755); |
|
open(FILE,">$batchdir/processed/$filename"); |
|
print FILE @buffer; |
|
close(FILE); |
close(FILE); |
if (-e "$batchdir/processed/$filename") { |
if ((defined($filename)) && (defined($batchdir))) { |
unlink("$batchdir/pending/$filename"); |
my @requests = ($filename); |
|
my %courseids = (); |
|
($result,$logmsg) = &LONCAPA::batchcreatecourse::create_courses( |
|
\@requests,\%courseids,'web',$defdom, |
|
$uname,$udom); |
|
if (keys(%courseids) > 0) { |
|
if (!-e "$batchdir/processed") { |
|
mkdir("$batchdir/processed", 0755); |
|
} |
|
if (-d "$batchdir/processed") { |
|
if (open(FILE,">","$batchdir/processed/$filename")) { |
|
print FILE @buffer; |
|
close(FILE); |
|
} |
|
} |
|
if (-e "$batchdir/processed/$filename") { |
|
unlink("$batchdir/pending/$filename"); |
|
} |
|
} |
} |
} |
|
} else { |
|
$result = '<p class="LC_error">'.&mt('Could not open attributes file.').'<br />'.&mt('No courses created.').'</p>'; |
} |
} |
|
} else { |
|
$result = '<p class="LC_error">'.&mt('No uploaded attributes file found.').'<br />'.&mt('No courses created.').'</p>'; |
} |
} |
|
} else { |
|
$result = '<p class="LC_error">'.&mt('Invalid path to attributes file.').'<br />'.&mt('No courses created.').'</p>'; |
} |
} |
|
} else { |
|
$result = '<p class="LC_error">'.&mt("Your username, domain, and/or your current role's domain are missing or contain invalid characters."). |
|
'<br />'.&mt('No courses created.').'</p>'; |
} |
} |
$r->print($start_page.$crumbs.$logmsg.$result.'<br /><a href="/adm/createcourse">'. |
$r->print(&Apache::loncommon::start_page('Create a New Course, Community or Placement Test'). |
&mt('Creation options menu').'</a>'.$end_page); |
&Apache::lonhtmlcommon::breadcrumbs('Creation Outcome','Create_Course',undef,'Create_Courses'). |
|
$logmsg.$result.'<br /><a href="/adm/createcourse">'. |
|
&mt('Creation options menu').'</a>'. |
|
&Apache::loncommon::end_page()); |
} |
} |
|
|
sub courserequestbrowser_javascript { |
sub courserequestbrowser_javascript { |
Line 1367 sub handler {
|
Line 1384 sub handler {
|
} |
} |
$r->print($start_page.$crumbs."\n".'<div>'. |
$r->print($start_page.$crumbs."\n".'<div>'. |
&Apache::loncoursequeueadmin::display_queued_requests( |
&Apache::loncoursequeueadmin::display_queued_requests( |
$context,$env{'request.role.domain'},undef).'</div>'. |
$context,$env{'request.role.domain'}).'</div>'. |
&Apache::loncommon::end_page()); |
&Apache::loncommon::end_page()); |
} elsif (($permission->{'create'}) && |
} elsif (($permission->{'create'}) && |
($env{'form.phase'} eq 'requestchange') && ($show_all_choices)) { |
($env{'form.phase'} eq 'requestchange') && ($show_all_choices)) { |