For /$INBOX/$MSGID/ pages, we need to point all nav bar links
../ regardless of whether ->over exists. I've also verified
this doesn't affect /$INBOX/new.html at all.
---
lib/PublicInbox/View.pm | 2 +-
t/plack.t | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm
index 2e5228e1..11a94ba9 100644
--- a/lib/PublicInbox/View.pm
+++ b/lib/PublicInbox/View.pm
@@ -678,7 +678,7 @@ sub _msg_page_prepare_obuf {
$ctx->{chash} = content_hash($eml) if $ctx->{smsg}; # reused MID
$rv .= "<pre\nid=b>"; # anchor for body start
}
- $ctx->{-upfx} = '../' if $have_over;
+ $ctx->{-upfx} = '../';
my @title; # (Subject[0], From[0])
for my $v ($eml->header('From')) {
my @n = PublicInbox::Address::names($v);
diff --git a/t/plack.t b/t/plack.t
index 32209c7d..3ba2e6fb 100644
--- a/t/plack.t
+++ b/t/plack.t
@@ -1,5 +1,5 @@
#!perl -w
-# Copyright (C) 2014-2021 all contributors <[email protected]>
+# Copyright (C) all contributors <[email protected]>
# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
use strict;
use v5.10.1;
@@ -154,6 +154,7 @@ my $c1 = sub {
$res = $cb->(GET($pfx . $path));
is(200, $res->code, "success for $path");
my $html = $res->content;
+ like($html, qr!\bhref="\Q../_/text/help/"!, 'help available');
like($html, qr!<title>hihi - Me</title>!, 'HTML returned');
like($html, qr!<a\nhref=raw!s, 'raw link present');
like($html, qr!> quoted text!s, 'quoted text inline');