--- loncom/interface/londocs.pm 2002/09/04 13:06:20 1.16
+++ loncom/interface/londocs.pm 2002/09/10 19:01:09 1.22
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.16 2002/09/04 13:06:20 www Exp $
+# $Id: londocs.pm,v 1.22 2002/09/10 19:01:09 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -60,10 +60,17 @@ sub storemap {
sub editor {
my ($r,$coursenum,$coursedom,$folder,$allowed)=@_;
+ if ($ENV{'form.foldername'}) {
+ $r->print('
Folder: '.$ENV{'form.foldername'}.'
');
+ }
my $errtext='';
my $fatal=0;
($errtext,$fatal)=
&mapread($coursenum,$coursedom,$folder.'.sequence');
+ if ($#Apache::lonratedt::order<1) {
+ $Apache::lonratedt::order[0]=1;
+ $Apache::lonratedt::resources[1]='';
+ }
if ($fatal) {
$r->print(''.$errtext.'
');
} else {
@@ -84,6 +91,10 @@ sub editor {
$comment=~s/\\<\;/g;
$comment=~s/\>/\>\;/g;
$comment=~s/\:/\:/g;
+ if ($folder=~/^supplemental/) {
+ $comment=time.'___&&&___'.$ENV{'user.name'}.'___&&&___'.
+ $ENV{'user.domain'}.'___&&&___'.$comment;
+ }
my $newidx=$#Apache::lonratedt::resources+1;
$Apache::lonratedt::resources[$newidx]=
$comment.':'.$url.':'.$ext.':normal:res';
@@ -176,26 +187,33 @@ END
if (-e "/home/httpd/html/adm/lonIcons/$extension.gif") {
$icon=$extension;
}
+ my $isfolder=0;
if ($uploaded) {
if ($extension eq 'sequence') {
$icon='folder_closed';
$url=~/\/(\w+)\.sequence/;
$url='/adm/coursedocs?folder='.$1;
+ $isfolder=1;
} else {
$url=&Apache::lonnet::tokenwrapper($url);
}
}
- $line.=' | ';
+ $url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//;
# Title
$title=&Apache::lonnet::unescape($title);
+ my $foldertitle=$title;
if ($title=~
/^(\d+)\_\_\_\&\&\&\_\_\_(\w+)\_\_\_\&\&\&\_\_\_(\w+)\_\_\_\&\&\&\_\_\_(.*)$/
- ) { $title=''.localtime($1).' '.$2.' at '.$3.':
'.
- &Apache::lontexconvert::msgtexconverted($4);
+ ) {
+ $foldertitle=&Apache::lontexconvert::msgtexconverted($4);
+ $title=''.localtime($1).' '.
+ &Apache::loncommon::plainname($2,$3).':
'.
+ $foldertitle;
}
- $line.="$title | ";
- $line.='';
+ if ($isfolder) { $url.='&foldername='.$foldertitle; }
+ $line.=' | '.
+ "$title | ";
return $line;
}
@@ -214,9 +232,13 @@ sub handler {
my $script='';
my $allowed;
my $events='';
+ my $showdoc=0;
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
- ['folder','showdoc']);
- unless ($ENV{'form.showdoc'}) { # got called from remote
+ ['folder','foldername']);
+ if ($r->uri=~/^\/adm\/coursedocs\/showdoc\/(.*)$/) {
+ $showdoc=$1;
+ }
+ unless ($showdoc) { # got called from remote
$forcestandard=($ENV{'form.folder'}=~/^default_/);
$forcesupplement=($ENV{'form.folder'}=~/^supplemental_/);
@@ -228,9 +250,7 @@ sub handler {
}
} else { # got called in sequence from course
$allowed=0;
- $forcestandard=1;
- $forcesupplement=0;
- $script=&Apache::&Apache::lonxml::registerurl(1,undef);
+ $script=''.&Apache::lonxml::registerurl(1,undef).'
+ENDDOCUMENT
+ if ($allowed) {
+ $r->print(<
function makenewfolder(targetform,folderseq) {
var foldername=prompt('Name of New Folder','New Folder');
if (foldername) {
@@ -266,13 +292,41 @@ function makenewfolder(targetform,folder
}
}
-function makenewext(targetform) {
+function makenewext(targetname) {
+ this.document.forms.extimport.useform.value=targetname;
+ window.open('/adm/rat/extpickframe.html');
+}
+
+function makesmppage() {
+ var title=prompt('Listed Title for the Page');
+ this.document.forms.newsmppg.importdetail.value=
+ title+'=/adm/$udom/$uname/$now/smppg';
+ this.document.forms.newsmppg.submit();
+}
+
+function makebulboard() {
+ var title=prompt('Listed Title for the Bulletin Board');
+ this.document.forms.newbul.importdetail.value=
+ title+'=/adm/$udom/$uname/$now/bulletinboard';
+ this.document.forms.newbul.submit();
+}
+
+function finishpick() {
+ var title=this.document.forms.extimport.title.value;
+ var url=this.document.forms.extimport.url.value;
+ var form=this.document.forms.extimport.useform.value;
+ eval
+ ('this.document.forms.'+form+'.importdetail.value="'+title+'='+url+
+ '";this.document.forms.'+form+'.submit();');
}
-
-ENDDOCUMENT
-$r->print(&Apache::loncommon::bodytag('Course Documents','',$events));
-# --------------------------------------------------0------ Standard documents
+ENDNEWSCRIPT
+ }
+# -------------------------------------------------------------------- Body tag
+ $r->print(''.
+ &Apache::loncommon::bodytag('Course Documents','',$events));
+ unless ($showdoc) {
+# --------------------------------------------------------- Standard documents
if (($standard) && ($allowed) && (!$forcesupplement)) {
$r->print('Main Course Documents
');
my $folder=$ENV{'form.folder'};
@@ -294,6 +348,7 @@ File:
Title:
+
@@ -310,6 +365,7 @@ Title:
-
+
+
|