diff options
Diffstat (limited to 'GroLUG/lib/HTML/Widget')
-rw-r--r-- | GroLUG/lib/HTML/Widget/Constraint/EuroAmount.pm | 9 | ||||
-rw-r--r-- | GroLUG/lib/HTML/Widget/Constraint/ISODate.pm | 18 |
2 files changed, 27 insertions, 0 deletions
diff --git a/GroLUG/lib/HTML/Widget/Constraint/EuroAmount.pm b/GroLUG/lib/HTML/Widget/Constraint/EuroAmount.pm new file mode 100644 index 0000000..7e80265 --- /dev/null +++ b/GroLUG/lib/HTML/Widget/Constraint/EuroAmount.pm @@ -0,0 +1,9 @@ +package HTML::Widget::Constraint::EuroAmount; + +use warnings; +use strict; +use base 'HTML::Widget::Constraint::Regex'; + +sub regex { qr{^\d+(?:\.\d{0,2})?$} }; + +1; diff --git a/GroLUG/lib/HTML/Widget/Constraint/ISODate.pm b/GroLUG/lib/HTML/Widget/Constraint/ISODate.pm new file mode 100644 index 0000000..f5680d2 --- /dev/null +++ b/GroLUG/lib/HTML/Widget/Constraint/ISODate.pm @@ -0,0 +1,18 @@ +package HTML::Widget::Constraint::ISODate; + +use warnings; +use strict; +use base 'HTML::Widget::Constraint'; +use DateTime::Format::Strptime; + +my $format=DateTime::Format::Strptime->new(pattern=>'%F'); + +sub validate { + my ($self,$value)=@_; + + my $val=$format->parse_datetime($value); + + return defined($val); +} + +1; |