]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/SearchView.pm
www: improve visibility of coderepos
[public-inbox.git] / lib / PublicInbox / SearchView.pm
index f568f31c0f30f1eb851aa63c0cbc2d3c22dc9053..2d0b8e13f24c8b4aecc7f6ad73652323b4465c7c 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2015-2020 all contributors <meta@public-inbox.org>
+# Copyright (C) 2015-2021 all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 #
 # Displays search results for the web interface
@@ -14,7 +14,7 @@ use PublicInbox::WwwAtomStream;
 use PublicInbox::WwwStream qw(html_oneshot);
 use PublicInbox::SearchThread;
 use PublicInbox::SearchQuery;
-use PublicInbox::Search;
+use PublicInbox::Search qw(get_pct);
 my %rmap_inc;
 
 sub mbox_results {
@@ -34,7 +34,6 @@ sub sres_top_html {
                return PublicInbox::WWW::need($ctx, 'Search');
        my $q = PublicInbox::SearchQuery->new($ctx->{qp});
        my $x = $q->{x};
-       my $query = $q->{'q'};
        my $o = $q->{o};
        my $asc;
        if ($o < 0) {
@@ -48,12 +47,14 @@ sub sres_top_html {
                limit => $q->{l},
                offset => $o,
                relevance => $q->{r},
-               thread => $q->{t},
+               threads => $q->{t},
                asc => $asc,
        };
        my ($mset, $total, $err, $html);
 retry:
        eval {
+               my $query = $q->{'q'};
+               $srch->query_approxidate($ctx->{ibx}->git, $query);
                $mset = $srch->mset($query, $opts);
                $total = $mset->get_matches_estimated;
        };
@@ -276,14 +277,6 @@ sub sort_relevance {
        } @{$_[0]} ]
 }
 
-sub get_pct ($) {
-       # Capped at "99%" since "100%" takes an extra column in the
-       # thread skeleton view.  <xapian/mset.h> says the value isn't
-       # very meaningful, anyways.
-       my $n = $_[0]->get_percent;
-       $n > 99 ? 99 : $n;
-}
-
 sub mset_thread {
        my ($ctx, $mset, $q) = @_;
        my $ibx = $ctx->{ibx};