#!/usr/bin/perl use warnings; use strict; use base qw(CGI::Ex::App); __PACKAGE__->navigate; sub main_hash_validation { return { 'group no_alert' => 1, 'group no_confirm' => 1, member_type => {required => 1}, member_name => {required => 1}, member_address => {required => 1}, company_size => {required => 1}, member_phone => { required => 1, match => 'm/^\(\d{3}\) \d{3}\-\d{4}$/', match_error => 'Please type the phone number in (888) 555-1234 format', }, }; }; sub main_finalize { my $self = shift; $self->add_to_swap(it_validates => 1); return 0; } sub main_file_print { return \ <<'DOC'; FormWireframe

Simple Form Wireframe

Add/edit member

*required fields

Member Type* Organization Individual [% member_type_error %]
Member Name* [% member_name_error %]
Member Address* [% member_address_error %]
Phone* [% member_phone_error %]
Company Size* [% company_size_error %]
[% js_validation %]
[% IF it_validates %]

Congrats! This form validates completely!

[% END %] Source for this file | Perlmonk node 615215 DOC } sub source_run_step { shift->cgix->print_content_type('text/plain'); open(my $fh, "<", __FILE__) || die; print <$fh>; return 1; }