--- loncom/interface/lonindexer.pm 2012/08/27 16:03:24 1.213.4.3 +++ loncom/interface/lonindexer.pm 2016/06/19 04:27:50 1.225 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Directory Indexer # -# $Id: lonindexer.pm,v 1.213.4.3 2012/08/27 16:03:24 raeburn Exp $ +# $Id: lonindexer.pm,v 1.225 2016/06/19 04:27:50 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -92,15 +92,8 @@ sub handler { undef (@Omit); %fieldnames=&Apache::lonmeta::fieldnames(); -# ------------------------------------- read in machine configuration variables +# --------------------------------------------------------------- get icon path my $iconpath= $r->dir_config('lonIconsURL') . "/"; - my $domain = $r->dir_config('lonDefDomain'); - my $role = $r->dir_config('lonRole'); - my $loadlim = $r->dir_config('lonLoadLim'); - my $servadm = $r->dir_config('lonAdmEMail'); - my $sysadm = $r->dir_config('lonSysEMail'); - my $lonhost = $r->dir_config('lonHostID'); - my $tabdir = $r->dir_config('lonTabDir'); #SB my $fileclr='#ffffe6'; my $line; @@ -630,7 +623,7 @@ END # ----------------- read in what directories have previously been set to "open" - foreach (keys %hash) { + foreach (keys(%hash)) { if ($_ =~ /^diropen_status_/) { my $key = $_; $key =~ s/^diropen_status_//; @@ -716,7 +709,20 @@ sub scanDir { return if ($c->aborted()); #This is a kludge, sorry aboot this my ($strip,$dom,undef,$testdir,undef,undef,undef,undef,undef,undef,undef,undef,undef,undef,$obs,undef)=split(/\&/,$line,16); - next if($strip =~ /.*\.meta$/ | $obs eq '1'); + next if (($strip =~ /\.meta$/) || ($obs)); + if ($dom ne 'domain') { + my ($udom,$uname); + if ($dom eq 'user') { + ($udom) = ($startdir =~ m{^/res/($match_domain)}); + $uname = $strip; + } else { + ($udom,$uname) = ($startdir =~ m{^/res/($match_domain)/($match_courseid)}); + } + if ($udom ne '' && $uname ne '') { + # Don't display "course author" directory. + next if (&Apache::lonnet::is_course($udom,$uname)); + } + } my (@fileparts) = split(/\./,$strip); if ($hash{'display_attrs_9'} != 1) { # if not all versions to be shown @@ -761,7 +767,7 @@ sub get_list { (my $luri = $uri) =~ s/\//_/g; if ($env{'form.updatedisplay'}) { - foreach (keys %hash) { + foreach (keys(%hash)) { delete $hash{$_} if ($_ =~ /^dirlist_files_/); delete $hash{$_} if ($_ =~ /^dirlist_timestamp_files_/); } @@ -996,6 +1002,9 @@ $r->print (''. "\n"); my $quotable_curdir = &Apache::loncommon::escape_single($curdir); + my $quotable_startdir = &Apache::loncommon::escape_single($startdir); + my $quotable_listname = &Apache::loncommon::escape_single($listname); + $r->print (''.$msg.''); @@ -1007,7 +1016,7 @@ $r->print (''. + 'onclick="set_wishlistlink('."'$plainname','$quotable_startdir$quotable_listname"."/'".')">'. ''.$tabtag); $r->print(&Apache::loncommon::end_data_table_row()); @@ -1090,6 +1099,8 @@ $r->print ('\n"); my $quotable_filelink = &Apache::loncommon::escape_single($filelink); + my $quotable_startdir = Apache::loncommon::escape_single($startdir); + my $quotable_listname = &Apache::loncommon::escape_single($listname); $r->print (" $listname "); $quotable_filelink = &Apache::loncommon::escape_single($filelink.'.meta'); @@ -1103,7 +1114,7 @@ $r->print (''. + "','$quotable_startdir$quotable_listname'".')">'. ''); if ($hash{'display_attrs_0'} == 1) { @@ -1245,7 +1256,9 @@ $r->print (''. "\n"); my $quotable_curdir = &Apache::loncommon::escape_single($curdir); - + my $quotable_startdir = &Apache::loncommon::escape_single($startdir); + my $quotable_listname = &Apache::loncommon::escape_single($listname); + my $location = &Apache::loncommon::lonhttpdurl("/adm/lonIcons"); my $icon = "navmap.folder.".($nowOpen ? "open":"closed").'.gif'; $r->print (''. + 'onclick="set_wishlistlink('."'$listname','$quotable_startdir$quotable_listname"."/'".')">'. ''); # Attributes @@ -1304,8 +1317,8 @@ $r->print ('