version 1.111, 2004/03/31 05:23:59
|
version 1.114, 2004/04/07 20:36:54
|
Line 258 sub group_import {
|
Line 258 sub group_import {
|
return &storemap($coursenum, $coursedom, $folder.'.sequence'); |
return &storemap($coursenum, $coursedom, $folder.'.sequence'); |
} |
} |
|
|
sub editor { |
sub breadcrumbs { |
my ($r,$coursenum,$coursedom,$folder,$allowed)=@_; |
my ($where)=@_; |
|
&Apache::lonhtmlcommon::clear_breadcrumbs(); |
|
if ($where =~ /^default/) { |
|
&Apache::lonhtmlcommon::add_breadcrumb({'href'=>'/adm/coursedocs', |
|
'title'=>'Main Course Documents', |
|
'text' =>'Main Course Documents'}); |
|
} elsif ($where =~ /^supplemental/) { |
|
&Apache::lonhtmlcommon::add_breadcrumb({'href'=>'/adm/coursedocs', |
|
'title'=>'Supplemental Course Documents', |
|
'text' =>'Supplemental Course Documents'}); |
|
|
|
} else { |
|
&Apache::lonhtmlcommon::add_breadcrumb({'href'=>'/adm/coursedocs', |
|
'title'=>$where, |
|
'text' =>$where}); |
|
} |
if ($ENV{'form.foldername'}) { |
if ($ENV{'form.foldername'}) { |
$r->print('<h3>Folder: '.$ENV{'form.foldername'}.'</h3>'); |
my @folders; |
|
if (defined($ENV{'form.folders'})) { |
|
@folders=@{$ENV{'form.folders'}}; |
|
} |
|
@folders=(@folders,$ENV{'form.folder'}, |
|
&Apache::lonnet::escape($ENV{'form.foldername'})); |
|
|
|
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(); |
|
} |
|
|
|
sub editor { |
|
my ($r,$coursenum,$coursedom,$folder,$allowed)=@_; |
|
|
|
$r->print(&breadcrumbs($folder)); |
my $errtext=''; |
my $errtext=''; |
my $fatal=0; |
my $fatal=0; |
($errtext,$fatal)= |
($errtext,$fatal)= |
Line 280 sub editor {
|
Line 323 sub editor {
|
# upload a file, if present |
# upload a file, if present |
if (($ENV{'form.uploaddoc.filename'}) && |
if (($ENV{'form.uploaddoc.filename'}) && |
($ENV{'form.cmd'}=~/^upload_(\w+)/)) { |
($ENV{'form.cmd'}=~/^upload_(\w+)/)) { |
if ($folder=~/^$1/) { |
if ( ($folder=~/^$1/) || ($1 eq 'default') ) { |
# this is for a course, not a user, so set coursedoc flag |
# this is for a course, not a user, so set coursedoc flag |
# probably the only place in the system where this should be "1" |
# 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); |
Line 398 sub editor {
|
Line 441 sub editor {
|
my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]); |
my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]); |
unless ($name) { $name=(split(/\//,$url))[-1]; } |
unless ($name) { $name=(split(/\//,$url))[-1]; } |
unless ($name) { next; } |
unless ($name) { next; } |
$r->print(&entryline($idx,$name,$url,$folder,$allowed,$_)); |
$r->print(&entryline($idx,$name,$url,$folder,$allowed,$_,$coursenum)); |
$idx++; |
$idx++; |
} |
} |
$r->print('</table>'); |
$r->print('</table>'); |
Line 408 sub editor {
|
Line 451 sub editor {
|
# --------------------------------------------------------------- An entry line |
# --------------------------------------------------------------- An entry line |
|
|
sub entryline { |
sub entryline { |
my ($index,$title,$url,$folder,$allowed,$residx)=@_; |
my ($index,$title,$url,$folder,$allowed,$residx,$coursenum)=@_; |
$title=~s/\&colon\;/\:/g; |
$title=~s/\&colon\;/\:/g; |
$title=&HTML::Entities::encode(&HTML::Entities::decode( |
$title=&HTML::Entities::encode(&HTML::Entities::decode( |
&Apache::lonnet::unescape($title)),'"<>&\''); |
&Apache::lonnet::unescape($title)),'"<>&\''); |
Line 455 END
|
Line 498 END
|
my $uploaded=($url=~/^\/*uploaded\//); |
my $uploaded=($url=~/^\/*uploaded\//); |
my $icon=&Apache::loncommon::icon($url); |
my $icon=&Apache::loncommon::icon($url); |
my $isfolder=0; |
my $isfolder=0; |
|
my $folderarg; |
if ($uploaded) { |
if ($uploaded) { |
if ($extension eq 'sequence') { |
if ($extension eq 'sequence') { |
$icon=$iconpath.'/folder_closed.gif'; |
$icon=$iconpath.'/folder_closed.gif'; |
$url=~/\/(\w+)\.sequence/; |
$url=~/$coursenum\/([\/\w]+)\.sequence$/; |
$url='/adm/coursedocs?folder='.$1; |
$url='/adm/coursedocs?'; |
|
$folderarg=$1; |
$isfolder=1; |
$isfolder=1; |
} else { |
} else { |
$url=&Apache::lonnet::tokenwrapper($url); |
$url=&Apache::lonnet::tokenwrapper($url); |
} |
} |
} |
} |
$url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//; |
$url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//; |
if (($residx) && ($folder!~/supplemental/)) { |
if ((!$isfolder) && ($residx) && ($folder!~/supplemental/)) { |
$url.=(($url=~/\?/)?'&':'?').'symb='. |
my $symb=&Apache::lonnet::symbclean( |
&Apache::lonnet::escape(&Apache::lonnet::symbclean( |
|
&Apache::lonnet::declutter('uploaded/'. |
&Apache::lonnet::declutter('uploaded/'. |
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.'/'. |
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.'/'. |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.'/'.$folder. |
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.'/'.$folder. |
'.sequence'). |
'.sequence'). |
'___'.$residx.'___'. |
'___'.$residx.'___'. |
&Apache::lonnet::declutter($url))); |
&Apache::lonnet::declutter($url)); |
} |
(undef,undef,$url)=&Apache::lonnet::decode_symb($symb); |
if ($isfolder) { $url.='&foldername='. |
$url=&Apache::lonnet::clutter($url); |
&Apache::lonnet::escape($foldertitle); } |
$url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb); |
$line.='<td bgcolor="#FFFFBB"><a href="'.$url.'" target="cat_'.$folder. |
} |
'"><img src="'.$icon.'" border="0"></a></td>'. |
if ($isfolder) { |
"<td bgcolor='#FFFFBB'><a href='$url' target='cat_$folder'>$title</a></td></tr>"; |
my $foldername=&Apache::lonnet::escape($foldertitle); |
|
my $folderpath=$ENV{'form.folderpath'}; |
|
if ($folderpath) { $folderpath.='&' }; |
|
$folderpath.=$folderarg.'&'.$foldername; |
|
$url.='folderpath='.&Apache::lonnet::escape($folderpath); |
|
} |
|
$line.='<td bgcolor="#FFFFBB"><a href="'.$url.'"><img src="'.$icon. |
|
'" border="0"></a></td>'. |
|
"<td bgcolor='#FFFFBB'><a href='$url'>$title</a></td></tr>"; |
return $line; |
return $line; |
} |
} |
|
|
Line 899 sub handler {
|
Line 951 sub handler {
|
my $events=''; |
my $events=''; |
my $showdoc=0; |
my $showdoc=0; |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
['folder','foldername']); |
['folderpath']); |
|
if ($ENV{'form.folderpath'}) { |
|
my (@folderpath)=split('&',$ENV{'form.folderpath'}); |
|
$ENV{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath)); |
|
$ENV{'form.folder'}=pop(@folderpath); |
|
$ENV{'form.folders'}=\@folderpath; |
|
} |
if ($r->uri=~/^\/adm\/coursedocs\/showdoc\/(.*)$/) { |
if ($r->uri=~/^\/adm\/coursedocs\/showdoc\/(.*)$/) { |
$showdoc=$1; |
$showdoc=$1; |
} |
} |
Line 1125 ENDCOURSEVERIFY
|
Line 1183 ENDCOURSEVERIFY
|
$r->print('<tr><td bgcolor="#BBBBBB"><h2>'.&mt('Main Course Documents'). |
$r->print('<tr><td bgcolor="#BBBBBB"><h2>'.&mt('Main Course Documents'). |
($allowed?' '.$help{'Main_Course_Documents'}:'').'</h2>'); |
($allowed?' '.$help{'Main_Course_Documents'}:'').'</h2>'); |
my $folder=$ENV{'form.folder'}; |
my $folder=$ENV{'form.folder'}; |
unless ($folder=~/^default/) { $folder='default'; } |
if ($folder eq '') { |
|
$folder='default'; |
|
} |
my $postexec=''; |
my $postexec=''; |
if ($folder eq 'default') { |
if ($folder eq 'default') { |
$r->print('<script>this.window.name="loncapaclient";</script>'); |
$r->print('<script>this.window.name="loncapaclient";</script>'); |