X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FWwwText.pm;h=db5060eaa460bf002c4377b93eb1b14c1cd5c7ba;hb=5c8909925072804901e9c3b45bbf25446d379e7b;hp=2ed7d0d2ee09d8ba2d4c28282de08bdde9503430;hpb=a43ca1d19f3b748d6abd62c9ce8b159f1255edfb;p=public-inbox.git diff --git a/lib/PublicInbox/WwwText.pm b/lib/PublicInbox/WwwText.pm index 2ed7d0d2..db5060ea 100644 --- a/lib/PublicInbox/WwwText.pm +++ b/lib/PublicInbox/WwwText.pm @@ -1,11 +1,10 @@ -# Copyright (C) 2016-2020 all contributors +# Copyright (C) 2016-2021 all contributors # License: AGPL-3.0+ # used for displaying help texts and other non-mail content package PublicInbox::WwwText; use strict; -use warnings; -use bytes (); # only for bytes::length +use v5.10.1; use PublicInbox::Linkify; use PublicInbox::WwwStream; use PublicInbox::Hval qw(ascii_html); @@ -43,13 +42,13 @@ sub get_text { $txt = $gzf->translate($txt); $txt .= $gzf->zflush; } - $hdr->[3] = bytes::length($txt); + $hdr->[3] = length($txt); return [ $code, $hdr, [ $txt ] ] } # enforce trailing slash for "wget -r" compatibility if (!$have_tslash && $code == 200) { - my $url = $ctx->{-inbox}->base_url($env); + my $url = $ctx->{ibx}->base_url($env); $url .= "_/text/$key/"; return [ 302, [ 'Content-Type', 'text/plain', @@ -100,7 +99,7 @@ sub _srch_prefix ($$) { sub _colors_help ($$) { my ($ctx, $txt) = @_; - my $ibx = $ctx->{-inbox}; + my $ibx = $ctx->{ibx}; my $env = $ctx->{env}; my $base_url = $ibx->base_url($env); $$txt .= "color customization for $base_url\n"; @@ -135,7 +134,7 @@ sub URI_PATH () { '^A-Za-z0-9\-\._~/' } # n.b. this is a perfect candidate for memoization sub inbox_config ($$$) { my ($ctx, $hdr, $txt) = @_; - my $ibx = $ctx->{-inbox}; + my $ibx = $ctx->{ibx}; push @$hdr, 'Content-Disposition', 'inline; filename=inbox.config'; my $name = dq_escape($ibx->{name}); my $inboxdir = '/path/to/top-level-inbox'; @@ -165,7 +164,7 @@ EOS ; gzip(1), and sqlite3(1) as documented: EOF for (sort keys %$altid_map) { - $$txt .= "\t;\tcurl -XPOST $base_url$_.sql.gz | \\\n" . + $$txt .= "\t;\tcurl -d '' $base_url$_.sql.gz | \\\n" . "\t;\tgzip -dc | \\\n" . "\t;\tsqlite3 $inboxdir/$_.sqlite3\n"; $$txt .= "\taltid = serial:$_:file=$_.sqlite3\n"; @@ -189,9 +188,9 @@ EOF ; line number ranges in `[PATCH]' emails link to /$INBOX_NAME/$OID/s/, ; an HTTP endpoint which reconstructs git blobs via git-apply(1). EOF - my $pi_config = $ctx->{www}->{pi_config}; + my $pi_cfg = $ctx->{www}->{pi_cfg}; for my $cr_name (@$cr) { - my $urls = $pi_config->{"coderepo.$cr_name.cgiturl"}; + my $urls = $pi_cfg->get_all("coderepo.$cr_name.cgiturl"); my $path = "/path/to/$cr_name"; $cr_name = dq_escape($cr_name); @@ -221,7 +220,7 @@ sub _default_text ($$$$) { return inbox_config($ctx, $hdr, $txt) if $key eq 'config'; return if $key ne 'help'; # TODO more keys? - my $ibx = $ctx->{-inbox}; + my $ibx = $ctx->{ibx}; my $base_url = $ibx->base_url($ctx->{env}); $$txt .= "public-inbox help for $base_url\n"; $$txt .= <search; + my $srch = $ibx->isrch; if ($srch) { $$txt .= <