Ejemplo n.º 1
0
 public function validateRgb($attribute, $params)
 {
     if ($this->hasErrors($attribute)) {
         return;
     }
     $value = $this->{$attribute};
     if (!is_array($value)) {
         $this->addError($attribute, "{$attribute} must be an array.");
         return;
     }
     if (count($value) !== 3) {
         $this->addError($attribute, "{$attribute} must have 3 values.");
         return;
     }
     $numberValidator = new \yii\validators\NumberValidator();
     $numberValidator->integerOnly = true;
     $numberValidator->min = 0;
     $numberValidator->max = 255;
     foreach ($value as $v) {
         $error = null;
         if (!$numberValidator->validate($v, $error)) {
             $this->addError($attribute, $error);
             return;
         }
     }
 }
Ejemplo n.º 2
0
 public function validateProject($attribute, $params)
 {
     $validator = new yii\validators\NumberValidator();
     $validator->min = 1;
     $projectRequired = yii::$app->CalendarComponent->projectOption($this->calendar_id);
     if ($projectRequired) {
         if (!$validator->validate($this->{$attribute})) {
             $this->addError($attribute, 'A project is required for this event');
         }
     }
 }
Ejemplo n.º 3
0
 public function validateDeletingImages()
 {
     $validator = new \yii\validators\NumberValidator();
     $validator->integerOnly = true;
     foreach ($this->delete_images as $key => $value) {
         if (!$validator->validate($value)) {
             $this->addError('delete_images', 'Should be true or false');
             return false;
         }
     }
     return true;
 }
Ejemplo n.º 4
0
 static function validateReservationData($BookValues, $ValuesType)
 {
     $ok = true;
     foreach ($BookValues as $key => $value) {
         if ($ValuesType[$key] == 'number') {
             $validator = new \yii\validators\NumberValidator();
             $ok = $ok && $validator->validate($value);
         } elseif ($ValuesType[$key] == 'text') {
             $validator = new \yii\validators\StringValidator();
             $ok = $ok && $validator->validate($value);
         } else {
             $ok = false;
         }
     }
     return $ok;
 }
Ejemplo n.º 5
0
 private function judgeAccountType($account)
 {
     $numberValidator = new \yii\validators\NumberValidator();
     if ($numberValidator->validate($account)) {
         return static::ACCOUNT_TYPE_INTEGER;
     }
     $emailValidator = new \yii\validators\EmailValidator();
     if ($emailValidator->validate($account)) {
         return static::ACCOUNT_TYPE_EMAIL;
     }
     return static::ACCOUNT_TYPE_INVALID;
 }
Ejemplo n.º 6
0
 private function _validateParams()
 {
     // Email
     if (empty($this->email)) {
         throw new \yii\base\InvalidConfigException("`email` param is required");
     } else {
         $validator = new \yii\validators\EmailValidator();
         if (!$validator->validate($this->email, $error)) {
             throw new \yii\base\InvalidConfigException($error);
         }
     }
     // Size
     if (!empty($this->size)) {
         $validator = new \yii\validators\NumberValidator(["min" => 1, "max" => 2048]);
         if (!$validator->validate($this->size, $error)) {
             throw new \yii\base\InvalidConfigException($error);
         }
     }
     // Rating
     if (!empty($this->rating)) {
         $validator = new \yii\validators\RangeValidator(["range" => ["g", "pg", "r", "x"]]);
         if (!$validator->validate($this->rating, $error)) {
             throw new \yii\base\InvalidConfigException($error);
         }
     }
     // Default image
     if (!empty($this->defaultImage)) {
         $validator = new \yii\validators\UrlValidator();
         if (!$validator->validate($this->defaultImage, $error)) {
             $validator = new \yii\validators\RangeValidator(["range" => ["404", "mm", "identicon", "monsterid", "wavatar", "retro", "blank"]]);
             if (!$validator->validate($this->defaultImage, $error)) {
                 throw new \yii\base\InvalidConfigException($error);
             }
         }
     }
 }