Acme-Monta
view release on metacpan or search on metacpan
lib/Acme/Monta.pm view on Meta::CPAN
package Acme::Monta;
use strict;
our $VERSION = '0.01';
sub new {
my $class = shift;
my %args = @_;
my $self = bless {
_start => $args{start} ? $args{start} : '<monta>',
_end => $args{end} ? $args{end} : '</monta>',
_open_font => $args{open_font} ? $args{open_font} : '#000',
_open_back => $args{open_back} ? $args{open_back} : '#fff',
_close_font => $args{close_font} ? $args{close_font} : '#000',
_close_back => $args{close_back} ? $args{close_back} : '#000',
_close_img => $args{close_img} ? 'url(' . $args{close_img} . ')' : '',
_replace_tag => $args{replace_tag} ? $args{replace_tag} : 'span',
_cursor => $args{cursor} ? $args{cursor} : 'pointer',
}, $class;
return $self;
}
sub montaize {
my $self = shift;
my $data = shift;
$data =~ s|$self->{_start}(.*?)$self->{_end}|
'<' . $self->{_replace_tag} . ' style="' .
'cursor:' . $self->{_cursor} . ';' .
'color:' . $self->{_close_font} . ';' .
'background-color:' . $self->{_close_back} . ';' .
'background-image:' . $self->{_close_img} . ';' .
'" onClick="' .
'this.style.color = \'' . $self->{_open_font} . '\';' .
'this.style.backgroundColor = \'' . $self->{_open_back} . '\';' .
'this.style.backgroundImage = \'\';' .
'this.style.cursor = \'\';' .
'">' . $1 . '</' . $self->{_replace_tag} . '>'
|goie;
return $data;
}
1;
__END__
=head1 NAME
Acme::Monta - TV of Japan is reproduced in Web.
=head1 SYNOPSIS
use Acme::Monta;
my $monta = Acme::Monta->new();
print $monta->montaize('this is <monta>secret words</monta>.');
=head1 DESCRIPTION
It is TV of Japan and a popular presentation technique.
It is called 'MONTA METHOD'.
=head1 METHOD
=over 4
( run in 2.261 seconds using v1.01-cache-2.11-cpan-97f6503c9c8 )