[Catalyst] Re: How to use self made Template Toolkit plugins?
kakimoto at tpg.com.au
kakimoto at tpg.com.au
Mon Jun 1 11:02:12 GMT 2009
hi there,
how do I access the Catalyst variable in a custom made Template
Toolkit plugin?
WhaT I have done: read up on
http://search.cpan.org/src/MRAMBERG/Catalyst-View-TT-0.27/lib/Catalyst/View/TT.pm
For example, I have my own plugin, "package
myApp::View::Template::Plugin::User"
use strict;
use warnings;
use base 'Template::Plugin';
use Template::Plugin;
use DateTime;
use DateTime::Format::Pg;
sub load {
my ( $class, $context ) = @_;
return $class;
}
sub new {
my ( $class, $context, @params ) = @_;
bless { _CONTEXT => $context, }, $class; # returns blessed
MyPlugin object
}
sub get_current_user
{
my ($class, $c) = @_;
$c->log->debug( "The type is " . ref ($c));
return $c->session->{'active_user'} ? $c->session->{'active_user'} :
$c->user->login_id;
}
===============
And in my template toolkit, "display_user.tt2" I do something like:
[% current_user = User.get_current_user(Catalyst) %]
THE current user is ([% current_user %])....
I noticed that myApp::View::Template::Plugin::User->get_current_user
doesn't print out any values.
I suspect it has not even been able to recognise the Catalyst variable.
I even tried doing "[% current_user = User.get_current_user( $Catalyst
) %]" in the display_user.tt2 template file.
Please help :)
K. akimoto
More information about the Catalyst
mailing list