This is the way I do it (haven't tried it in 1.2 - but I see no reason
why it wouldn't work).

I've been using this in loads of 1.1.x based sites together Evan
Sagge's excellent validation code 
http://bakery.cakephp.org/articles/view/more-improved-advanced-validation

In your model define a number of different validation arrays as
required:

var $validate = array();

var $validate_register = array(
                'title' => array('required'),
                'first_name' => array('required'),
                'last_name' => array('required'),
                'username' => array('required', 'unique'),
                'email' => array('required', 'unique', 'email'),
                'passwd' => array('required'),
                'passwd' => array('length' => array('min' => 8, 'max' => 20)),
                'postcode' => array('required','postcode'),
                'agree_terms' => array('required'),



    );

var $validate_details = array(
                'title' => array('required'),
                'first_name' => array('required'),
                'last_name' => array('required'),
                'username' => array('required', 'unique'),
                'email' => array('required', 'unique', 'email'),
                'postcode' => array('required','postcode'),



    );


var $validate_edit_password = array(
                'passwd' => array('required'),
                'passwd' => array('length' => array('min' => 8, 'max' => 20)),
    );

Then in your controller you just select the validation you want to use
depending on context and over-ride the default validation array e.g.

function register()
{
                $this->User->recursive = 0;

                $this->User->validate = $this->User->validate_register;

// etc.
}

function members_details()
   {
                $this->User->recursive = 0;

                $this->User->validate = $this->User->validate_details;

                $this->layout = "member";
// etc.
}




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake 
PHP" group.
To post to this group, send email to cake-php@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to