From: Eric Wong <e@80x24.org>
Date: Sat, 5 Sep 2015 07:02:14 +0000 (+0000)
Subject: searchview: factor out dump_mset subroutine
X-Git-Tag: v1.0.0~905
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=6f9221f76521c8c55356a744bd31dc1fee753b93;p=public-inbox.git

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.
---

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. <b><a\nhref="$mid/t/#u">}.
-				$s->as_html . "</a></b>\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 .= "&amp;r" if $r;
 			$res .= qq{<a\nhref="?$qp">prev</a>};
 		}
-		$res .= "\n\n".$foot;
+		$res .= "\n\n" . $foot;
 	}
 
 	$res .= "</pre></body></html>";
 	[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. <b><a\nhref="$mid/t/#u">}.
+			$s->as_html . "</a></b>\n";
+		$$res .= "$pfx  - by $f @ $d UTC [$pct%]\n\n";
+	}
 }
 
 1;