<?php defined('SYSPATH') OR die('No direct access allowed.');
class Model_User extends Model_Auth_User {
protected $_rules = array(
'display_name' => array(
'not_empty' => NULL,
'min_length' => array(2),
'max_length' => array(32),
'regex' => array('/^[-\pL\pN_.]++$/uD')
),
'password' => array(
'min_length' => array(5),
'max_length' => array(42)
'email' => array(
'max_length' => array(127),
'validate::email' => NULL
)
);
protected $_callbacks = array(
'email' => array('email_available')
'display_name' => array('display_name_available')
public function validate_create(&$array){
$array = Validate::factory($array)
->filter(TRUE, 'trim')
->rules('display_name', $this->_rules['display_name'])
->rules('password', $this->_rules['password'])
->rules('email', $this->_rules['email']);
foreach ($this->_callbacks as $field => $callbacks){
foreach ($callbacks as $callback){
$array->callback($field, array($this, $callback));
}
return $array;