X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=Documentation%2Fmknews.perl;h=510a4e1810558e5a74efdbdd4386bdb81b00644c;hb=6c853f5256f3a324c018a37a9e8a6b9fc8fdc063;hp=965c30c1dcb06888f445d5c3b1303e32553d2f29;hpb=7e782e8ff3ec64500913069a2efb5815fe711a36;p=public-inbox.git diff --git a/Documentation/mknews.perl b/Documentation/mknews.perl index 965c30c1..510a4e18 100755 --- a/Documentation/mknews.perl +++ b/Documentation/mknews.perl @@ -7,6 +7,7 @@ use strict; use PublicInbox::Eml; use PublicInbox::View; +use PublicInbox::Hval qw(fmt_ts); use PublicInbox::MsgTime qw(msg_datestamp); use PublicInbox::MID qw(mids mid_escape); END { $INC{'Plack/Util.pm'} and warn "$0 should not have loaded Plack::Util\n" } @@ -37,7 +38,7 @@ if ($dst eq 'NEWS') { my $ibx = My::MockObject->new( description => 'public-inbox releases', over => undef, - search => 1, # for WwwStream:_html_top + search => 1, # for WwwStream::html_top base_url => "$base_url/", ); $ibx->{-primary_address} = $addr; @@ -91,7 +92,7 @@ sub mime2txt { my $title = $mime->header('Subject'); $title =~ s/^\s*\[\w+\]\s*//g; # [ANNOUNCE] or [ANN] my $dtime = msg_datestamp($mime->header_obj); - $title .= ' - ' . PublicInbox::View::fmt_ts($dtime) . ' UTC'; + $title .= ' - ' . fmt_ts($dtime) . ' UTC'; print $out $title, "\n" or die; my $uline = '=' x length($title); print $out $uline, "\n\n" or die; @@ -103,17 +104,18 @@ sub mime2txt { sub mime2html { my ($out, $eml, $ctx) = @_; - my $smsg = bless {}, 'PublicInbox::Smsg'; + my $smsg = $ctx->{smsg} = bless {}, 'PublicInbox::Smsg'; $smsg->populate($eml); - print $out PublicInbox::View::eml_entry($ctx, $smsg, $eml, 1) or die; + $ctx->{msgs} = [ 1 ]; # for
' or die; + my $www_stream = PublicInbox::WwwStream::init($ctx); + print $out $www_stream->html_top, '' or die; } sub html_end { @@ -131,7 +133,7 @@ sub atom_start { delete $astream->{emit_header}; my $ibx = $ctx->{-inbox}; my $title = PublicInbox::WwwAtomStream::title_tag($ibx->description); - my $updated = PublicInbox::WwwAtomStream::feed_updated(gmtime($mtime)); + my $updated = PublicInbox::WwwAtomStream::feed_updated($mtime); print $out <$mime }, 'PublicInbox::Smsg'; - if (defined(my $str = $astream->feed_entry($smsg))) { + my ($out, $astream, $eml, $ctx) = @_; + my $smsg = bless {}, 'PublicInbox::Smsg'; + $smsg->populate($eml); + if (defined(my $str = $astream->feed_entry($smsg, $eml))) { print $out $str or die; } }