NAME
CGI::Application::Plugin::HTMLPrototype - Give easy access to the prototype JavaScript library using HTML::Prototype
SYNOPSIS
use base qw(CGI::Application);
use CGI::Application::Plugin::HTMLPrototype;
sub myrunmode {
my $self = shift;
# Get prototype object
my $prototype = $self->prototype;
}
DESCRIPTION
HTML::Prototype is a JavaScript code generator for the prototype.js JavaScript library (http://prototype.conio.net/), and the script.aculo.us extensions to prototype.js (http://script.aculo.us/). It allows you to easily add AJAX calls and dynamic elements to your website.
METHODS
prototype
Simply returns an HTML::Prototype object. See the HTML::Prototype docs for information on the methods that are available to you.
TEMPLATE TOOLKIT INTEGRATION
This module is very useful when used in concert with the Template Toolkit. Since version 0.07 The CGI::Application::Plugin::TT module automatically adds a 'c' parameter to your template, which gives you access to your CGI::Application object from within your templates. This will give you easy access to the prototype plugin from within all of your templates.
Here is an example. The following example will create a hidden 'div' tag and a link that will make the div fade in when clicked.
[% c.prototype.define_javascript_functions %]
<a href="#" onclick="[% c.prototype.visual_effect( 'Appear', 'extra_info' ) %]">Extra Info</a>
<div style="display: none" id="extra_info">Here is some more extra info</div>
EXAMPLE
See the examples directory for some examples
AUTHOR
Cees Hek <ceeshek@gmail.com>
BUGS
Please report any bugs or feature requests to bug-cgi-application-plugin-htmlprototype@rt.cpan.org
, or through the web interface at http://rt.cpan.org. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
CONTRIBUTING
Patches, questions and feedback are welcome.
SEE ALSO
CGI::Application, CGI::Application::Plugin::TT, HTML::Prototype, perl(1)
LICENSE
Copyright (C) 2005 Cees Hek, All Rights Reserved.
This library is free software. You can modify and or distribute it under the same terms as Perl itself.