We only need XHTML-compatibility inside Atom feeds, as
anecdotally, feed readers are stricter than normal browsers and
some do not support HTML, only XHTML. So we will continue to
accomodate them. However we favor HTML elsewhere since it
tends to be smaller than the equivalent well-formed XHTML.
if ($footer) {
my $list_footer = $ctx->{footer};
$footer .= "\n\n" . $list_footer if $list_footer;
if ($footer) {
my $list_footer = $ctx->{footer};
$footer .= "\n\n" . $list_footer if $list_footer;
- $footer = "<hr /><pre>$footer</pre>";
+ $footer = "<hr><pre>$footer</pre>";
}
$fh->write("$footer</body></html>");
$fh->close;
}
$fh->write("$footer</body></html>");
$fh->close;
my $cb;
if ($err) {
$code = 400;
my $cb;
if ($err) {
$code = 400;
- $ctx->{-html_tip} = '<pre>'.err_txt($ctx, $err).'</pre><hr />';
+ $ctx->{-html_tip} = '<pre>'.err_txt($ctx, $err).'</pre><hr>';
$cb = *noop;
} elsif ($total == 0) {
$code = 404;
$cb = *noop;
} elsif ($total == 0) {
$code = 404;
- $ctx->{-html_tip} = "<pre>\n[No results found]</pre><hr />";
+ $ctx->{-html_tip} = "<pre>\n[No results found]</pre><hr>";
$cb = *noop;
} else {
my $x = $q->{x};
$cb = *noop;
} else {
my $x = $q->{x};
my $o = $q->{o};
my $end = $o + $nr;
my $beg = $o + 1;
my $o = $q->{o};
my $end = $o + $nr;
my $beg = $o + 1;
- my $rv = "</pre><hr /><pre>Results $beg-$end of $total";
+ my $rv = "</pre><hr><pre>Results $beg-$end of $total";
my $n = $o + $LIM;
if ($n < $total) {
my $n = $o + $LIM;
if ($n < $total) {
my ($self, $code, $title, @body) = @_;
[ $code, [ @CT_HTML ], [
"<html><head><title>$title</title></head><body><pre>".
my ($self, $code, $title, @body) = @_;
[ $code, [ @CT_HTML ], [
"<html><head><title>$title</title></head><body><pre>".
- join("\n", "<b>$title</b>\n", @body) . '</pre><hr />'.
+ join("\n", "<b>$title</b>\n", @body) . '</pre><hr>'.
"<pre>This page is available under AGPL-3.0+\n" .
"git clone $self->{code_url}\n" .
qq(Email $self->{contact} if you have any questions).
"<pre>This page is available under AGPL-3.0+\n" .
"git clone $self->{code_url}\n" .
qq(Email $self->{contact} if you have any questions).
PublicInbox::WwwStream->response($ctx, 200, sub {
my ($nr, undef) = @_;
if ($nr == 1) {
PublicInbox::WwwStream->response($ctx, 200, sub {
my ($nr, undef) = @_;
if ($nr == 1) {
- $tip . multipart_text_as_html($mime, '') .
- '</pre><hr />'
+ $tip . multipart_text_as_html($mime, '') . '</pre><hr>'
} elsif ($nr == 2) {
# fake an EOF if generating the footer fails;
# we want to at least show the message if something
} elsif ($nr == 2) {
# fake an EOF if generating the footer fails;
# we want to at least show the message if something
my $msgs = load_results($sres);
my $nr = $sres->{total};
return missing_thread($ctx) if $nr == 0;
my $msgs = load_results($sres);
my $nr = $sres->{total};
return missing_thread($ctx) if $nr == 0;
- my $skel = '<hr /><pre>';
+ my $skel = '<hr><pre>';
$skel .= $nr == 1 ? 'only message in thread' : 'end of thread';
$skel .= ", back to <a\nhref=\"../../\">index</a>";
$skel .= "\n<a\nid=t>$nr+ messages in thread:</a> (download: ";
$skel .= $nr == 1 ? 'only message in thread' : 'end of thread';
$skel .= ", back to <a\nhref=\"../../\">index</a>";
$skel .= "\n<a\nid=t>$nr+ messages in thread:</a> (download: ";