--- loncom/interface/londocs.pm 2005/11/04 21:36:56 1.209
+++ 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.209 2005/11/04 21:36:56 albertel Exp $
+# $Id: londocs.pm,v 1.223 2006/03/06 17:15:29 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1190,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
@@ -1373,7 +1376,7 @@ sub process_secondary_uploads {
if (($folder eq 'default') || ($folder eq 'supplemental')) {
$destination .= 'default/';
} elsif ($folder =~ /^(default|supplemental)_(\d+)$/) {
- $destination .= $1.'/';
+ $destination .= $2.'/';
}
$destination .= $newidx;
my ($url,$filename);
@@ -1400,6 +1403,7 @@ sub entryline {
&Apache::loncommon::plainname($2,$3).':
'.
$foldertitle;
}
+ $renametitle=~s/\\/\\\\/g;
$renametitle=~s/\"\;/\\\"/g;
my $line='';
# Edit commands
@@ -1453,7 +1457,24 @@ sub entryline {
'ct' => 'Cut',
'rn' => 'Rename',
'cp' => 'Copy');
+ my $nocopy=0;
+ if ($url=~/\.(page|sequence)$/) {
+ foreach (&Apache::lonsequence::attemptread(&Apache::lonnet::filelocation('',$url))) {
+ my ($title,$url,$ext,$type)=split(/\:/,$_);
+ if (($url=~/\.(page|sequence)/) && ($type ne 'zombie')) {
+ $nocopy=1;
+ last;
+ }
+ }
+ }
+ my $copylink=' ';
if ($env{'form.pagepath'}) {
+ unless ($nocopy) {
+ $copylink=(<
+$lt{'cp'}
+ENDCOPY
+ }
$line.=(<
@@ -1477,10 +1498,15 @@ sub entryline {
$lt{'ct'}
$lt{'rn'}
-
-$lt{'cp'}
+$copylink
END
} else {
+ unless ($nocopy) {
+ $copylink=(<
+$lt{'cp'}
+ENDCOPY
+ }
$line.=(<
@@ -1503,8 +1529,7 @@ END
$lt{'ct'}
$lt{'rn'}
-
-$lt{'cp'}
+$copylink
END
}
}
@@ -1534,7 +1559,7 @@ END
&Apache::lonnet::allowuploaded('/adm/coursedoc',$url);
}
}
- $url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//;
+ $url=~s-^http(\&colon\;|:)//-/adm/wrapper/ext/-;
if ((!$isfolder) && ($residx) && ($folder!~/supplemental/) && (!$ispage)) {
my $symb=&Apache::lonnet::symbclean(
&Apache::lonnet::declutter('uploaded/'.
@@ -1567,7 +1592,7 @@ END
}
}
my $parameterset=' ';
- if ($isfolder) {
+ if ($isfolder || $extension eq 'sequence') {
my $foldername=&Apache::lonnet::escape($foldertitle);
my $folderpath=$env{'form.folderpath'};
if ($folderpath) { $folderpath.='&' };
@@ -1601,7 +1626,7 @@ END
}
$line.=' | '.
- "$title | ";
+ "$title | ";
if (($allowed) && ($folder!~/^supplemental/)) {
my %lt=&Apache::lonlocal::texthash(
'hd' => 'Hidden',
@@ -1645,6 +1670,7 @@ sub tiehash {
sub untiehash {
if ($hashtied) { untie %hash; }
$hashtied=0;
+ return OK;
}
# --------------------------------------------------------------- check on this
@@ -2077,7 +2103,6 @@ $help{'Caching'}.''."
# ================================================================ Main Handler
sub handler {
my $r = shift;
- &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'});
&Apache::loncommon::content_type($r,'text/html');
$r->send_http_header;
return OK if $r->header_only;
@@ -2243,6 +2268,15 @@ function makesmpproblem() {
}
}
+function makedropbox() {
+ var title=prompt('Listed Title for the Drop Box');
+ if (title) {
+ this.document.forms.newdropbox.importdetail.value=
+ title+'=/res/lib/templates/DropBox.problem';
+ this.document.forms.newdropbox.submit();
+ }
+}
+
function makebulboard() {
var title=prompt('Listed Title for the Bulletin Board');
if (title) {
@@ -2458,6 +2492,7 @@ ENDNEWSCRIPT
'navc' => 'Navigate Contents',
'sipa' => 'Simple Page',
'sipr' => 'Simple Problem',
+ 'drbx' => 'Drop Box',
'scuf' => 'Score Upload Form',
'bull' => 'Bulletin Board',
'mypi' => 'My Personal Info',
@@ -2510,9 +2545,9 @@ $uploadtag
$help{'Check_Resource_Versions'}
$dumpbut
$exportbut
-
+
ENDCOURSEVERIFY
$r->print(&Apache::loncommon::help_open_topic('Docs_Adding_Course_Doc',
@@ -2614,7 +2649,7 @@ $uploadtag
value="$lt{'extr'}" /> $help{'Adding_External_Resource'}
-