view Lib/Schema/Form/Field.pm @ 144:b56ebc31bf18

Empty nodes no more created while transforming a post request to the DOM document minor speed improvements to the object CTOR caching Added support for a secure processing (and 'laundering' ) a CGI parameters Many minor fixes
author wizard
date Tue, 13 Jul 2010 02:05:38 +0400
parents 16ada169ca75
children 4267a2ac3d46
line wrap: on
line source

package Schema::Form::Field;
use strict;
use Common;
use base qw(Schema::Form::Item);

BEGIN {
    DeclareProperty Format => ACCESS_READ;
}

sub CTOR {
    my ($this,%args) = @_;
    
    $args{'Format'} or die new Exception('A format is required for a field');
    
    $args{'Attributes'} = { %{$args{Format}->Attributes},%{$args{Attributes} || {} } };
    
    $this->SUPER::CTOR(@args{qw(Name isMulti Filters Attributes)});
    $this->{$Format} = $args{'Format'};
}

=pod
Сначала применить фильтры формата а потом фильтры поля
=cut
sub Filters {
    my ($this) = @_;
    
    my @filters = $this->{$Format}->Filters;
    push @filters,$this->SUPER::Filters;
    
    return @filters;
}

1;