Пример #1
0
 public function is_valid($value)
 {
     $name = $this->attrs['name'];
     if (isset($_FILES[$name])) {
         $value = isset($_FILES[$name]) ? $_FILES[$name]['name'] : null;
         if (parent::is_valid($value)) {
             if (!$this->required) {
                 return true;
             }
             if (!empty($this->extensions)) {
                 $ext = pathinfo($value, PATHINFO_EXTENSION);
                 if (!in_array($ext, $this->extensions)) {
                     $this->_error('invalid_file_extension');
                     $valid = false;
                 }
             }
             if (0 < $this->max_size && $this->max_size < $_FILES[$name]['size']) {
                 $this->_error('file_too_big');
                 $valid = false;
             }
             return $_FILES[$name]['error'] == UPLOAD_ERR_OK && is_uploaded_file($_FILES[$name]['tmp_name']);
         }
     }
     return false;
 }
Пример #2
0
 public function is_valid($value)
 {
     if (parent::is_valid($value)) {
         if ($this->required && !empty($this->value) && $value != $this->value) {
             $this->_error('incorrect_value');
             return false;
         }
         return true;
     }
     return false;
 }
Пример #3
0
 public function is_valid($value)
 {
     if (parent::is_valid($value)) {
         if ($this->required && !in_array($value, $this->choices)) {
             $this->_error('incorrect_value');
             return false;
         }
         return true;
     }
     return false;
 }