--- loncom/interface/lonindexer.pm 2007/06/28 21:42:49 1.164
+++ loncom/interface/lonindexer.pm 2007/07/11 23:51:19 1.172
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Directory Indexer
#
-# $Id: lonindexer.pm,v 1.164 2007/06/28 21:42:49 banghart Exp $
+# $Id: lonindexer.pm,v 1.172 2007/07/11 23:51:19 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -53,6 +53,7 @@ use Apache::lonmeta;
use Apache::File;
use Apache::lonlocal;
use Apache::lonsource();
+use Apache::groupsort();
use GDBM_File;
use LONCAPA qw(:match);
@@ -241,7 +242,7 @@ END
#
#
if (!defined($mode) || ($mode ne 'edit' && $mode ne 'parmset')) {
- my $location = "/adm/groupsort?catalogmode=import&";
+ my $location = "/adm/groupsort?&inhibitmenu=yes&catalogmode=import&";
$location .= "mode=".$mode."&";
$location .= "acts=";
$catalogmodefunctions=<<"END";
@@ -345,7 +346,9 @@ function queue(val) {
END
}
+ my $inhibit_menu = "+'&".&Apache::loncommon::inhibit_menu_check()."'";
# ---------------------------------------------------------------- Print Header
+
my $js = <<"ENDHEADER";
ENDHEADER
@@ -395,43 +400,7 @@ ENDHEADER
{'domain' => $headerdom,}));
# - Evaluate actions from previous page (both cumulatively and chronologically)
if ($env{'form.catalogmode'} eq 'import') {
- my $acts=$env{'form.acts'};
- my @Acts=split(/b/,$acts);
- my %ahash;
- my %achash;
- my $ac=0;
- # some initial hashes for working with data
- foreach (@Acts) {
- my ($state,$ref)=split(/a/);
- $ahash{$ref}=$state;
- $achash{$ref}=$ac;
- $ac++;
- }
- # sorting through the actions and changing the global database hash
- foreach my $key (sort {$achash{$a}<=>$achash{$b}} (keys %ahash)) {
- if ($ahash{$key} eq '1') {
- $hash{'store_'.$hash{'pre_'.$key.'_link'}}=1;
- # $hash{'pre_'.$key.'_title'};
- $hash{'storectr_'.$hash{'pre_'.$key.'_link'}}=
- $hash{'storectr'}+0;
- $hash{'storectr'}++;
- }
- if ($ahash{$key} eq '0') {
- if ($hash{'store_'.$hash{'pre_'.$key.'_link'}}) {
- delete $hash{'store_'.$hash{'pre_'.$key.'_link'}};
- }
- }
- }
- # deleting the previously cached listing
- foreach (keys %hash) {
- if ($_ =~ /^pre_/ && $_ =~/link$/) {
- my $key = $_;
- $key =~ s/^pre_//;
- $key =~ s/_[^_]*$//;
- delete $hash{'pre_'.$key.'_title'};
- delete $hash{'pre_'.$key.'_link'};
- }
- }
+ &Apache::groupsort::update_actions_hash(\%hash);
}
# ---------------------------------- get state of file attributes to be showing
@@ -496,6 +465,7 @@ ENDHEADER
$closebutton $groupimportbutton
END
+ $r->print(&Apache::loncommon::inhibit_menu_check('input'));
# -------------- Filter out sequence containment in crumbs and "recent folders"
my $storeuri=$uri;
$storeuri='/'.(split(/\.(page|sequence)\/\//,$uri))[-1];
@@ -511,7 +481,7 @@ END
if ($reshome) {
$r->print("print('javascript:document.forms.fileattr.action="'.$reshome.'";document.forms.fileattr.submit();');
+ $r->print('javascript:document.forms.fileattr.action="'.&Apache::loncommon::inhibit_menu_check($reshome).'";document.forms.fileattr.submit();');
} else {
$r->print($reshome);
}
@@ -522,8 +492,10 @@ END
&Apache::loncommon::storeresurl($storeuri);
&Apache::lonhtmlcommon::store_recent('residx',$storeuri,$storeuri);
# -------------------------------------------------- Check All and Uncheck all
- $r->print('
');
- $r->print('');
+ if ($env{'form.catalogmode'} eq 'import') {
+ $r->print('
');
+ $r->print('');
+ }
# ----------------- output starting row to the indexed file/directory hierarchy
my $titleclr="#ddffff";
#$r->print(&initdebug());
@@ -845,6 +817,7 @@ sub display_line {
'document.forms.fileattr.acts.value)" '.
'enctype="application/x-www-form-urlencoded"'.
'>'."\n");
+ $r->print(&Apache::loncommon::inhibit_menu_check('input'));
$r->print (''."\n");
$r->print (''."\n");
@@ -918,7 +891,11 @@ sub display_line {
# display file
if (($fnptr == 0 and $filecom[3] ne '') or $absolute) {
+ my $title;
my $filelink = $pathprefix.$filecom[0];
+ if ($hash{'display_attrs_0'} == 1) {
+ $title = &Apache::lonnet::gettitle($filelink);
+ }
my @file_ext = split (/\./,$listname);
my $curfext = $file_ext[-1];
if (@Omit) {
@@ -951,6 +928,10 @@ sub display_line {
$r->print(" />\n");
$r->print("