summaryrefslogtreecommitdiff
path: root/bucky2/cgi-bin/api/search
diff options
context:
space:
mode:
authorJules Laplace <carbon@melanarchy.org>2013-08-02 17:23:25 -0500
committerJules Laplace <carbon@melanarchy.org>2013-08-02 17:23:25 -0500
commite76b691e78e273226cba9284cb8cd22a423319ed (patch)
treea58d22f69869fe2bf3885f81bdda4952f87ff6d7 /bucky2/cgi-bin/api/search
parent753f60c7d4769fa72d3b910e491f37db6f130898 (diff)
bucky2
Diffstat (limited to 'bucky2/cgi-bin/api/search')
-rwxr-xr-xbucky2/cgi-bin/api/search40
1 files changed, 40 insertions, 0 deletions
diff --git a/bucky2/cgi-bin/api/search b/bucky2/cgi-bin/api/search
new file mode 100755
index 0000000..2bebda8
--- /dev/null
+++ b/bucky2/cgi-bin/api/search
@@ -0,0 +1,40 @@
+#!/usr/bin/perl
+
+use lib "../../lib";
+use Bucky;
+use Bucky::Session;
+use Bucky::Search;
+my $bucky = new Bucky;
+my $session = new Bucky::Session;
+my $q = $session->param('q');
+
+print "Content-type: text/plain\n\n";
+
+if (length $q)
+ {
+ my $search = new Bucky::Search;
+ my $results = $search->search_light($q, 0, 40);
+ foreach my $result (@{$results->{'results'}})
+ {
+ my $thread = $results->{'threads'}->{ $result->{'thread'} };
+ my $comment = $results->{'comments'}->{ $result->{'comment'} };
+ my $file = $results->{'files'}->{ $result->{'file'} };
+ my $z_thread = $thread->{'id'};
+ my $z_title = $search->bold_terms( $thread->{'title'}, $terms);
+ my $z_file = $file->{'id'};
+ my $z_subtitle = $file->{'filename'};
+ $z_subtitle =~ s/[^a-zA-Z0-9 ()\.]/ /g;
+ $z_subtitle =~ s/_/ /g;
+ $z_subtitle =~ s/\s+/ /g;
+ $z_subtitle =~ s/^\s//;
+ $z_subtitle =~ s/\s$//;
+ print join "\t", $z_thread, $z_title, $z_subtitle, $z_file;
+ print "\n";
+ }
+ $search->log_query($query, $total);
+ }
+else
+ {
+ print "\n";
+ }
+1;