Diff for /loncom/metadata_database/searchcat.pl between versions 1.4 and 1.12

version 1.4, 2001/04/16 12:08:34 version 1.12, 2001/04/16 13:48:14
Line 10 Line 10
   
 use IO::File;  use IO::File;
 use HTML::TokeParser;  use HTML::TokeParser;
   use DBI;
   
 my @metalist;  my @metalist;
 # ----------------- Code to enable 'find' subroutine listing of the .meta files  # ----------------- Code to enable 'find' subroutine listing of the .meta files
Line 17  require "find.pl"; Line 18  require "find.pl";
 sub wanted {  sub wanted {
     (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&      (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&
     -f _ &&      -f _ &&
     /^.*\.meta$/ &&      /^.*\.meta$/ && !/^.+\.\d+\.[^\.]+\.meta$/ &&
     push(@metalist,"$dir/$_");      push(@metalist,"$dir/$_");
 }  }
   
Line 55  foreach my $user (@homeusers) { Line 56  foreach my $user (@homeusers) {
 }  }
   
 # -- process each file to get metadata and put into search catalog SQL database  # -- process each file to get metadata and put into search catalog SQL database
   # Also, check to see if already there.
   # I could just delete (without searching first), but this works for now.
 foreach my $m (@metalist) {  foreach my $m (@metalist) {
     my $ref=&metadata($m);      my $ref=&metadata($m);
     my $sth=$dbh->prepare('insert into metadata values ('.      my $m2='/res/'.&declutter($m);
   delete($ref->{'title'}),      $m2=~s/\.meta$//;
   delete($ref->{'author'}).','.      my $q2="select * from metadata where url like binary '$m2'";
   delete($ref->{'subject'}).','.      my $sth = $dbh->prepare($q2);
   delete($ref->{'url'}).','.      $sth->execute();
   delete($ref->{'keywords'}).','.      my $r1=$sth->fetchall_arrayref;
   delete($ref->{'version'}).','.      if (@$r1) {
   delete($ref->{'notes'}).','.   $sth=$dbh->prepare("delete from metadata where url like binary '$m2'");
   delete($ref->{'abstract'}).','.          $sth->execute();
   delete($ref->{'mime'}).','.      }
   delete($ref->{'language'}).','.      $sth=$dbh->prepare('insert into metadata values ('.
   delete($ref->{'creationdate'}).','.    '"'.delete($ref->{'title'}).'"'.','.
   delete($ref->{'lastrevisiondate'}).','.    '"'.delete($ref->{'author'}).'"'.','.
   delete($ref->{'owner'}).','.    '"'.delete($ref->{'subject'}).'"'.','.
   delete($ref->{'copyright'})    '"'.$m2.'"'.','.
   ')';    '"'.delete($ref->{'keywords'}).'"'.','.
     '"'.'current'.'"'.','.
     '"'.delete($ref->{'notes'}).'"'.','.
     '"'.delete($ref->{'abstract'}).'"'.','.
     '"'.delete($ref->{'mime'}).'"'.','.
     '"'.delete($ref->{'language'}).'"'.','.
     '"'.delete($ref->{'creationdate'}).'"'.','.
     '"'.delete($ref->{'lastrevisiondate'}).'"'.','.
     '"'.delete($ref->{'owner'}).'"'.','.
     '"'.delete($ref->{'copyright'}).'"'.')');
     $sth->execute();      $sth->execute();
 }  }
   

Removed from v.1.4  
changed lines
  Added in v.1.12


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