--- loncom/interface/lonindexer.pm 2001/06/21 20:57:12 1.11
+++ loncom/interface/lonindexer.pm 2001/08/07 14:02:27 1.14
@@ -1,6 +1,8 @@
# The LearningOnline Network with CAPA
+#
# Directory Indexer
# (Login Screen
+#
# 5/21/99,5/22,5/25,5/26,5/31,6/2,6/10,7/12,7/14 Gerd Kortemeyer)
# 11/23 Gerd Kortemeyer
# 07/20-08/04 H.K. Ng
@@ -12,6 +14,8 @@
# 06/01/2001 Scott Harrison
# 06/02/2001 Scott Harrison
# 06/15/2001 Scott Harrison
+# 06/26/2001 H. K. Ng
+# 07/08/2001 H. K. Ng
package Apache::lonindexer;
@@ -28,7 +32,8 @@ my $hidden;
my $extrafield;
my $fnum;
sub BEGIN {
- my $fh=Apache::File->new($Apache::lonnet::perlvar{'lonTabDir'}.'/language.tab');
+ my $fh=Apache::File->new($Apache::lonnet::perlvar{'lonTabDir'}.
+ '/language.tab');
map {
$_=~/(\w+)\s+([\w\s\-]+)/;
$language{$1}=$2;
@@ -64,6 +69,8 @@ sub handler {
$hidden=''; my $closebutton='';
my $groupimportbutton='';
my $colspan='';
+
+ $extrafield='';
if ($ENV{'form.catalogmode'} eq 'interactive') {
$extrafield='
'.
'
The LearningOnline Network With CAPA Directory Browser
-
+
@@ -181,7 +188,7 @@ ENDHEADER
my (@attrchk,@openpath);
my $uri=$r->uri;
- $r->print("The LearningOnline With CAPA Network Directory Browser \n");
+ $r->print('The LearningOnline With CAPA Network Directory Browser '."\n");
my $diropendb = "/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db";
@@ -212,6 +219,7 @@ ENDHEADER
Keywords
Language
+
$hidden
@@ -255,12 +263,28 @@ END
$dirs{$uri} = 'open';
}
}
-
-# my $toplevel = "/res/";
- my $toplevel = $uri;
+
+ my $bredir = $ENV{'form.dirPointer'};
+ my $toplevel;
my $indent = 0;
- &scanDir ($r,$toplevel,$indent);
+ $uri = $uri.'/' if $uri !~ /.*\/$/;
+ if ($bredir ne "on") {
+ $hash{'top.level'} = $uri;
+ $toplevel = $uri;
+ } else {
+ $toplevel = $hash{'top.level'};
+ }
+ if ($toplevel ne "/res/"){
+ my (@uri_com) = split(/\//,$uri);
+ pop @uri_com;
+ my $upone = join('/',@uri_com);
+ my @list = qw (0);
+ &display_line ($r,'opened',$upone.'&viewOneUp',0,$upone,@list);
+ $indent = 1;
+ }
+ &scanDir ($r,$toplevel,$indent);
+
$r->print("");
$r->print("");
@@ -290,7 +314,7 @@ sub scanDir {
$compuri = join('',$strip,"/"); # domain list has /res/
$curdir = $compuri;
} else {
- $compuri = join('',$startdir,$strip,"/"); # user, dir & file having name only, i.e., w/o path
+ $compuri = join('',$startdir,$strip,"/"); # user, dir & file have name only, i.e., w/o path
$curdir = $startdir;
}
my $diropen = "closed";
@@ -339,7 +363,7 @@ sub match_ext {
my $dirptr=16384;
my $tabdir = $r->dir_config('lonTabDir');
- my $fn = $tabdir."/filetypes.tab";
+ my $fn = $tabdir.'/filetypes.tab';
if (-e $fn) {
my $FH=Apache::File->new($fn);
my @content=<$FH>;
@@ -391,29 +415,44 @@ sub display_line{
$tabtag=join('',$tabtag," ") if $hash{'display_attrs_'.$i} == 1;
$i++;
}
+ if ($filecom[1] eq "viewOneUp") {
+ $r->print("$extrafield");
+ $r->print("\n");
+ $r->print (' \n");
+ return OK;
+ }
if ($filecom[1] eq "domain") {
+ $r->print (' '."\n") if ($ENV{'form.dirPointer'} eq "on");
$r->print("$extrafield");
$r->print("");
&begin_form ($r,$filecom[0].'/');
my $anchor = $filecom[0].'/';
$anchor =~ s/\///g;
- $r->print (' print ('');
+ $r->print (' print (' name="'.$msg.'" height="22" type="image" border="0">'."\n");
+ $r->print (' print (' border="0"> '."\n");
$r->print("Domain - $listname $tabtag \n");
return OK;
}
if ($filecom[1] eq "user") {
$r->print("$extrafield");
- $r->print("\n");
+ $r->print(" \n");
my $curdir = $startdir.$filecom[0].'/';
- &begin_form ($r,$curdir);
my $anchor = $curdir;
$anchor =~ s/\///g;
+ &begin_form ($r,$curdir);
$r->print (' '."\n");
$r->print (' print (' name="'.$msg.'" height="22" type="image" border="0">'."\n");
- $r->print (" \n");
- $r->print ("$listname $tabtag \n");
+ $r->print (' ');
+ $r->print ($listname.$tabtag.''."\n");
return OK;
}
# display file
@@ -449,7 +488,7 @@ sub display_line{
$fnum++;
}
- if ($indent < 11) {
+ if ($indent > 0 and $indent < 11) {
$r->print(" \n");
} elsif ($indent >0) {
my $ten = int($indent/10.);
@@ -463,7 +502,7 @@ sub display_line{
}
$r->print(" \n");
- $r->print(" ",$listname," \n");
+ $r->print (" $listname ");
$r->print (" (metadata ) ") if ($metafile == 1);
@@ -510,31 +549,29 @@ sub display_line{
my $rem = $indentm1%10.0;
my $count = 0;
while ($count < $ten) {
- $r->print(" \n");
- $count++;
+ $r->print (" \n");
+ $count++;
}
- $r->print(" \n") if $rem > 0;
+ $r->print (" \n") if $rem > 0;
}
$r->print (' print (' name="'.$msg.'" height="22" type="image" border="0">'."\n");
- $r->print(" \n");
- $r->print("$listname $tabtag\n");
+ $r->print (' '."\n");
+ $r->print ("$listname$tabtag\n");
}
}
-#---------------------prints the beginning of a form for directory or file link
+# ------------------- prints the beginning of a form for directory or file link
sub begin_form {
my ($r,$uri) = @_;
my $anchor = $uri;
$anchor =~ s/\///g;
- $r->print ('