/[webpac2]/trunk/vhost/webpac2.cgi
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/vhost/webpac2.cgi

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

revision 1155 by dpavlin, Sat Apr 25 11:00:22 2009 UTC revision 1157 by dpavlin, Sat Apr 25 11:58:23 2009 UTC
# Line 116  foreach ( split(/[\n\r]+/, $select_attr_ Line 116  foreach ( split(/[\n\r]+/, $select_attr_
116    
117  warn "## attr_operator = ", dump( $attr_operator );  warn "## attr_operator = ", dump( $attr_operator );
118    
119    my $only_input;
120    
121    foreach ( @{ $db->{input} } ) {
122            my $input = $_->{name} || die "no name in ",dump( $_ );
123            if ( ! $only_input->{'-labels'}->{$input} ) {
124                    push @{ $only_input->{'-values'} }, $input;
125                            $only_input->{'-labels'}->{$input} = $_->{description} || $input;
126            }
127    }
128    
129    warn "## only_input = ", dump( $only_input );
130    
131  print  print
132          start_html(          start_html(
133                  -title => $db->{name},                  -title => $db->{name},
# Line 139  print Line 151  print
151                  h2( 'Select input' ),                  h2( 'Select input' ),
152                  checkbox_group(                  checkbox_group(
153                          -name => 'only_input',                          -name => 'only_input',
154                          -values => [ map { $_->{name} } @{ $db->{input} } ],                          %$only_input,
155                          -linebreak=> 'true',                          -linebreak=> 'true',
156                  ),                  ),
157                  qq|</div>|,                  qq|</div>|,
# Line 165  if ( my $search = param('search') ) { Line 177  if ( my $search = param('search') ) {
177    
178          dump_yaml( 'pager', $pager );          dump_yaml( 'pager', $pager );
179    
180          my @search = ();          my @search = ();
   
181          if ( $search =~ m{(=|"|AND|OR)} ) {          if ( $search =~ m{(=|"|AND|OR)} ) {
182                  push @search, $search;                  push @search, $search;
183          } elsif ( my $op = param('attr_operator') ) {          } elsif ( my $op = param('attr_operator') ) {
# Line 189  if ( my $search = param('search') ) { Line 200  if ( my $search = param('search') ) {
200                  $v =~ s{(\s*)(\S+)}{rewrite($1,$2)}ge;                  $v =~ s{(\s*)(\S+)}{rewrite($1,$2)}ge;
201    
202                  push @search, $v;                  push @search, $v;
203            
204                    my @only_input = param('only_input');
205                    push @search, '(' . join(') OR (', map { "input=$_" } @only_input) . ')' if @only_input;
206          } else {          } else {
207                  push @search, "xml=$search";                  push @search, "xml=$search";
208          }          }
209    
210          my @only_input = param('only_input');          my $q = '(' . join(') AND (', @search) . ')';
   
         push @search, '(' . join(') or (', @only_input) . ')' if @only_input;  
   
         my $q = '(' . join(') and (', @search) . ')';  
211          $q =~ s{\(\((.+)\)\)}{($1)};          $q =~ s{\(\((.+)\)\)}{($1)};
212          warn "# query: $q\n";          warn "# query: $q\n";
213          my $swish_results = $swish->query( $q );          my $swish_results = $swish->query( $q );

Legend:
Removed from v.1155  
changed lines
  Added in v.1157

  ViewVC Help
Powered by ViewVC 1.1.26