--- loncom/interface/lonindexer.pm 2010/03/29 23:25:16 1.205
+++ loncom/interface/lonindexer.pm 2011/10/17 12:41:30 1.211
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Directory Indexer
#
-# $Id: lonindexer.pm,v 1.205 2010/03/29 23:25:16 raeburn Exp $
+# $Id: lonindexer.pm,v 1.211 2011/10/17 12:41:30 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -120,8 +120,8 @@ sub handler {
my $colspan='';
$extrafield='';
- my $diropendb =
- "/home/httpd/perl/tmp/$env{'user.domain'}_$env{'user.name'}_sel_res.db";
+ my $diropendb = LONCAPA::tempdir() .
+ "$env{'user.domain'}_$env{'user.name'}_sel_res.db";
%hash = ();
{
my %dbfile;
@@ -321,10 +321,8 @@ function select_group() {
function changeURL(val) {
if (window.opener.document) {
- var elementname = "$element"+"_value";
- var checkboxname = "$element"+"_setparmval";
+ var elementname = "$element";
window.opener.document.forms["$form"].elements[elementname].value=val;
- window.opener.document.forms["$form"].elements[checkboxname].checked=true;
} else {
alert("The file you selected is: "+val);
}
@@ -462,11 +460,12 @@ ENDHEADER
push(@select_form_order,$types);
}
$select_file_categories{'select_form_order'} = \@select_form_order;
+ my $onchange = 'this.form.submit();';
my $type_element=
&Apache::loncommon::select_form(
$typeselect,
'only',
- %select_file_categories);
+ \%select_file_categories,$onchange);
my $type_selector = '';
@@ -589,6 +588,7 @@ END
$r->print(&Apache::loncommon::start_data_table("LC_tableBrowseRes")
.&Apache::loncommon::start_data_table_header_row());
$r->print("
".&mt('Name')." | \n");
+ $r->print(" | \n");
$r->print("".&mt('Title')." | \n")
if ($hash{'display_attrs_0'} == 1);
$r->print(''.&mt("Size")." (".&mt("bytes").") ".
@@ -755,6 +755,8 @@ sub scanDir {
sub get_list {
my ($r,$uri)=@_;
my @list=();
+ my $listerror;
+
(my $luri = $uri) =~ s/\//_/g;
if ($env{'form.updatedisplay'}) {
foreach (keys %hash) {
@@ -778,10 +780,20 @@ sub get_list {
$hash{'dirlist_files_'.$luri} = join("\n",@list);
} else {
# is really a directory
- @list = &Apache::lonnet::dirlist($uri);
+ (my $listref,$listerror) = &Apache::lonnet::dirlist($uri);
+ if (ref($listref) eq 'ARRAY') {
+ @list = @{$listref};
+ }
$hash{'dirlist_files_'.$luri} = join("\n",@list);
$hash{'dirlist_timestamp_files_'.$luri} = time;
}
+#Checking for error messages associated with empty directories or inaccessible servers (See Bug 4984)
+ if (($listerror eq 'no_such_dir') || ($listerror eq 'no_such_host')) {
+ $r->print(" " . &mt("Directory does not exist."). " ");
+ } elsif ($listerror eq 'con_lost') {
+ $r->print("" . &mt("Directory temporarily not accessible."). " ");
+ }
+
return @list=&match_ext($r,@list);
}
@@ -923,7 +935,7 @@ sub display_line {
$r->print (' print (' alt="'.$msg.'" class="LC_fileicon" />'.
"\n");
- $r->print(&mt("Up")."$tabtag");
+ $r->print(&mt("Up")." | $tabtag");
$r->print(&Apache::loncommon::end_data_table_row());
return OK;
}
@@ -958,7 +970,7 @@ $r->print ('(".&Apache::lonnet::domain($listname,'description').
")");
}
- $r->print("$tabtag");
+ $r->print(" | $tabtag");
$r->print(&Apache::loncommon::end_data_table_row());
return OK;
@@ -990,7 +1002,12 @@ $r->print ('print(''.$tabtag);
+# Wishlistlink
+ $r->print(' | '.
+ ' '.$tabtag);
$r->print(&Apache::loncommon::end_data_table_row());
return OK;
}
@@ -1085,6 +1102,12 @@ $r->print ('\n");
+# Wishlistlink
+ $r->print(' | '.
+ ' | ');
if ($hash{'display_attrs_0'} == 1) {
$r->print(' '.($title eq '' ? ' ' : $title).
' | '."\n");
@@ -1232,7 +1255,13 @@ $r->print (''
."\n");
- $r->print ("$listname\n");
+ $r->print ("$listname");
+# Wishlistlink
+ $r->print(''.
+ ' | ');
# Attributes
my $filelink = $startdir.$filecom[0].'/default';