Exemplo n.º 1
0
 /**
  * check if a model field value is unique
  * @param \DB\Cortex $model
  * @param mixed $val
  * @param string $field
  * @param string $context
  * @return bool
  */
 function unique($model, $val, $field, $context = null)
 {
     $valid = true;
     if (empty($val)) {
         return $valid;
     }
     if (!$this->f3->exists($context . '.unique', $errText)) {
         $errText = 'This ' . $field . ' is already taken';
     }
     $filter = $model->dry() ? array($field . ' = ?', $val) : array($field . ' = ? and _id != ?', $val, $model->_id);
     if ($model->findone($filter)) {
         $this->f3->error(400, $errText);
         \Flash::instance()->setKey($context, 'has-error');
         $valid = false;
     }
     return $valid;
 }