NAME
    Dancer::Plugin::ValidationClass - Centralized Input Validation For
    Dancer

VERSION
    version 0.110280

SYNOPSIS
        use Dancer;
        use Dancer::Plugin::ValidationClass;

        post '/authenticate/:login' => sub {
            unless (validate 'login', 'password') {
                return validation->errors;
            }
        };

        dance;

DESCRIPTION
    This plugin provides a convenient wrapper around the Validation::Class
    module for easy, reusable data validation for your Dancer applications.
    You don't even need to configure it unless your environment isn't a
    typical one.

ADVANCED SYNOPSIS
        use Dancer;
        use Dancer::Plugin::ValidationClass;

        post '/authenticate/:login' => sub {
            # set params manually (append, not overwrite)
            my $input = validation;
            $input->params(login => 'demo');
            unless ($input->validate 'login', 'password') {
                return $input->errors;
            }
        };

        dance;

CONFIGURATION
    Connection details will be optionally grabbed from your Dancer config
    file. For example:

        plugins:
          ValidationClass:
            class: Foo::Bar
        
        or
    
        plugins:
          ValidationClass:
            class: lib/Foo/Bar.pm

    If no configuration information is given, this plugin will attempt to
    use the application's name, as set in the configuration file, and assume
    the class is $AppName::Validation under the lib directory.

METHODS
  validate
    This method return true or false based on whether or not the user-input
    has passed the validation rules.

        1 if validate 'login', 'password';
        1 if validate {
            login => 'users:login',
            passw => 'users:password'
        };

  validation
    This method returns the current Validation::Class instance if one
    exists. Please note, once validation is called, the current global
    validation instance will be reset.

        unless ( validate 'login', 'password' ) {
            return validation->errors;
        }

    If you need to use validation (current global validation instance) more
    than once, please assign it to a variable. e.g.

        unless ( validate 'login', 'password' ) {
            my $instance = validation;
            warn join "\n", @{ $instance->errors };
            return $instance->error_fields;
        }

AUTHOR
    Al Newkirk <awncorp@cpan.org>

COPYRIGHT AND LICENSE
    This software is copyright (c) 2010 by awncorp.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.

