HTML::Template::Compiled::Plugin::VBEscape - VB-Script-Escaping for HTC


HTML-Template-Compiled-Plugin-VBEscape documentation Contained in the HTML-Template-Compiled-Plugin-VBEscape distribution.

Index


Code Index:

NAME

Top

HTML::Template::Compiled::Plugin::VBEscape - VB-Script-Escaping for HTC

VERSION

Top

0.03

SYNOPSIS

Top

    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');
    );
    <script language="VBScript"><!--
        string1 = "<%= attribute ESCAPE=VB%>"
        string2 = "<%= cdata ESCAPE=VB%>"
    '--></script>
    EOVB
    $htc->param(
        attribute => 'foo "bar"',
        cdata     => 'text "with" double quotes',
    );
    print $htc->output();

Output:

    <script language="VBScript"><!--
        string1 = "foo ""bar"""
        string2 = "text ""with"" double quotes"
    '--></script>

DESCRIPTION

Top

VB-Script-Escaping for HTML::Template::Compiled

EXAMPLE

Top

Inside of this Distribution is a directory named example. Run this *.pl files.

SUBROUTINES/METHODS

Top

register

gets called by HTC

escape_vb

Escapes data for VB CDATA or for VB attributes.

DIAGNOSTICS

Top

none

CONFIGURATION AND ENVIRONMENT

Top

none

DEPENDENCIES

Top

HTML::Template::Compiled

INCOMPATIBILITIES

Top

not known

BUGS AND LIMITATIONS

Top

not known

SEE ALSO

Top

HTML::Template::Compiled

AUTHOR

Top

Steffen Winkler

LICENSE AND COPYRIGHT

Top


HTML-Template-Compiled-Plugin-VBEscape documentation Contained in the HTML-Template-Compiled-Plugin-VBEscape distribution.

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 => {
            # <tmpl_var foo ESCAPE=VB>
            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__