X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/kivitendo-erp.git/blobdiff_plain/29379d95dee7886c804cc695a710bbb4f08c1be6..1e403f489b283e2e6b725f32cea29f38b3fe4e1f:/SL/Template/Plugin/JavaScript.pm?ds=sidebyside diff --git a/SL/Template/Plugin/JavaScript.pm b/SL/Template/Plugin/JavaScript.pm index 16989e9a2..48158307f 100644 --- a/SL/Template/Plugin/JavaScript.pm +++ b/SL/Template/Plugin/JavaScript.pm @@ -1,16 +1,23 @@ package SL::Template::Plugin::JavaScript; -use base qw( Template::Plugin ); -use Template::Plugin; +use base qw( Template::Plugin::Filter ); use strict; +my $cached_instance; + sub new { - my ($class, $context, @args) = @_; + my $class = shift; + + return $cached_instance ||= $class->SUPER::new(@_); +} + +sub init { + my $self = shift; + + $self->install_filter($self->{ _ARGS }->[0] || 'js'); - return bless { - CONTEXT => $context, - }, $class; + return $self; } # @@ -38,6 +45,11 @@ sub escape { return $text; } +sub filter { + my ($self, $text) = @_; + return $self->escape($text); +} + sub replace_with { return _replace_helper('replaceWith', @_); } @@ -92,6 +104,11 @@ value is not wrapped in quotes. Example: +You can also use the filter syntax instead: + + + =item C Returns code replacing the DOM elements matched by C<$selector> with