--- loncom/interface/londocs.pm 2005/07/26 22:30:20 1.199
+++ loncom/interface/londocs.pm 2006/03/06 17:15:29 1.223
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.199 2005/07/26 22:30:20 raeburn Exp $
+# $Id: londocs.pm,v 1.223 2006/03/06 17:15:29 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -166,7 +166,10 @@ sub dumpcourse {
$crs=~s/\_/\//g;
foreach (keys %replacehash) {
my $newfilename=$title.'/'.$replacehash{$_};
+ $newfilename=~s/\.(\w+)$//;
+ my $ext=$1;
$newfilename=&clean($newfilename);
+ $newfilename.='.'.$ext;
my @dirs=split(/\//,$newfilename);
my $path='/home/'.$ca.'/public_html';
my $makepath=$path;
@@ -252,7 +255,7 @@ sub exportbutton {
return '
'.
''.
- &Apache::loncommon::help_open_topic('Docs_Export_Course_Docs');
+ &Apache::loncommon::help_open_topic('Docs_Export_Course_Docs');
}
sub exportcourse {
@@ -656,7 +659,6 @@ sub process_content {
my ($count,$curRes,$cdom,$cnum,$symb,$content_file,$href,$copyresult,$tempexport) = @_;
my $content_type;
my $message;
-# find where user is author or co-author
my @uploads = ();
if ($curRes->is_sequence()) {
$content_type = 'sequence';
@@ -710,6 +712,7 @@ sub process_content {
if ($2 eq $env{'user.domain'} && $3 eq $env{'user.name'}) {
$canedit= 1;
}
+# only include problem code where current user is author
if ($canedit) {
$$content_file = &replicate_content($cdom,$cnum,$tempexport,$symb,$count,\$message,$href,'resource');
} else {
@@ -1111,7 +1114,7 @@ sub editor {
if ($cmd eq 'del') {
my (undef,$url)=split(':',$Apache::lonratedt::resources[$Apache::lonratedt::order[$idx]]);
if (($url=~m|/+uploaded/\Q$coursedom\E/\Q$coursenum\E/|) &&
- ($url!~/\.(page|sequence|problem|exam|quiz|assess|survey|form|library)$/)) {
+ ($url!~/\.(page|sequence|problem|exam|quiz|assess|survey|form|library|task)$/)) {
&Apache::lonnet::removeuploadedurl($url);
} else {
&Apache::lonratedt::makezombie($Apache::lonratedt::order[$idx]);
@@ -1187,22 +1190,25 @@ sub editor {
}
}
# Loading a complete map
- if (($env{'form.importmap'}) && ($env{'form.loadmap'})) {
- foreach (&Apache::lonsequence::attemptread(&Apache::lonnet::filelocation('',$env{'form.importmap'}))) {
- my ($title,$url,$ext,$type)=split(/\:/,$_);
- my $idx=&Apache::lonratedt::getresidx($url);
- $Apache::lonratedt::resources[$idx]=$_;
- $Apache::lonratedt::order
- [$#Apache::lonratedt::order+1]=$idx;
- }
-
+ if ($env{'form.loadmap'}) {
+ if ($env{'form.importmap'}=~/\w/) {
+ foreach (&Apache::lonsequence::attemptread(&Apache::lonnet::filelocation('',$env{'form.importmap'}))) {
+ my ($title,$url,$ext,$type)=split(/\:/,$_);
+ my $idx=&Apache::lonratedt::getresidx($url);
+ $Apache::lonratedt::resources[$idx]=$_;
+ $Apache::lonratedt::order
+ [$#Apache::lonratedt::order+1]=$idx;
+ }
# Store the changed version
- ($errtext,$fatal)=&storemap($coursenum,$coursedom,
+ ($errtext,$fatal)=&storemap($coursenum,$coursedom,
$folder.'.'.$container);
- if ($fatal) {
- $r->print('
'.$errtext.'
');
- return;
- }
+ if ($fatal) {
+ $r->print('
'.$errtext.'
');
+ return;
+ }
+ } else {
+ $r->print('
'.&mt('No map selected.').'
');
+ }
}
}
# ---------------------------------------------------------------- End commands
@@ -1212,6 +1218,8 @@ sub editor {
$r->print('