Skip to content

Instantly share code, notes, and snippets.

@edenc
Created March 4, 2013 14:23
Show Gist options
  • Select an option

  • Save edenc/5082547 to your computer and use it in GitHub Desktop.

Select an option

Save edenc/5082547 to your computer and use it in GitHub Desktop.
sub render_template {
my ( $self, $app ) = @_;
sub {
my ($env) = @_;
my $res = $app->($env);
return $res unless ref( $res->[2] ) eq 'ARRAY';
my $content = $res->[2][0];
my $vars = $env->{'pendant.doc'} || {};
my $rendered;
my $tt = $self->_tt;
my $request;
my $r_builder = sub { $request ||= Plack::Request->new($env) }
$tt->process( 'page', { %$vars, content => $content, request => $r_builder },
\$rendered ) or die $tt->error;
$res->[2][0] = $rendered;
return $res;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment