--- loncom/interface/lonindexer.pm 2002/07/02 21:08:24 1.46 +++ loncom/interface/lonindexer.pm 2002/08/08 13:07:17 1.48 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Directory Indexer # -# $Id: lonindexer.pm,v 1.46 2002/07/02 21:08:24 ng Exp $ +# $Id: lonindexer.pm,v 1.48 2002/08/08 13:07:17 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -135,16 +135,10 @@ sub handler { &start_fresh_session(); } # -------------------- refresh environment with user database values (in %hash) - if ($hash{'mode_catalog'} eq 'interactive') { - $ENV{'form.catalogmode'}='interactive'; - } - if ($hash{'mode_catalog'} eq 'groupimport') { - $ENV{'form.catalogmode'}='groupimport'; - } + &setvalues(\%hash,'form.catalogmode',\%ENV,'form.catalogmode' ); # --------------------- define extra fields and buttons in case of special mode if ($ENV{'form.catalogmode'} eq 'interactive') { - $hash{'mode_catalog'}='interactive'; $extrafield=''. ''; @@ -154,7 +148,6 @@ sub handler { END } elsif ($ENV{'form.catalogmode'} eq 'groupimport') { - $hash{'mode_catalog'}='groupimport'; $extrafield=''. ''; @@ -176,11 +169,11 @@ END # $element is the name of the element in $formname which receives # the URL. # &Apache::lonxml::debug('Checking mode, form, element'); - &setvalues(\%hash,'form_mode' ,\%ENV,'form.mode' ); - &setvalues(\%hash,'form_form' ,\%ENV,'form.form' ); - &setvalues(\%hash,'form_element',\%ENV,'form.element'); - &setvalues(\%hash,'form_only' ,\%ENV,'form.only' ); - &setvalues(\%hash,'form_omit' ,\%ENV,'form.omit' ); + &setvalues(\%hash,'form.mode' ,\%ENV,'form.mode' ); + &setvalues(\%hash,'form.form' ,\%ENV,'form.form' ); + &setvalues(\%hash,'form.element',\%ENV,'form.element'); + &setvalues(\%hash,'form.only' ,\%ENV,'form.only' ); + &setvalues(\%hash,'form.omit' ,\%ENV,'form.omit' ); # Deal with 'omit' and 'only' if (exists $ENV{'form.omit'}) { @@ -723,6 +716,8 @@ sub display_line { # display file if ($fnptr == 0 and $filecom[3] ne '') { + my $filelink = $startdir.$filecom[0]; + return OK if (!&Apache::lonnet::allowed('bre',$filelink)); my @file_ext = split (/\./,$listname); my $curfext = $file_ext[-1]; if (@Omit) { @@ -740,7 +735,6 @@ sub display_line { $iconname = $curfext.".gif" unless (!defined($embstyle) || $embstyle eq 'unk' || $embstyle eq 'hdn'); # - my $filelink = $startdir.$filecom[0]; $r->print(""); my $metafile = grep /^$filecom[0]\.meta\&/, @list; my $title; @@ -901,19 +895,14 @@ sub begin_form { # --------- settings whenever the user causes the indexer window to be launched sub start_fresh_session { - delete $hash{'mode_catalog'}; - delete $hash{'form_mode'}; - delete $hash{'form_form'}; - delete $hash{'form_element'}; - delete $hash{'form_omit'}; - delete $hash{'form_only'}; + delete $hash{'form.catalogmode'}; + delete $hash{'form.mode'}; + delete $hash{'form.form'}; + delete $hash{'form.element'}; + delete $hash{'form.omit'}; + delete $hash{'form.only'}; foreach (keys %hash) { - if ($_ =~ /^pre_/) { - delete $hash{$_}; - } - if ($_ =~ /^store/) { - delete $hash{$_}; - } + delete $hash{$_} if (/^(pre_|store)/); } }