From f6835e9f41767954aba54cd478132407a3e48617 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 31 Aug 2014 02:52:27 +0000 Subject: view: show quotes in index if parent is too old It's helpful to show context if a message does not appear on the current index page. --- lib/PublicInbox/View.pm | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index d1bb9356..c1a5fbb1 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -76,6 +76,13 @@ sub index_entry { $rv .= "$pfx$subj $from - $ts\n\n"; + my $irp = $header_obj->header_raw('In-Reply-To'); + my ($anchor_idx, $anchor); + if (defined $irp) { + $anchor_idx = anchor_for($irp); + $anchor = $seen->{$anchor_idx}; + } + # scan through all parts, looking for displayable text $mime->walk_parts(sub { my ($part) = @_; @@ -91,8 +98,11 @@ sub index_entry { my $s = ascii_html($enc->decode($part->body)); - # drop quotes, including the "so-and-so wrote:" line - $s =~ s/(?:^[^\n]*:\s*\n)?(?:^>[^\n]*\n)+(?:^\s*\n)?//mg; + if (defined $anchor) { + # drop quotes, including the "so-and-so wrote:" line + $s =~ s/(?:^[^\n]*:\s*\n)? + (?:^>[^\n]*\n)+(?:^\s*\n)?//mgx; + } # Drop signatures $s =~ s/^-- \n.*\z//ms; @@ -119,10 +129,7 @@ sub index_entry { $rv .= "raw "; $rv .= html_footer($mime, 0); - my $irp = $header_obj->header_raw('In-Reply-To'); if (defined $irp) { - my $anchor_idx = anchor_for($irp); - my $anchor = $seen->{$anchor_idx}; unless (defined $anchor) { my $v = PublicInbox::Hval->new_msgid($irp); my $html = $v->as_html; -- cgit v1.2.3-24-ge0c7