Compare commits
7
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
380cea8aa2 | ||
|
|
9217818ad2 | ||
|
|
02fce2bfdd | ||
|
|
a7da6f3292 | ||
|
|
c736f2ed2d | ||
|
|
7bccefd01b | ||
|
|
cccf6078c1 |
@@ -1,6 +1,14 @@
|
|||||||
Revision history for Mojolicious::Plugin::TtRenderer
|
Revision history for Mojolicious::Plugin::TtRenderer
|
||||||
|
|
||||||
{{$NEXT}}
|
{{$NEXT}}
|
||||||
|
|
||||||
|
1.40 February 20, 2013
|
||||||
|
- Added diagnostic for IO loop implementation in testing
|
||||||
|
|
||||||
|
1.39 January 28, 2013
|
||||||
|
- Documentation updates.
|
||||||
|
|
||||||
|
1.38 January 27, 2013
|
||||||
- fixed but where DATA templates were not being rendered with empty renderer path
|
- fixed but where DATA templates were not being rendered with empty renderer path
|
||||||
|
|
||||||
1.37 January 12, 2013
|
1.37 January 12, 2013
|
||||||
|
|||||||
+13
-10
@@ -6,13 +6,13 @@ Mojolicious::Plugin::TtRenderer - Template Renderer Plugin
|
|||||||
|
|
||||||
=head1 SYNOPSIS
|
=head1 SYNOPSIS
|
||||||
|
|
||||||
# Mojolicious
|
# Mojolicious
|
||||||
$self->plugin('tt_renderer');
|
$self->plugin('tt_renderer');
|
||||||
$self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});
|
$self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});
|
||||||
|
|
||||||
# Mojolicious::Lite
|
# Mojolicious::Lite
|
||||||
plugin 'tt_renderer';
|
plugin 'tt_renderer';
|
||||||
plugin tt_renderer => {template_options => {FILTERS => [ ... ]}};
|
plugin tt_renderer => {template_options => {FILTERS => [ ... ]}};
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@ L<Mojolicious::Plugin> and implements the following new ones.
|
|||||||
|
|
||||||
=head2 C<register>
|
=head2 C<register>
|
||||||
|
|
||||||
$plugin->register;
|
$plugin->register;
|
||||||
|
|
||||||
Register renderer in L<Mojolicious> application.
|
Register renderer in L<Mojolicious> application.
|
||||||
|
|
||||||
@@ -34,11 +34,14 @@ Register renderer in L<Mojolicious> application.
|
|||||||
|
|
||||||
The current controller instance can be accessed as C<c>.
|
The current controller instance can be accessed as C<c>.
|
||||||
|
|
||||||
[% c.req.headers.host %]
|
[% c.req.headers.host %]
|
||||||
|
|
||||||
=head1 SEE ALSO
|
=head1 SEE ALSO
|
||||||
|
|
||||||
L<Mojolicious::Plugin::TtRenderer::Engine>, L<Mojolicious>, L<Mojolicious::Guides>, L<http://mojolicious.org>.
|
L<Mojolicious::Plugin::TtRenderer::Engine>,
|
||||||
|
L<Mojolicious>,
|
||||||
|
L<Mojolicious::Guides>,
|
||||||
|
L<http://mojolicious.org>.
|
||||||
|
|
||||||
=head1 AUTHOR
|
=head1 AUTHOR
|
||||||
|
|
||||||
@@ -55,7 +58,7 @@ L<https://github.com/abh/mojox-renderer-tt/issues?state=open>.
|
|||||||
|
|
||||||
You can find documentation for this module with the perldoc command.
|
You can find documentation for this module with the perldoc command.
|
||||||
|
|
||||||
perldoc Mojolicious::Plugin::TtRenderer
|
perldoc Mojolicious::Plugin::TtRenderer
|
||||||
|
|
||||||
You can also look for information at:
|
You can also look for information at:
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,9 @@ Template = 2.18
|
|||||||
[Prereqs / TestRequires ]
|
[Prereqs / TestRequires ]
|
||||||
Test::More = 0
|
Test::More = 0
|
||||||
|
|
||||||
|
[NextRelease]
|
||||||
|
format = %-7v %{MMMM d, yyyy}d
|
||||||
|
|
||||||
[@Git]
|
[@Git]
|
||||||
tag_format = release/%v
|
tag_format = release/%v
|
||||||
# push_to = all
|
# push_to = all
|
||||||
@@ -51,9 +54,6 @@ location = root
|
|||||||
|
|
||||||
[Manifest]
|
[Manifest]
|
||||||
|
|
||||||
[NextRelease]
|
|
||||||
format = %-7v %{MMMM d, yyyy}d
|
|
||||||
|
|
||||||
[MinimumPerl]
|
[MinimumPerl]
|
||||||
|
|
||||||
[MetaJSON]
|
[MetaJSON]
|
||||||
|
|||||||
@@ -32,13 +32,13 @@ Mojolicious::Plugin::TtRenderer - Template Renderer Plugin
|
|||||||
|
|
||||||
=head1 SYNOPSIS
|
=head1 SYNOPSIS
|
||||||
|
|
||||||
# Mojolicious
|
# Mojolicious
|
||||||
$self->plugin('tt_renderer');
|
$self->plugin('tt_renderer');
|
||||||
$self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});
|
$self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});
|
||||||
|
|
||||||
# Mojolicious::Lite
|
# Mojolicious::Lite
|
||||||
plugin 'tt_renderer';
|
plugin 'tt_renderer';
|
||||||
plugin tt_renderer => {template_options => {FILTERS => [ ... ]}};
|
plugin tt_renderer => {template_options => {FILTERS => [ ... ]}};
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
@@ -52,7 +52,7 @@ L<Mojolicious::Plugin> and implements the following new ones.
|
|||||||
|
|
||||||
=head2 C<register>
|
=head2 C<register>
|
||||||
|
|
||||||
$plugin->register;
|
$plugin->register;
|
||||||
|
|
||||||
Register renderer in L<Mojolicious> application.
|
Register renderer in L<Mojolicious> application.
|
||||||
|
|
||||||
@@ -60,11 +60,14 @@ Register renderer in L<Mojolicious> application.
|
|||||||
|
|
||||||
The current controller instance can be accessed as C<c>.
|
The current controller instance can be accessed as C<c>.
|
||||||
|
|
||||||
[% c.req.headers.host %]
|
[% c.req.headers.host %]
|
||||||
|
|
||||||
=head1 SEE ALSO
|
=head1 SEE ALSO
|
||||||
|
|
||||||
L<Mojolicious::Plugin::TtRenderer::Engine>, L<Mojolicious>, L<Mojolicious::Guides>, L<http://mojolicious.org>.
|
L<Mojolicious::Plugin::TtRenderer::Engine>,
|
||||||
|
L<Mojolicious>,
|
||||||
|
L<Mojolicious::Guides>,
|
||||||
|
L<http://mojolicious.org>.
|
||||||
|
|
||||||
=head1 AUTHOR
|
=head1 AUTHOR
|
||||||
|
|
||||||
@@ -81,7 +84,7 @@ L<https://github.com/abh/mojox-renderer-tt/issues?state=open>.
|
|||||||
|
|
||||||
You can find documentation for this module with the perldoc command.
|
You can find documentation for this module with the perldoc command.
|
||||||
|
|
||||||
perldoc Mojolicious::Plugin::TtRenderer
|
perldoc Mojolicious::Plugin::TtRenderer
|
||||||
|
|
||||||
You can also look for information at:
|
You can also look for information at:
|
||||||
|
|
||||||
|
|||||||
@@ -42,18 +42,16 @@ sub _init {
|
|||||||
# take and process options :-)
|
# take and process options :-)
|
||||||
|
|
||||||
my @renderer_paths = $app ? map { abs_path($_) } grep { -d $_ } @{ $app->renderer->paths } : ();
|
my @renderer_paths = $app ? map { abs_path($_) } grep { -d $_ } @{ $app->renderer->paths } : ();
|
||||||
|
push @renderer_paths, 'templates';
|
||||||
|
|
||||||
my %config = (
|
my %config = (
|
||||||
( @renderer_paths > 0
|
INCLUDE_PATH => \@renderer_paths,
|
||||||
? (INCLUDE_PATH => [@renderer_paths, 'templates'])
|
COMPILE_EXT => '.ttc',
|
||||||
: (INCLUDE_PATH => ['templates'])
|
COMPILE_DIR => ($dir || abs_path(File::Spec->tmpdir)),
|
||||||
),
|
UNICODE => 1,
|
||||||
COMPILE_EXT => '.ttc',
|
ENCODING => 'utf-8',
|
||||||
COMPILE_DIR => ($dir || abs_path(File::Spec->tmpdir)),
|
CACHE_SIZE => 128,
|
||||||
UNICODE => 1,
|
RELATIVE => 1,
|
||||||
ENCODING => 'utf-8',
|
|
||||||
CACHE_SIZE => 128,
|
|
||||||
RELATIVE => 1,
|
|
||||||
%{$args{template_options} || {}},
|
%{$args{template_options} || {}},
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -227,27 +225,27 @@ Mojolicious::Plugin::TtRenderer::Engine - Template Toolkit renderer for Mojo
|
|||||||
|
|
||||||
Add the handler:
|
Add the handler:
|
||||||
|
|
||||||
sub startup {
|
sub startup {
|
||||||
...
|
...
|
||||||
|
|
||||||
|
# Via mojolicious plugin
|
||||||
|
$self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});
|
||||||
|
|
||||||
|
# Or manually
|
||||||
|
use Mojolicious::Plugin::TtRenderer::Engine;
|
||||||
|
|
||||||
|
my $tt = Mojolicious::Plugin::TtRenderer::Engine->build(
|
||||||
|
mojo => $self,
|
||||||
|
template_options => {
|
||||||
|
PROCESS => 'tpl/wrapper',
|
||||||
|
FILTERS => [ ... ],
|
||||||
|
UNICODE => 1,
|
||||||
|
ENCODING => 'UTF-8',
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
# Via mojolicious plugin
|
$self->renderer->add_handler( tt => $tt );
|
||||||
$self->plugin(tt_renderer => {template_options => {FILTERS => [ ... ]}});
|
}
|
||||||
|
|
||||||
# Or manually
|
|
||||||
use Mojolicious::Plugin::TtRenderer::Engine;
|
|
||||||
|
|
||||||
my $tt = Mojolicious::Plugin::TtRenderer::Engine->build(
|
|
||||||
mojo => $self,
|
|
||||||
template_options => {
|
|
||||||
PROCESS => 'tpl/wrapper',
|
|
||||||
FILTERS => [ ... ],
|
|
||||||
UNICODE => 1,
|
|
||||||
ENCODING => 'UTF-8',
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
$self->renderer->add_handler( tt => $tt );
|
|
||||||
}
|
|
||||||
|
|
||||||
Template parameter are taken from C< $c->stash >.
|
Template parameter are taken from C< $c->stash >.
|
||||||
|
|
||||||
@@ -257,20 +255,20 @@ The template file for C<"example/welcome"> would be C<"templates/welcome.html.tt
|
|||||||
|
|
||||||
When template file is not available rendering from C<__DATA__> is attempted.
|
When template file is not available rendering from C<__DATA__> is attempted.
|
||||||
|
|
||||||
__DATA__
|
__DATA__
|
||||||
|
|
||||||
@@ welcome.html.tt
|
@@ welcome.html.tt
|
||||||
Welcome, [% user.name %]!
|
Welcome, [% user.name %]!
|
||||||
|
|
||||||
Inline template is also supported:
|
Inline template is also supported:
|
||||||
|
|
||||||
$self->render(inline => '[% 1 + 1 %]', handler => 'tt');
|
$self->render(inline => '[% 1 + 1 %]', handler => 'tt');
|
||||||
|
|
||||||
=head1 HELPERS
|
=head1 HELPERS
|
||||||
|
|
||||||
Helpers are exported automatically under C<h> namespace.
|
Helpers are exported automatically under C<h> namespace.
|
||||||
|
|
||||||
[% h.url_for('index') %]
|
[% h.url_for('index') %]
|
||||||
|
|
||||||
=head1 METHODS
|
=head1 METHODS
|
||||||
|
|
||||||
@@ -288,7 +286,11 @@ object. When used the INCLUDE_PATH will be set to
|
|||||||
|
|
||||||
=item template_options
|
=item template_options
|
||||||
|
|
||||||
A hash reference of options that are passed to Template->new().
|
A hash reference of options that are passed to Template->new(). Note that if you
|
||||||
|
specify an C<INCLUDE_PATH> through this option it will remove the DATA section
|
||||||
|
templates from your path. A better way to specify an C<INCLUDE_PATH> if you also
|
||||||
|
want to use DATA section templates it by manipulting the L<Mojolicious::Renderer>
|
||||||
|
path.
|
||||||
|
|
||||||
=item cache_dir
|
=item cache_dir
|
||||||
|
|
||||||
@@ -297,18 +299,19 @@ templates. Will default to a temp-dir if not set.
|
|||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
|
=head1 SEE ALSO
|
||||||
|
|
||||||
|
L<Mojolicious::Plugin::TtRenderer::Engine>,
|
||||||
|
L<Mojolicious>,
|
||||||
|
L<Mojolicious::Guides>,
|
||||||
|
L<http://mojolicious.org>.
|
||||||
|
|
||||||
=head1 AUTHOR
|
=head1 AUTHOR
|
||||||
|
|
||||||
Current maintainer: Graham Ollis C<< <plicease@cpan.org> >>
|
Current maintainer: Graham Ollis C<< <plicease@cpan.org> >>
|
||||||
|
|
||||||
Original author: Ask Bjørn Hansen, C<< <ask at develooper.com> >>
|
Original author: Ask Bjørn Hansen, C<< <ask at develooper.com> >>
|
||||||
|
|
||||||
=head1 TODO
|
|
||||||
|
|
||||||
* Better support non-Mojolicious frameworks
|
|
||||||
* Better way to pass parameters to the templates? (stash)
|
|
||||||
* More sophisticated default search path?
|
|
||||||
|
|
||||||
=head1 BUGS
|
=head1 BUGS
|
||||||
|
|
||||||
Please report any bugs or feature requests to the project's github issue tracker
|
Please report any bugs or feature requests to the project's github issue tracker
|
||||||
@@ -318,7 +321,7 @@ L<https://github.com/abh/mojox-renderer-tt/issues?state=open>.
|
|||||||
|
|
||||||
You can find documentation for this module with the perldoc command.
|
You can find documentation for this module with the perldoc command.
|
||||||
|
|
||||||
perldoc Mojolicious::Plugin::TtRenderer::Engine
|
perldoc Mojolicious::Plugin::TtRenderer::Engine
|
||||||
|
|
||||||
You can also look for information at:
|
You can also look for information at:
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,11 @@
|
|||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
use Test::More tests => 1;
|
||||||
|
use Mojo::IOLoop;
|
||||||
|
|
||||||
|
my $loop = eval { Mojo::IOLoop->singleton };
|
||||||
|
diag $@ if $@;
|
||||||
|
ok $loop;
|
||||||
|
diag ref eval { $loop->reactor };
|
||||||
|
diag $@ if $@;
|
||||||
|
|
||||||
Reference in New Issue
Block a user