/[webpac2]/trunk/lib/WebPAC/Output/KinoSearch.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/WebPAC/Output/KinoSearch.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 922 by dpavlin, Tue Oct 30 23:36:49 2007 UTC revision 949 by dpavlin, Thu Nov 1 00:16:48 2007 UTC
# Line 7  use base qw/WebPAC::Common WebPAC::Outpu Line 7  use base qw/WebPAC::Common WebPAC::Outpu
7  __PACKAGE__->mk_accessors(qw(  __PACKAGE__->mk_accessors(qw(
8          path          path
9          database          database
10            input
11          encoding          encoding
12          clean          clean
13    
# Line 15  __PACKAGE__->mk_accessors(qw( Line 16  __PACKAGE__->mk_accessors(qw(
16    
17  use KinoSearch::Simple;  use KinoSearch::Simple;
18  use File::Path;  use File::Path;
19  use Encode qw/from_to/;  use Encode qw/decode/;
20  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
21  use Storable;  use Storable;
22    
# Line 90  sub init { Line 91  sub init {
91    
92          $self->encoding( 'ISO-8859-2' ) unless $self->encoding;          $self->encoding( 'ISO-8859-2' ) unless $self->encoding;
93    
94            ## FIXME we shouldn't re-create whole KinoSearch index every time!
95            $self->clean( 1 );
96    
97          if ( ! -e $self->path ) {          if ( ! -e $self->path ) {
98                  mkpath $self->path || $log->logdie("can't create ", $self->path,": $!");                  mkpath $self->path || $log->logdie("can't create ", $self->path,": $!");
99                  $log->info("created ", $self->path);                  $log->info("created ", $self->path);
# Line 132  sub add { Line 136  sub add {
136          $log->logdie("need id") unless defined $id;          $log->logdie("need id") unless defined $id;
137          $log->logdie("need ds") unless $ds;          $log->logdie("need ds") unless $ds;
138    
139          $log->debug("id: $id ds = ",dump($ds));          $log->debug("id: $id ds = ", sub { dump($ds) });
140    
141          my $hash = $self->ds_to_hash( $ds, 'search' ) || return;          my $hash = $self->ds_to_hash( $ds, 'search' ) || return;
142    
143            $hash->{id}       ||= $id;
144          $hash->{database} ||= $self->database;          $hash->{database} ||= $self->database;
145          $hash->{id} ||= $id;          $hash->{input}    ||= $self->input;
146    
147            foreach my $f ( keys %$hash ) {
148                    if ( ref($hash->{$f}) eq 'ARRAY' ) {
149                            $hash->{$f} = join(' <*> ', @{ $hash->{$f} });
150                    }
151    #               $hash->{$f} = decode( $self->encoding, $hash->{$f} );
152            }
153    
154          $log->debug("add( $id, ", sub { dump($ds) }," ) => ", sub { dump( $hash ) });          $log->debug("add( $id, ", sub { dump($ds) }," ) => ", sub { dump( $hash ) });
155    

Legend:
Removed from v.922  
changed lines
  Added in v.949

  ViewVC Help
Powered by ViewVC 1.1.26