HTML-FormBuilder

 view release on metacpan or  search on metacpan

example/app.psgi  view on Meta::CPAN


sub get_form {
    my $form = HTML::FormBuilder::Validation->new(data => {
        name   => 'openAccForm',
        id     => 'openAccForm',
        class  => 'formObject grd-row-padding',
        method => 'post',
        action => '/test',
    });

    my $fieldset = $form->add_fieldset({ legend => 'details' });
    $fieldset->add_field({
        'label' => {
            'text' => 'Salutation',
            'for'  => 'salutation',
        },
        'input' => HTML::FormBuilder::Select->new(
            'id'      => 'salutation',
            'name'    => 'salutation',
            'options' => [ { value => '', text => 'Select Salutation' }, { value => 'Mr', text => 'Mr' }, { value => 'Ms', text => 'Ms' }, { value => 'Dr', text => 'Dr' } ],
        ),

lib/HTML/FormBuilder/FieldSet.pm  view on Meta::CPAN

#              properly
# Returns    : a piece of form HTML code for a fieldset foreword
# Parameters : input_field, stacked
# Comments   :
# See Also   :
#####################################################################
sub _build_fieldset_foreword {
    my $self = shift;
    my $data = $self->{data};

    # fieldset legend
    my $legend = '';
    if (defined $data->{'legend'}) {
        $legend = qq{<legend>$data->{legend}</legend>};
        undef $data->{'legend'};
    }

    # header at the top of the fieldset
    my $header = '';
    if (defined $data->{'header'}) {
        $header = qq{<h2>$data->{header}</h2>};
        undef $data->{'header'};
    }

    # message at the top of the fieldset
    my $comment = '';
    if (defined $data->{'comment'}) {
        $comment = qq{<div class="$self->{classes}{comment}"><p>$data->{comment}</p></div>};
        undef $data->{'comment'};
    }

    return $legend . $header . $comment;
}

#####################################################################
# Usage      : $self->_wrap_fieldset($fieldset_html)
# Purpose    : wrap fieldset html by template
# Returns    : HTML
# Comments   :
# See Also   :
#####################################################################
sub _wrap_fieldset {

t/formbuilder_output.t  view on Meta::CPAN

use HTML::FormBuilder;
use HTML::FormBuilder::Select;

my ($form_obj, $result, $expect_result);

$form_obj = HTML::FormBuilder->new(
    data    => {id => 'testid'},
    classes => $classes
);
my $fieldset = $form_obj->add_fieldset({
    legend  => 'a legend',
    header  => 'header',
    comment => 'comment'
});

my $input_field_amount = {
    'label' => {
        'text'    => 'Amount',
        'for'     => 'amount',
        'tooltip' => {
            desc    => "this is a tool tip",

t/formbuilder_output.t  view on Meta::CPAN

    },
};

$fieldset->add_field($input_field_amount);
$fieldset->add_field($input_field_button);

lives_ok(sub { $result = $form_obj->build }, 'build tooltip ok');
$expect_result = <<EOF;
<form id="testid" method="get"><div class="rbox form">
    <div class="rbox-wrap">
        <fieldset><legend>a legend</legend><h2>header</h2><div class="grd-grid-12"><p>comment</p></div><div class="grd-row-padding row clear"><div class="extra_tooltip_container"><label for="amount"><em class="required_asterisk">**</em>Amount</label>...
        <span class="tl">&nbsp;</span><span class="tr">&nbsp;</span><span class="bl">&nbsp;</span><span class="br">&nbsp;</span>
    </div>
</div>
</form>
EOF
chomp $expect_result;
is($result, $expect_result, 'tooltip and call_customer_support');

# test heading
$form_obj = HTML::FormBuilder->new(

t/formbuilder_output.t  view on Meta::CPAN


chomp($expect_result);
is($result, $expect_result, 'heading result ok');

# test build_confirmation_button_with_all_inputs_hidden
$form_obj = HTML::FormBuilder->new(
    data    => {id => 'testid'},
    classes => $classes
);
$fieldset = $form_obj->add_fieldset({
    legend  => 'a legend',
    header  => 'header',
    comment => 'comment'
});
$fieldset->add_field($input_field_amount);

lives_ok(
    sub {
        $result = $form_obj->build_confirmation_button_with_all_inputs_hidden;
    },
    'build_confirmation_button_with_all_inputs_hidden ok'



( run in 1.113 second using v1.01-cache-2.11-cpan-49f99fa48dc )