public function is_valid($value) { if (parent::is_valid($value)) { if (0 < preg_match('`^[[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-.]?[[:alnum:]])*\\.([a-z]{2,4})$`', $value)) { return true; } $this->_error('invalid_email'); return false; } return false; }
public function is_valid($value) { if (parent::is_valid($value)) { $from = array('dd', 'mm', 'yyyy', 'yy', 'HH', 'MM', 'SS'); $to = array('%d', '%m', '%Y', '%y', '%H', '%M', '%S'); $format = str_replace($from, $to, $this->format); date_default_timezone_set('Europe/Paris'); $datetime = strptime($value, $format); if (false !== $datetime) { if (!checkdate($datetime['tm_mon'] + 1, $datetime['tm_mday'], $datetime['tm_year'] + 1900)) { $this->_error('invalid_date'); return false; } return true; } $this->_error('invalid_date_format'); return false; } return false; }
public function __construct($name, $form) { parent::__construct($name, $form); $this->attrs['type'] = 'password'; }