/[nn.old]/trunk/search/nn-swish.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/search/nn-swish.cgi

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

revision 74 by dpavlin, Tue Jun 25 15:06:47 2002 UTC revision 78 by dpavlin, Wed Jun 26 12:14:54 2002 UTC
# Line 11  require Unicode::Map8; Line 11  require Unicode::Map8;
11  my $dir='/home/dpavlin/nn/swish';  my $dir='/home/dpavlin/nn/swish';
12    
13  my $hits=0;  my $hits=0;
14    my $max_hits=100;
15    
16    my %labels = (100=>' 100', 200=>' 200', 500=>' 500', 0=>'neograničeno');
17    
18  print header(-charset=>'iso-8859-2'),start_html(-title=>'NN pretrazivanje',-lang=>'hr'),start_form;  print header(-charset=>'iso-8859-2'),start_html(-title=>'NN pretrazivanje',-lang=>'hr'),start_form;
19  print "Potra¾i zakone sa riječima: ",textfield('search');  print "Potra¾i ",popup_menu(-name=>'max_hits',-values=>[ sort keys %labels ],-labels=>\%labels,-default=>$max_hits)," zakona sa riječima: ",textfield('search');
20  print submit(-value=>'prika¾i');  print submit(-value=>'prika¾i');
21  print end_form,hr;  print end_form,hr;
22    
23  if (param('search')) {  if (param('search')) {
24    
25          my $s=param('search');          my $s;
26            # re-write query from +/- to and/and not
27            foreach (split(/\s+/,param('search'))) {
28                    if (m/^([+-])(\S+)/) {
29                            $s.= ($s) ? "and " : "";
30                            $s.="not " if ($1 eq "-");
31                            $s.="$2 ";
32                    } else {
33                            $s .= "$_ ";
34                    }
35            }
36          $s=~tr/ššžčꊩŽČĘ/¹š¾čę©Š®ČĘ/;  # 1250 -> iso8859-2          $s=~tr/ššžčꊩŽČĘ/¹š¾čę©Š®ČĘ/;  # 1250 -> iso8859-2
37          $s=~tr/¹©šŠčČęĘ¾®/sSdDcCcCzZ/;          $s=~tr/¹©šŠčČęĘ¾®/sSdDcCcCzZ/;
38    
# Line 41  if (param('search')) { Line 54  if (param('search')) {
54  #                       my @fields = $hit->field_names;  #                       my @fields = $hit->field_names;
55  #                       print "Field '$_' = '", $hit->$_, "'<br>\n" for sort @fields;  #                       print "Field '$_' = '", $hit->$_, "'<br>\n" for sort @fields;
56                  },                  },
57                    maxhits => param('max_hits') || $max_hits,
58          );          );
59    
60          die $SWISH::errstr unless $sh;          die $SWISH::errstr unless $sh;
# Line 48  if (param('search')) { Line 62  if (param('search')) {
62          $hits = $sh->query("naslov_czs=($s)");          $hits = $sh->query("naslov_czs=($s)");
63    
64          if ($hits > 0) {          if ($hits > 0) {
65                  print p,hr,"Našeno je $hits zakona...";                  print p,hr,"Prikazujem $hits zakona (maks. ",param('max_hits') || $max_hits,")... <small>($s)</small>";
66          } else {          } else {
67                  print p,"Nije našen niti jedan zakon... (",$sh->errstr,")";                  print p,"Nije našen niti jedan zakon... <small>($s, ",$sh->errstr,")</small>";
68          }          }
69  } else {  } else {
70          print p('Kod pretra¾ivanja pretra¾ivač pronalazi sve zakone u kojima se pojavljuju <b>sve upisanje riječi</b>.',br,'Ako ispred riječi upi¹ete minus (-) neęe se prikazivati zakoni koji imaju takvu riječ. Npr. <tt>+kava +zakon -dopunama</tt>');          print p('Kod pretra¾ivanja pretra¾ivač pronalazi sve zakone u kojima se pojavljuju <b>sve upisanje riječi</b>.',br,'Ako ispred riječi upi¹ete minus (-) neęe se prikazivati zakoni koji imaju takvu riječ. Npr. <tt>+kava +zakon -dopunama</tt>');

Legend:
Removed from v.74  
changed lines
  Added in v.78

  ViewVC Help
Powered by ViewVC 1.1.26