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

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

revision 1.1 by dpavlin, Wed Jun 19 15:27:28 2002 UTC revision 1.5 by dpavlin, Tue Jun 25 15:06:47 2002 UTC
# Line 5  use CGI qw/:standard -no_xhtml/; Line 5  use CGI qw/:standard -no_xhtml/;
5  use Text::Query;  use Text::Query;
6  use CGI::Carp qw(fatalsToBrowser);  use CGI::Carp qw(fatalsToBrowser);
7  use SWISH;  use SWISH;
8    use Unicode::String qw(utf8 utf16);
9    require Unicode::Map8;
10    
11  my $dir='/home/dpavlin/nn/swish';  my $dir='/home/dpavlin/nn/swish';
12    
13  my $hits=0;  my $hits=0;
14    
15  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;
16  print "Prikažim zakone sa riječima: ",textfield('search');  print "Potraži zakone sa riječima: ",textfield('search');
17  print submit(-value=>'prikaži');  print submit(-value=>'prikaži');
18  print end_form,hr;  print end_form,hr;
19    
# Line 21  if (param('search')) { Line 23  if (param('search')) {
23          $s=~tr/šđžčćŠĐŽČĆ/šđžčćŠĐŽČĆ/;  # 1250 -> iso8859-2          $s=~tr/šđžčćŠĐŽČĆ/šđžčćŠĐŽČĆ/;  # 1250 -> iso8859-2
24          $s=~tr/šŠđĐčČćĆžŽ/sSdDcCcCzZ/;          $s=~tr/šŠđĐčČćĆžŽ/sSdDcCcCzZ/;
25    
26            my $l2_map = Unicode::Map8->new("ISO-8859-2") || die;
27            my $us = Unicode::String->new();
28    
29          my $sh = SWISH->connect('Fork',          my $sh = SWISH->connect('Fork',
30                  prog     => "$dir/swish-e",                  prog     => "$dir/swish-e",
31                  indexes  => "$dir/nn.index",                  indexes  => "$dir/nn.index",
32                  results  => sub { print $_[1]->as_string,"\n" },                  properties  => [qw/god br nr/],
33                    results  => sub {
34                            my ($sh,$hit) = @_;
35    
36                            $us->utf8($hit->swishtitle);
37    
38                            print "<a href=\"",$hit->swishdocpath,"\"><tt>NN",$hit->god,"/",$hit->br,"</a> ",$hit->nr," </tt>",$l2_map->to8($us->utf16),"</a> [",$hit->swishrank,"]<br>\n";
39    
40    #                       print $_[1]->as_string,"<br>\n";
41    #                       my @fields = $hit->field_names;
42    #                       print "Field '$_' = '", $hit->$_, "'<br>\n" for sort @fields;
43                    },
44          );          );
45    
46          die $SWISH::errstr unless $sh;          die $SWISH::errstr unless $sh;
47    
48          $hits = $sh->query($s);          $hits = $sh->query("naslov_czs=($s)");
49    
50          if ($hits > 0) {          if ($hits > 0) {
51                  print p,hr,"Nađeno je $hits zakona...";                  print p,hr,"Nađeno je $hits zakona...";
# Line 37  if (param('search')) { Line 53  if (param('search')) {
53                  print p,"Nije nađen niti jedan zakon... (",$sh->errstr,")";                  print p,"Nije nađen niti jedan zakon... (",$sh->errstr,")";
54          }          }
55  } else {  } else {
56          print p('U jednostavnom pretraživanju pretraživač pronalazi sve zakone u kojima se pojavljuje <b>bilo koja</b> od tih riječi. Da bi našli sve zakone u kojima se pojavljuju <b>sve upisane riječi</b>, upišite ispred svake riječi znak plus (+). Npr: <tt>+zakon +kava</tt>',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>');
57          print p("Možete pročitati i <a href=\"http://www.rot13.org/~dpavlin/nn.html\">članak</a> o tome kako je ovaj pretraživač napravljen i zašto.");          print p("Možete pročitati i <a href=\"http://www.rot13.org/~dpavlin/nn.html\">članak</a> o tome kako je ovaj pretraživač napravljen i zašto.");
58  }  }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.5

  ViewVC Help
Powered by ViewVC 1.1.26