Changeset 23
- Timestamp:
- 02/05/06 11:40:36
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/plagger/lib/Plagger/Plugin/Publish/PSP.pm
r19 r23 9 9 $context->register_hook( 10 10 $self, 11 'publish.notify' => \¬ify, 11 'publish.notify' => \¬ify, 12 'publish.finalize' => \&finalize, 12 13 ); 13 14 } … … 16 17 my($self, $context, $feed) = @_; 17 18 18 my @items = $feed->entries; 19 $self->store_items_as_html($context, $feed, \@items); 19 $feed->{title} = $feed->{title} || '(no-title)'; 20 $context->log(warn => "Store $feed->{title}"); 21 push @{ $self->{__feeds} }, $feed; 20 22 } 21 23 22 sub store_items_as_html {23 my($self, $context, $feed, $items) = @_;24 $feed->{title} = $feed->{title} || '(no-title)';25 my $body = $self->templatize($context, $feed, $items);26 $self->do_store_item($context, $feed, $body);27 }28 24 29 sub do_store_item{30 my($self, $context , $feed, $body) = @_;25 sub finalize { 26 my($self, $context) = @_; 31 27 28 my $body= $self->templatize($context, $self->{__feeds}); 32 29 my $cfg = $self->conf; 33 30 my $file= $cfg->{output_file}; 34 $context->log(warn => "Store $feed->{title} to $file");35 31 36 32 open(FH, ">:utf8", $file) or die $!; … … 40 36 41 37 sub templatize { 42 my($self, $context, $feed , $items) = @_;38 my($self, $context, $feeds) = @_; 43 39 my $tt = $context->template(); 44 $tt->process('psp_notify.tt', { 45 feed => $feed, 46 items => $items, 47 cfg => $self->conf, 40 $tt->process('psp.tt', { 41 feeds => $feeds, 48 42 utf8 => sub { encode("utf-8", $_[0]) } 49 43 }, \my $out) or die $tt->error;
