protected function validateAttribute($model, $attributeName) { if ($model->isRelation($attributeName)) { if ($this->requiredValue !== null) { if ($this->message !== null) { throw new NotImplementedException(); // TODO $message = $this->message; } else { $message = Yii::t('yii', '{attribute} must be {value}.', array('{value}' => $this->requiredValue)); } $this->addError($model, $attributeName, $message); } if ($model->{$attributeName} instanceof CustomField) { if ($model->{$attributeName}->value == null) { if ($this->message !== null) { $message = $this->message; } else { $message = Yii::t('yii', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } } elseif ($model->{$attributeName} instanceof FileContent) { if ($model->{$attributeName}->content === null) { if ($this->message !== null) { $message = $this->message; } else { $message = Yii::t('yii', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } } elseif ($model->{$attributeName}->id <= 0 && !$model->{$attributeName}->isModified() || !$model->{$attributeName}->validate()) { if ($this->message !== null) { $message = $this->message; } else { $message = Yii::t('yii', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } } else { parent::validateAttribute($model, $attributeName); } }
protected function validateAttribute($model, $attributeName) { if ($model::isRelation($attributeName)) { if ($this->requiredValue !== null) { if ($this->message !== null) { throw new NotImplementedException(); // TODO $message = $this->message; } else { $message = Zurmo::t('Core', '{attribute} must be {value}.', array('{value}' => $this->requiredValue)); } $this->addError($model, $attributeName, $message); } if ($model->{$attributeName} instanceof CustomField) { if ($model->{$attributeName}->value == null) { if ($this->message !== null) { $message = $this->message; } else { $message = Zurmo::t('Core', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } } elseif ($model->{$attributeName} instanceof MultipleValuesCustomField) { $multipleValues = $model->{$attributeName}->getValues(); if (count($multipleValues) == 0 || count($multipleValues) == 1 && $multipleValues[0] == '') { if ($this->message !== null) { $message = $this->message; } else { $message = Zurmo::t('Core', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } } elseif ($model->{$attributeName} instanceof FileContent) { if ($model->{$attributeName}->content === null) { if ($this->message !== null) { $message = $this->message; } else { $message = Zurmo::t('Core', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } } elseif ($model->{$attributeName}->id <= 0 && !$model->{$attributeName}->isModified()) { if ($this->message !== null) { $message = $this->message; } else { $message = Zurmo::t('Core', '{attribute} cannot be blank.'); } $this->addError($model, $attributeName, $message); } elseif (!$model->{$attributeName}->validate()) { if ($this->message !== null) { $message = $this->message; } else { $message = Zurmo::t('Core', 'There was a problem validating {attribute}.'); } $this->addError($model, $attributeName, $message); } } else { parent::validateAttribute($model, $attributeName); } }