--- loncom/interface/londocs.pm 2002/09/02 15:27:08 1.15
+++ loncom/interface/londocs.pm 2002/09/04 14:50:53 1.17
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.15 2002/09/02 15:27:08 www Exp $
+# $Id: londocs.pm,v 1.17 2002/09/04 14:50:53 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -60,15 +60,23 @@ 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 {
# ------------------------------------------------------------ Process commands
- if ($allowed) {
+# ---------------- if they are for this folder and user allowed to make changes
+ if (($allowed) && ($ENV{'form.folder'} eq $folder)) {
# upload a file, if present
if (($ENV{'form.uploaddoc.filename'}) &&
($ENV{'form.cmd'}=~/^upload_(\w+)/)) {
@@ -83,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';
@@ -135,7 +147,8 @@ sub editor {
# Store the changed version
&storemap($coursenum,$coursedom,$folder.'.sequence');
}
- }
+ }
+# ---------------------------------------------------------------- End commands
# ---------------------------------------------------------------- Print screen
my $idx=0;
$r->print('');
@@ -167,20 +180,39 @@ sub entryline {
Remove
END
}
-# URL
- if ($url=~/^\/*uploaded\//) {
- $url=&Apache::lonnet::tokenwrapper($url);
+# Figure out what kind of a resource this is
+ my ($extension)=($url=~/\.(\w+)$/);
+ my $uploaded=($url=~/^\/*uploaded\//);
+ my $icon='unknown';
+ 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.='View | ';
# 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;
}
@@ -200,7 +232,7 @@ sub handler {
my $allowed;
my $events='';
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
- ['folder','showdoc']);
+ ['folder','foldername','showdoc']);
unless ($ENV{'form.showdoc'}) { # got called from remote
$forcestandard=($ENV{'form.folder'}=~/^default_/);
$forcesupplement=($ENV{'form.folder'}=~/^supplemental_/);
@@ -240,23 +272,38 @@ sub handler {
The LearningOnline Network with CAPA
-
+
ENDDOCUMENT
$r->print(&Apache::loncommon::bodytag('Course Documents','',$events));
-# --------------------------------------------------0------ Standard documents
+# --------------------------------------------------------- Standard documents
if (($standard) && ($allowed) && (!$forcesupplement)) {
$r->print('Main Course Documents
');
my $folder=$ENV{'form.folder'};
unless ($folder=~/^default/) { $folder='default'; }
&editor($r,$coursenum,$coursedom,$folder,$allowed);
+ my $folderseq='/uploaded/'.$coursedom.'/'.$coursenum.'/default_'.time.
+ '.sequence';
$r->print(<
-Upload a new main course document |
-Import a published document |
-Special documents |
+
+Upload a new main course document |
+Import a published document |
+Special documents |
-
+ |
File:
|
-
+ |
- |
+ |
-
|
@@ -315,17 +372,69 @@ ENDFORM
unless ($folder=~/supplemental/) { $folder='supplemental'; }
&editor($r,$coursenum,$coursedom,$folder,$allowed);
if ($allowed) {
+ my $folderseq=
+ '/uploaded/'.$coursedom.'/'.$coursenum.'/supplemental_'.time.
+ '.sequence';
+
$r->print(<Post a new supplemental course document
+
ENDSUPFORM
}
}