--- loncom/interface/londocs.pm 2004/05/06 17:55:03 1.123 +++ loncom/interface/londocs.pm 2004/06/15 15:50:03 1.130 @@ -1,7 +1,7 @@ # The LearningOnline Network # Documents # -# $Id: londocs.pm,v 1.123 2004/05/06 17:55:03 www Exp $ +# $Id: londocs.pm,v 1.130 2004/06/15 15:50:03 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -121,7 +121,8 @@ sub dumpbutton { if ($home) { return ''. ''; + &mt('Dump Course DOCS to Construction Space').'" />'. + &Apache::loncommon::help_open_topic('Docs_Dump_Course_Docs'); } else { return''. &mt('Dump Course DOCS to Construction Space: available on other servers'); @@ -321,33 +322,57 @@ sub editor { &Apache::lonratedt::delparameter($idx,'parameter_encrypturl'); } - ($errtext,$fatal)=&storemap($coursenum,$coursedom,$folder.'.sequence'); - if ($fatal) { - $r->print('

'.$errtext.'

'); - return; - } if ($ENV{'form.newpos'}) { # change order my $newpos=$ENV{'form.newpos'}-1; - $r->print('Sorting '.$idx.' -> '.$newpos); - ($errtext,$fatal)=&storemap($coursenum,$coursedom,$folder.'.sequence'); - if ($fatal) { - $r->print('

'.$errtext.'

'); - return; + my $currentpos=$ENV{'form.currentpos'}-1; + my $i; + my @neworder=(); + if ($newpos>$currentpos) { +# moving stuff up + for ($i=0;$i<$currentpos;$i++) { + $neworder[$i]=$Apache::lonratedt::order[$i]; + } + for ($i=$currentpos;$i<$newpos;$i++) { + $neworder[$i]=$Apache::lonratedt::order[$i+1]; + } + $neworder[$newpos]=$Apache::lonratedt::order[$currentpos]; + for ($i=$newpos+1;$i<=$#Apache::lonratedt::order;$i++) { + $neworder[$i]=$Apache::lonratedt::order[$i]; + } + } else { +# moving stuff down + for ($i=0;$i<$newpos;$i++) { + $neworder[$i]=$Apache::lonratedt::order[$i]; + } + $neworder[$newpos]=$Apache::lonratedt::order[$currentpos]; + for ($i=$newpos+1;$i<$currentpos+1;$i++) { + $neworder[$i]=$Apache::lonratedt::order[$i-1]; + } + for ($i=$currentpos+1;$i<=$#Apache::lonratedt::order;$i++) { + $neworder[$i]=$Apache::lonratedt::order[$i]; + } } - + @Apache::lonratedt::order=@neworder; } - +# store the changed version + ($errtext,$fatal)=&storemap($coursenum,$coursedom,$folder.'.sequence'); + if ($fatal) { + $r->print('

'.$errtext.'

'); + return; + } + } + # upload a file, if present if (($ENV{'form.uploaddoc.filename'}) && ($ENV{'form.cmd'}=~/^upload_(\w+)/)) { if ( ($folder=~/^$1/) || ($1 eq 'default') ) { # this is for a course, not a user, so set coursedoc flag # probably the only place in the system where this should be "1" - my $url=&Apache::lonnet::userfileupload('uploaddoc',1); + my $url=&Apache::lonnet::userfileupload('uploaddoc',1,'docs'); my $ext='false'; if ($url=~/^http\:\/\//) { $ext='true'; } $url=~s/\:/\:/g; @@ -375,6 +400,10 @@ sub editor { if ($ENV{'form.cmd'}) { my ($cmd,$idx)=split(/\_/,$ENV{'form.cmd'}); 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/|) { + &Apache::lonnet::removeuploadedurl($url); + } for (my $i=$idx;$i<$#Apache::lonratedt::order;$i++) { $Apache::lonratedt::order[$i]= $Apache::lonratedt::order[$i+1]; @@ -499,6 +528,7 @@ sub entryline { my $selectbox=''; if ($folder!~/^supplemental/) { $selectbox= + ''. ' +$help{'Verify_Content'} - + $help{'Check_Resource_Versions'} $dumpbut @@ -1285,8 +1327,8 @@ $lt{'title'}:
- + $help{'Uploading_From_Harddrive'}