Data-MuForm

 view release on metacpan or  search on metacpan

lib/Data/MuForm/Renderer/Base.pm  view on Meta::CPAN


sub wrapper_fieldset {
    my ( $self, $rargs, $rendered ) = @_;

    my $id = $rargs->{id} if ($rargs->{is_compound});
    my $label = $self->localize($rargs->{label});
    my $out = qq{\n<fieldset };
    $out .= qq{id="$id" } if $id;
    $out .= process_attrs($rargs->{wrapper_attr});
    $out .= qq{>};
    $out .= qq{<legend class="label">$label</legend>};
    $out .= $rendered;
    $out .= qq{\n</fieldset>};
    return $out;
}

sub element_wrapper {
    my ( $self, $rargs, $rendered ) = @_;
    my $out = qq{\n<div };
    $out .= process_attrs($rargs->{element_wrapper_attr});
    $out .= qq{>$rendered</div>};

t/render/standard.t  view on Meta::CPAN

    has_field 'boxed' => ( 'ra.wrapper' => 'fieldset', 'ra.wa.class' => 'boxed' );
    has_field 'element_wrapper_field' => ( element_wrapper_class => 'large' );

}

my $form = Test::Form->new;
ok( $form, 'create form' );

# repeatable with 'contains'
my $expected = q{
<fieldset id="hobbies"><legend class="label">Hobbies</legend>
  <div>
    <input id="hobbies.0" name="hobbies.0" type="text" value="" />
  </div>
</fieldset>
};
is_html( $form->field('hobbies')->render, $expected, 'output from repeatable with num_when_empty == 1'
);

my $params = {
    test_field         => 'something',

t/render/standard.t  view on Meta::CPAN

$expected = q{
<div>
  <label for="selected">Selected<input checked="checked" id="selected" name="selected" type="checkbox" value="1" /></label>
</div>
};
is_html( $rendered, $expected, 'output from boolean'
);

$rendered = $form->field('start_date')->render;
$expected = q{
<fieldset id="start_date"><legend class="label">Start date</legend>
  <div>
    <label for="start_date.month">Month</label>
    <input type="text" name="start_date.month" id="start_date.month" size="8" value="7" />
  </div>
  <div>
    <label for="start_date.day">Day</label>
    <input type="text" name="start_date.day" id="start_date.day" size="8" value="14" />
  </div>
  <div>
    <label for="start_date.year">Year</label>

t/render/standard.t  view on Meta::CPAN

$rendered = $form->render_start;
is_html( $rendered,
'<form id="testform" method="post">',
'Form start OK'
);


$rendered = $form->field('hobbies')->render;

$expected = q{
<fieldset id="hobbies"><legend class="label">Hobbies</legend>
  <div>
    <input id="hobbies.0" name="hobbies.0" type="text" value="eating" />
  </div>
  <div>
    <input id="hobbies.1" name="hobbies.1" type="text" value="sleeping" />
  </div>
  <div>
    <input id="hobbies.2" name="hobbies.2" type="text" value="not chasing mice" />
  </div>
</fieldset>
};

is_html($rendered, $expected, 'hobbies compound field render ok');

is_html( $form->field('plain')->render, '<input type="text" name="plain" id="plain" value="No divs!!" />', 'renders without wrapper');


is_html( $form->field('boxed')->render,
'<fieldset class="boxed"><legend class="label">Boxed</legend>
  <input type="text" name="boxed" id="boxed" value="Testing single fieldset" />
</fieldset>', 'fieldset wrapper renders' );

=comment
# TODO - element_wrapper... sigh
is_html( $form->field('element_wrapper_field')->render,
'<div>
  <label for="element_wrapper_field">Element wrapper field</label>
  <div class="large">
    <input id="element_wrapper_field" name="element_wrapper_field" type="text" value="" />



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