about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-07-05 23:27:22 +0000
committerEric Wong <e@yhbt.net>2020-07-06 20:01:15 +0000
commitdda6cc91f8fbaaac187366957be6b828496e12f8 (patch)
tree33e997566998b6355a1bb84537059a58bf2d9c68
parentf82c96666b5d51b426f227578112ba3a4fde0538 (diff)
downloadpublic-inbox-dda6cc91f8fbaaac187366957be6b828496e12f8.tar.gz
It'll give us a nicer HTML header and footer.
-rw-r--r--lib/PublicInbox/WWW.pm9
-rw-r--r--t/plack.t4
2 files changed, 8 insertions, 5 deletions
diff --git a/lib/PublicInbox/WWW.pm b/lib/PublicInbox/WWW.pm
index 289d0ce4..e4ad515a 100644
--- a/lib/PublicInbox/WWW.pm
+++ b/lib/PublicInbox/WWW.pm
@@ -322,12 +322,11 @@ sub get_altid_dump {
 
 sub need {
         my ($ctx, $extra) = @_;
-        my $msg = <<EOF;
-<html><head><title>$extra not available for this
-public-inbox</title><body><pre>$extra is not available for this public-inbox
-<a href="../">Return to index</a></pre></body></html>
+        require PublicInbox::WwwStream;
+        PublicInbox::WwwStream::html_oneshot($ctx, 501, \<<EOF);
+<pre>$extra is not available for this public-inbox
+<a\nhref="../">Return to index</a></pre>
 EOF
-        [ 501, [ 'Content-Type' => 'text/html; charset=UTF-8' ], [ $msg ] ];
 }
 
 # /$INBOX/$MESSAGE_ID/t.mbox           -> thread as mbox
diff --git a/t/plack.t b/t/plack.t
index 37a6b394..4b830a21 100644
--- a/t/plack.t
+++ b/t/plack.t
@@ -209,6 +209,10 @@ test_psgi($app, sub {
         my $res = $cb->(GET($pfx . '/blah@example.com/raw'));
         is(200, $res->code, 'success response received for /*/raw');
         like($res->content, qr!^From !sm, "mbox returned");
+
+        $res = $cb->(GET($pfx . '/blah@example.com/t.mbox.gz'));
+        is(501, $res->code, '501 when overview missing');
+        like($res->content, qr!\bOverview\b!, 'overview omission noted');
 });
 
 # legacy redirects