From 6f9221f76521c8c55356a744bd31dc1fee753b93 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 5 Sep 2015 07:02:14 +0000 Subject: searchview: factor out dump_mset subroutine We'll be moving atom and thread display support inline and reducing endpoints. Maybe it makes sense, maybe not. --- lib/PublicInbox/SearchView.pm | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) (limited to 'lib') diff --git a/lib/PublicInbox/SearchView.pm b/lib/PublicInbox/SearchView.pm index 4d49d250..960049f8 100644 --- a/lib/PublicInbox/SearchView.pm +++ b/lib/PublicInbox/SearchView.pm @@ -49,23 +49,7 @@ sub sres_top_html { } $res .= "]\n\n"; - my $pad = length("$total"); - my $pfx = ' ' x $pad; - foreach my $m ($mset->items) { - my $rank = sprintf("%${pad}d", $m->get_rank + 1); - my $pct = $m->get_percent; - my $smsg = $m->get_document; - $smsg = PublicInbox::SearchMsg->load_doc($smsg); - my $s = PublicInbox::Hval->new_oneline($smsg->subject); - my $f = $smsg->from_name; - $f = PublicInbox::Hval->new_oneline($f)->as_html; - my $d = strftime('%Y-%m-%d %H:%M', gmtime($smsg->ts)); - my $mid = $smsg->mid; - $mid = PublicInbox::Hval->new_msgid($mid)->as_href; - $res .= qq{$rank. }. - $s->as_html . "\n"; - $res .= "$pfx - by $f @ $d UTC [$pct%]\n\n"; - } + dump_mset(\$res, $mset); my $nr = scalar $mset->items; my $end = $o + $nr; my $beg = $o + 1; @@ -86,17 +70,32 @@ sub sres_top_html { $qp .= "&r" if $r; $res .= qq{prev}; } - $res .= "\n\n".$foot; + $res .= "\n\n" . $foot; } $res .= ""; [200, ['Content-Type'=>'text/html; charset=UTF-8'], [$res]]; } -sub sres_top_atom { -} +sub dump_mset { + my ($res, $mset) = @_; -sub sres_top_thread { + my $total = $mset->get_matches_estimated; + my $pad = length("$total"); + my $pfx = ' ' x $pad; + foreach my $m ($mset->items) { + my $rank = sprintf("%${pad}d", $m->get_rank + 1); + my $pct = $m->get_percent; + my $smsg = PublicInbox::SearchMsg->load_doc($m->get_document); + my $s = PublicInbox::Hval->new_oneline($smsg->subject); + my $f = $smsg->from_name; + $f = PublicInbox::Hval->new_oneline($f)->as_html; + my $d = strftime('%Y-%m-%d %H:%M', gmtime($smsg->ts)); + my $mid = PublicInbox::Hval->new_msgid($smsg->mid)->as_href; + $$res .= qq{$rank. }. + $s->as_html . "\n"; + $$res .= "$pfx - by $f @ $d UTC [$pct%]\n\n"; + } } 1; -- cgit v1.2.3-24-ge0c7