@@ -1801,10 +1816,17 @@ sub check_for_upload {
sub upload {
my ($r,$url,$group)=@_;
my $fname=&Apache::lonnet::clean_filename($env{'form.uploaddoc.filename'});
-
- my ($state,$msg) = &check_for_upload($env{'form.currentpath'},
- $fname,$group,'uploaddoc');
-
+ my $disk_quota = &get_quota($group);
+ my $portfolio_root = &get_portfolio_root();
+ my $port_path = &get_port_path();
+ my ($uname,$udom) = &get_name_dom($group);
+ my $getpropath = 1;
+ my $current_disk_usage = &Apache::lonnet::diskusage($udom,$uname,$portfolio_root,$getpropath);
+ my ($state,$msg) =
+ &Apache::loncommon::check_for_upload($env{'form.currentpath'},$fname,
+ $group,'uploaddoc',$portfolio_root,
+ $port_path,$disk_quota,
+ $current_disk_usage,$uname,$udom);
if ($state eq 'will_exceed_quota'
|| $state eq 'file_locked'
|| $state eq 'file_exists' ) {
@@ -1812,11 +1834,11 @@ sub upload {
return;
}
- my $port_path = &get_port_path();
my (%allfiles,%codebase,$mode);
if ($env{'form.uploaddoc.filename'} =~ m/(\.htm|\.html|\.shtml)$/i) {
- $mode = 'parse';
-
+ if ($env{'form.parserflag'}) {
+ $mode = 'parse';
+ }
}
my $result=
&Apache::lonnet::userfileupload('uploaddoc','',
@@ -1828,73 +1850,27 @@ sub upload {
$r->print(&done('Back',$url));
} else {
if (%allfiles) {
- my $state = <
STATE
- $r->print("
".&mt("Reference Warning")."
");
- $r->print("
".&mt("Completed upload of the file. This file contained references to other files. You must upload the referenced files or else the uploaded file may not work properly.")."
");
- $r->print("
".&mt("Please select the locations from which the referenced files are to be uploaded.")."
".&mt("Completed upload of the file. This file contained references to other files. You must upload the referenced files or else the uploaded file may not work properly.")."
");
+ $r->print("
".&mt("Please select the locations from which the referenced files are to be uploaded.")."
');
- }
- }
- $r->print(&done(undef,$url));
-}
-
sub lock_info {
my ($r,$url,$group) = @_;
my ($uname,$udom) = &get_name_dom($group);
@@ -2134,6 +2110,17 @@ sub get_quota {
return $disk_quota;
}
+sub suppress_embed_prompt {
+ my $suppress_prompt = 0;
+ if (($env{'request.role'} =~ /^st/) && ($env{'request.course.id'} ne '')) {
+ if ($env{'course.'.$env{'request.course.id'}.'.suppress_embed_prompt'} eq 'yes') {
+ $suppress_prompt = 1;
+ }
+ }
+ return $suppress_prompt;
+}
+
+
sub handler {
# this handles file management
my $r = shift;
@@ -2258,7 +2245,14 @@ sub handler {
}
} elsif ($env{'form.action'} eq 'upload_embedded') {
if ($can_upload) {
- &upload_embedded($r,$url,$group);
+ my $disk_quota = &get_quota($group);
+ my $getpropath = 1;
+ my $current_disk_usage =
+ &Apache::lonnet::diskusage($udom,$uname,$portfolio_root,$getpropath);
+ $r->print(
+ &Apache::loncommon::upload_embedded('portfolio',$port_path,$uname,$udom,
+ $group,$portfolio_root,$group,$disk_quota,$current_disk_usage));
+ $r->print(&done(undef,$url));
} else {
&missing_priv($r,$url,'upload');
}
@@ -2336,7 +2330,7 @@ sub handler {
&Apache::lonhtmlcommon::clear_breadcrumbs();
$r->print(&coursegrp_portfolio_header($udom,$uname,$grp_desc));
}
- my @dir_list=&get_dir_list($portfolio_root,undef,$group);
+ my @dir_list=&get_dir_list($portfolio_root,$current_path,$group);
if ($dir_list[0] eq 'no_such_dir'){
# two main reasons for this:
# 1) never been here, so directory structure not created
@@ -2352,9 +2346,7 @@ sub handler {
$current_path = '/'; # force it back to the root
}
# now grab the directory list again, for the first time
- @dir_list=
- &Apache::lonnet::dirlist($portfolio_root.$current_path,
- $udom,$uname,$getpropath);
+ @dir_list=&get_dir_list($portfolio_root,$current_path,$group);
}
# need to know if directory is empty so it can be removed if desired
my $is_empty=(@dir_list == 2);