Diff for /loncom/lonsql between versions 1.8 and 1.18

version 1.8, 2001/03/22 16:10:53 version 1.18, 2001/03/27 02:09:50
Line 13  use Fcntl; Line 13  use Fcntl;
 use Tie::RefHash;  use Tie::RefHash;
 use DBI;  use DBI;
   
   my @metalist;
   # ----------------- Code to enable 'find' subroutine listing of the .meta files
   require "find.pl";
   sub wanted {
       (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&
       -f _ &&
       /^.*\.meta$/ &&
       push(@metalist,"$dir/$_");
   }
   
   
 $childmaxattempts=10;  $childmaxattempts=10;
 $run =0;#running counter to generate the query-id  $run =0;#running counter to generate the query-id
Line 224  sub make_new_child { Line 234  sub make_new_child {
     else {      else {
  my $r1=$sth->fetchall_arrayref;   my $r1=$sth->fetchall_arrayref;
  my @r2; map {my $a=$_; my @b=map {escape($_)} @$a; push @r2,join(",", @b)} (@$r1);   my @r2; map {my $a=$_; my @b=map {escape($_)} @$a; push @r2,join(",", @b)} (@$r1);
  $result=join("&",@r2) . "\n";   $result=join("&",@r2);
     }      }
   
     # do custom metadata searching here and build into result      # do custom metadata searching here and build into result
     &logthis("am going to do custom query for $custom");      if ($custom) {
    &logthis("am going to do custom query for $custom");
    @metalist=(); pop @metalist;
    &find("$perlvar{'lonDocRoot'}/res");
    &logthis("FILELIST:" . join(":::",@metalist));
    # if file is indicated in sql database and
    # not part of sql-relevant query, do not pattern match.
    # if file is not in sql database, output error.
    # if file is indicated in sql database and is
    # part of query result list, then do the pattern match.
    my $customresult='';
    foreach my $m (@metalist) {
       my $fh=IO::File->new($m);
       my @lines=<$fh>;
       my $stuff=join('',@lines);
       if ($stuff=~/$custom/s) {
    foreach my $f ('abstract','author','copyright',
          'creationdate','keywords','language',
          'lastrevisiondate','mime','notes',
          'owner','subject','title') {
       $stuff=~s/\<$f[^\>]*\>.*?<\/$f[^\>]*\>//;
    }
    &logthis("found: $stuff");
    $customresult.='&custom='.escape($stuff);
       }
    }
    $result.=$customresult;
       }
     # reply with result      # reply with result
       $result.="\n" if $result;
             &reply("queryreply:$queryid:$result",$conserver);              &reply("queryreply:$queryid:$result",$conserver);
   
         }          }

Removed from v.1.8  
changed lines
  Added in v.1.18


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>