Mercurial > pub > Impl
view Lib/Schema/Form/Item.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 |
line wrap: on
line source
package Schema::Form::Item; use strict; use Common; our @ISA = qw(Object); BEGIN { DeclareProperty Name => ACCESS_READ; DeclareProperty isMulti => ACCESS_READ; DeclareProperty Filters => ACCESS_READ; DeclareProperty Attributes => ACCESS_READ; } sub CTOR { my ($this,$name,$multi,$filters,$attributes) = @_; $this->{$Name} = $name or die new Exception("A name is required for the item"); $this->{$isMulti} = defined $multi ? $multi : 0; $this->{$Filters} = $filters || []; $this->{$Attributes} = $attributes || {}; } sub AddFilter { my ($this,$filter) = @_; push @{$this->{$Filters}}, $filter; } sub isMandatory { my ($this) = @_; return ( grep $_->Name eq 'mandatory', $this->Filters ) ? 1 : 0 ; } sub GetFirstFilter { my ($this,$filterName) = @_; my ($filter) = grep $_->Name eq $filterName, $this->Filters; return $filter; } 1;