package HTML::Template::Compiled::Plugin::VBEscape;
use strict;
use warnings;
our $VERSION = '0.03';
use HTML::Template::Compiled;
HTML::Template::Compiled->register(__PACKAGE__);
sub register {
my $class = shift;
my %plugs = (
escape => {
#
VB => \&escape_vb,
VB_ATTR => __PACKAGE__ . '::escape_vb',
},
);
return \%plugs;
}
sub escape_vb {
my $escaped = shift;
defined $escaped or return;
$escaped =~ s{"}{""}xmsg;
return $escaped;
}
# $Id$
1;
__END__
=head1 NAME
HTML::Template::Compiled::Plugin::VBEscape - VB-Script-Escaping for HTC
=head1 VERSION
0.03
=head1 SYNOPSIS
use HTML::Template::Compiled::Plugin::VBEscape;
my $htc = HTML::Template::Compiled->new(
plugin => [qw(HTML::Template::Compiled::Plugin::VBEscape)],
tagstyle => [qw(-classic -comment +asp)],
scalarref => \<<'EOVB');
);
EOVB
$htc->param(
attribute => 'foo "bar"',
cdata => 'text "with" double quotes',
);
print $htc->output();
Output:
=head1 DESCRIPTION
VB-Script-Escaping for HTML::Template::Compiled
=head1 EXAMPLE
Inside of this Distribution is a directory named example. Run this *.pl files.
=head1 SUBROUTINES/METHODS
=over 4
=item register
gets called by HTC
=item escape_vb
Escapes data for VB CDATA or for VB attributes.
=back
=head1 DIAGNOSTICS
none
=head1 CONFIGURATION AND ENVIRONMENT
none
=head1 DEPENDENCIES
L
=head1 INCOMPATIBILITIES
not known
=head1 BUGS AND LIMITATIONS
not known
=head1 SEE ALSO
L
=head1 AUTHOR
Steffen Winkler
=head1 LICENSE AND COPYRIGHT
Copyright (c) 2007 - 2009,
Steffen Winkler
C<< >>.
All rights reserved.
This module is free software;
you can redistribute it and/or modify it
under the same terms as Perl itself.
=cut