--- loncom/interface/londocs.pm 2004/04/06 23:05:29 1.113
+++ loncom/interface/londocs.pm 2004/04/08 21:10:25 1.117
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.113 2004/04/06 23:05:29 albertel Exp $
+# $Id: londocs.pm,v 1.117 2004/04/08 21:10:25 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -258,11 +258,34 @@ sub group_import {
return &storemap($coursenum, $coursedom, $folder.'.sequence');
}
+sub breadcrumbs {
+ my ($where)=@_;
+ &Apache::lonhtmlcommon::clear_breadcrumbs();
+ my (@folders)=split('&',$ENV{'form.folderpath'});
+ my $folderpath;
+ while (@folders) {
+ my $folder=shift(@folders);
+ my $foldername=shift(@folders);
+ if ($folderpath) {$folderpath.='&';}
+ $folderpath.=$folder.'&'.$foldername;
+ my $url='/adm/coursedocs?folderpath='.
+ &Apache::lonnet::escape($folderpath);
+ &Apache::lonhtmlcommon::add_breadcrumb(
+ {'href'=>$url,
+ 'title'=>&Apache::lonnet::unescape($foldername),
+ 'text'=>''.
+ &Apache::lonnet::unescape($foldername).''
+ });
+
+
+ }
+ return &Apache::lonhtmlcommon::breadcrumbs(undef,undef,undef,undef,undef,0);
+}
+
sub editor {
my ($r,$coursenum,$coursedom,$folder,$allowed)=@_;
- if ($ENV{'form.foldername'}) {
- $r->print('
Folder: '.$ENV{'form.foldername'}.'
');
- }
+
+ $r->print(&breadcrumbs($folder));
my $errtext='';
my $fatal=0;
($errtext,$fatal)=
@@ -429,24 +452,23 @@ sub entryline {
'dw' => 'Move Down',
'rm' => 'Remove',
'rn' => 'Rename');
- my ($foldername,$htmlfoldername);
- if ($ENV{'form.foldername'}) {
- $foldername='&foldername='.
- &Apache::lonnet::escape($ENV{'form.foldername'});
- $htmlfoldername=&HTML::Entities::encode($ENV{'form.foldername'},'<>&"');
+ my $folderpath;
+ if ($ENV{'form.folderpath'}) {
+ $folderpath=&Apache::lonnet::escape($ENV{'form.folderpath'});
+ # $htmlfoldername=&HTML::Entities::encode($ENV{'form.foldername'},'<>&"');
}
$line.=(<
-
+
$lt{'rm'}
-
+
$lt{'rn'} |
END
}
@@ -455,11 +477,13 @@ END
my $uploaded=($url=~/^\/*uploaded\//);
my $icon=&Apache::loncommon::icon($url);
my $isfolder=0;
+ my $folderarg;
if ($uploaded) {
if ($extension eq 'sequence') {
$icon=$iconpath.'/folder_closed.gif';
$url=~/$coursenum\/([\/\w]+)\.sequence$/;
- $url='/adm/coursedocs?folder='.$1;
+ $url='/adm/coursedocs?';
+ $folderarg=$1;
$isfolder=1;
} else {
$url=&Apache::lonnet::tokenwrapper($url);
@@ -478,8 +502,13 @@ END
$url=&Apache::lonnet::clutter($url);
$url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb);
}
- if ($isfolder) { $url.='&foldername='.
- &Apache::lonnet::escape($foldertitle); }
+ if ($isfolder) {
+ my $foldername=&Apache::lonnet::escape($foldertitle);
+ my $folderpath=$ENV{'form.folderpath'};
+ if ($folderpath) { $folderpath.='&' };
+ $folderpath.=$folderarg.'&'.$foldername;
+ $url.='folderpath='.&Apache::lonnet::escape($folderpath);
+ }
$line.=' | '.
"$title | ";
@@ -646,7 +675,6 @@ sub checkversions {
foreach (keys %ENV) {
if ($_=~/^form\.set_version_(.+)$/) {
my $src=$1;
- &Apache::lonnet::logthis('Found: '.$1.' '.$ENV{$_});
if (($ENV{$_}) && ($ENV{$_} ne $setversions{$src})) {
$newsetversions{$src}=$ENV{$_};
}
@@ -848,7 +876,9 @@ sub changewarning {
$r->print(
''.
'