Diff for /loncom/interface/lonindexer.pm between versions 1.213.4.8 and 1.230

version 1.213.4.8, 2015/01/23 22:59:28 version 1.230, 2020/09/03 15:38:51
Line 94  sub handler { Line 94  sub handler {
   
 # --------------------------------------------------------------- get icon path  # --------------------------------------------------------------- get icon path
     my $iconpath= $r->dir_config('lonIconsURL') . "/";      my $iconpath= $r->dir_config('lonIconsURL') . "/";
       my $defdom = &Apache::lonnet::default_login_domain();
   
 #SB my $fileclr='#ffffe6';  #SB my $fileclr='#ffffe6';
     my $line;      my $line;
Line 565  END Line 566  END
     } else {      } else {
  $r->print($reshome);   $r->print($reshome);
     }      }
     $r->print("'>".&mt('Home').'</a></span>');      $r->print("'>".&mt('Home directory').'</a></span>');
  }   }
  $r->print('</form>');   $r->print('</form>');
 # ------------------------------------------------------ Remember where we were  # ------------------------------------------------------ Remember where we were
Line 664  END Line 665  END
     pop @uri_com;      pop @uri_com;
     my $upone = join('/',@uri_com);      my $upone = join('/',@uri_com);
     my @list = qw (0);      my @list = qw (0);
     &display_line ($r,'opened',$upone.'&viewOneUp',0,$upone,@list);      &display_line ($r,$defdom,'opened',$upone.'&viewOneUp',0,$upone,@list);
     $indent = 1;      $indent = 1;
  }   }
   
 # -------- recursively go through all the directories and output as appropriate  # -------- recursively go through all the directories and output as appropriate
  &scanDir ($r,$toplevel,$indent,\%hash);   &scanDir ($r,$toplevel,$indent,\%hash,$defdom);
   
 # -------------------------------------------------------------- end the tables  # -------------------------------------------------------------- end the tables
         $r->print(&Apache::loncommon::end_data_table());          $r->print(&Apache::loncommon::end_data_table());
Line 697  END Line 698  END
   
 # ----------------------------------------------- recursive scan of a directory  # ----------------------------------------------- recursive scan of a directory
 sub scanDir {  sub scanDir {
     my ($r,$startdir,$indent,$hashref)=@_;      my ($r,$startdir,$indent,$hashref,$defdom)=@_;
     my $c = $r->connection();      my $c = $r->connection();
     my ($compuri,$curdir);      my ($compuri,$curdir);
     my $dirptr=16384;      my $dirptr=16384;
Line 709  sub scanDir { Line 710  sub scanDir {
         return if ($c->aborted());          return if ($c->aborted());
  #This is a kludge, sorry aboot this   #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);    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);   my (@fileparts) = split(/\./,$strip);
  if ($hash{'display_attrs_9'} != 1) {   if ($hash{'display_attrs_9'} != 1) {
             # if not all versions to be shown              # if not all versions to be shown
Line 740  sub scanDir { Line 754  sub scanDir {
  }   }
     }      }
  }   }
  &display_line($r,$diropen,$line,$indent,$curdir,$hashref,@list);   &display_line($r,$defdom,$diropen,$line,$indent,$curdir,$hashref,@list);
  &scanDir ($r,$compuri,$indent) if $diropen eq 'opened';   &scanDir ($r,$compuri,$indent,undef,$defdom) if $diropen eq 'opened';
     }      }
     $indent--;      $indent--;
 }  }
Line 871  sub match_ext { Line 885  sub match_ext {
   
 # ------------------------------- displays one line in appropriate table format  # ------------------------------- displays one line in appropriate table format
 sub display_line {  sub display_line {
     my ($r,$diropen,$line,$indent,$startdir,$hashref,@list)=@_;      my ($r,$defdom,$diropen,$line,$indent,$startdir,$hashref,@list)=@_;
     my (@pathfn, $fndir);      my (@pathfn, $fndir);
 # there could be relative paths (files actually belonging into this directory)  # there could be relative paths (files actually belonging into this directory)
 # or absolute paths (for example, from sequences)  # or absolute paths (for example, from sequences)
Line 937  sub display_line { Line 951  sub display_line {
 # Do we have permission to look at this?  # Do we have permission to look at this?
     if($filecom[15] ne '1') { return OK if ((!&Apache::lonnet::allowed('bre',$pathprefix.$filecom[0])) && (!&Apache::lonnet::allowed('bro',$pathprefix.$filecom[0]))); }      if($filecom[15] ne '1') { return OK if ((!&Apache::lonnet::allowed('bre',$pathprefix.$filecom[0])) && (!&Apache::lonnet::allowed('bro',$pathprefix.$filecom[0]))); }
   
       if (($filecom[1] eq 'domain') && ($defdom ne $listname)) {
           unless (&Apache::lonnet::will_trust('shared',$listname,$defdom)) {
               return OK;   
           }
           unless (&Apache::lonnet::will_trust('content',$defdom,$listname)) {
               return OK;
           }
       }
   
 # make absolute links appear on different background  # make absolute links appear on different background
 #SB    if ($absolute) { $fileclr='#ccdd99'; }  #SB    if ($absolute) { $fileclr='#ccdd99'; }
   
Line 971  $r->print ('<input type="hidden" name="a Line 994  $r->print ('<input type="hidden" name="a
   
 # display user directory  # display user directory
     }      }
   
     if ($filecom[1] eq 'user') {      if ($filecom[1] eq 'user') {
           my $domain=(split(m|/|,$startdir))[2];
           if ($defdom ne $domain) {
               unless (&Apache::lonnet::will_trust('shared',$domain,$defdom)) {
                   return OK;
               }
               unless (&Apache::lonnet::will_trust('content',$defdom,$domain)) {
                   return OK;
               }
           }
  # $r->print("<tr valign=$valign bgcolor=\"$fileclr\">$extrafield");   # $r->print("<tr valign=$valign bgcolor=\"$fileclr\">$extrafield");
  my $curdir = $startdir.$filecom[0].'/';   my $curdir = $startdir.$filecom[0].'/';
  my $anchor = $curdir;   my $anchor = $curdir;
Line 1088  $r->print ('<input type="hidden" name="a Line 1121  $r->print ('<input type="hidden" name="a
  my $quotable_filelink = &Apache::loncommon::escape_single($filelink);   my $quotable_filelink = &Apache::loncommon::escape_single($filelink);
         my $quotable_startdir = Apache::loncommon::escape_single($startdir);          my $quotable_startdir = Apache::loncommon::escape_single($startdir);
         my $quotable_listname = &Apache::loncommon::escape_single($listname);          my $quotable_listname = &Apache::loncommon::escape_single($listname);
           my $curfext = lc((split(/\./,$listname))[-1]);
           my $modalstyle;
           if ($curfext =~ /^js|css|txt|tab$/) {
               $modalstyle = ",'','background-color:#ffffff'";
           }
   
  $r->print (" <a href=\"javascript:openMyModal('".$quotable_filelink."?inhibitmenu=yes',500,500,'yes');\">$listname</a> ");   $r->print (" <a href=\"javascript:openMyModal('".$quotable_filelink."?inhibitmenu=yes',500,500,'yes'".$modalstyle.");\">$listname</a> ");
  $quotable_filelink = &Apache::loncommon::escape_single($filelink.'.meta');   $quotable_filelink = &Apache::loncommon::escape_single($filelink.'.meta');
  &Apache::loncommon::inhibit_menu_check(\$quotable_filelink);   &Apache::loncommon::inhibit_menu_check(\$quotable_filelink);
  $r->print (" (<a href=\"javascript:openMyModal('".$quotable_filelink."?inhibitmenu=yes',500,500,'yes');\">".&mt('metadata')."</a>) ");   $r->print (" (<a href=\"javascript:openMyModal('".$quotable_filelink."?inhibitmenu=yes',500,500,'yes');\">".&mt('metadata')."</a>) ");
Line 1351  sub coursecontext { Line 1389  sub coursecontext {
  $r->print(   $r->print(
             &mt('Already in this course:').'<br />'              &mt('Already in this course:').'<br />'
            .&mt('[_1] in folder/map [_2]',             .&mt('[_1] in folder/map [_2]',
         &Apache::lonnet::gettitle($resource),                      &Apache::lonnet::gettitle($resource),
         &Apache::lonnet::gettitle($map))                      &Apache::lonnet::gettitle($map))
            .'<br />');             .'<br />');
     }      }
 }  }

Removed from v.1.213.4.8  
changed lines
  Added in v.1.230


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>
500 Internal Server Error

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at root@localhost to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.