Mercurial > pub > Impl
view Lib/Form/Filter/Mandatory.pm @ 38:d660fb38b7cc
small fixes
ORM shema to SQL schema transformation
author | Sergey |
---|---|
date | Mon, 23 Nov 2009 17:57:07 +0300 |
parents | 03e58a454b20 |
children | 16ada169ca75 |
line wrap: on
line source
package Form::Filter::Mandatory; use strict; use Common; use base qw(Form::Filter); sub SUPPORTED_CONTEXT { Form::Filter::CTX_SINGLE | Form::Filter::CTX_SET } sub Invoke { my ($this,$target,$context,$schemaTarget,$parent) = @_; my @list; if ($context & Form::Filter::CTX_SET) { @list = @{$target || []}; } elsif ($context & (Form::Filter::CTX_SINGLE | Form::Filter::CTX_EXISTENT)) { @list = ($target); } foreach my $object (@list) { if (defined $object and not $object->isEmpty) { return Form::FilterResult->new( State => Form::FilterResult::STATE_SUCCESS_STAY ); } } return Form::FilterResult->new( State => Form::FilterResult::STATE_ERROR, Message => $this->FormatMessage($schemaTarget), Target => $schemaTarget, Container => $parent ); } 1;