/** * * unique validator */ public function isValid($data) { // return on false to see previous errors if (parent::isValid($data) == false) { return false; } $this->getElement('name')->addValidator('Db_NoRecordExists', false, array('table' => 'profiles', 'field' => 'name', 'exclude' => array('field' => 'id', 'value' => $data['id'])))->setErrorMessages(array($this->translator->translate('This is already taken'))); $this->getElement('owner')->addValidator('Db_RecordExists', false, array('table' => 'profiles', 'field' => 'name'))->setErrorMessages(array($this->translator->translate('Choose existing profile name'))); return parent::isValid($data); }
/** * * unique name / email validator */ public function isValid($data) { // return on false to see previous errors if (parent::isValid($data) == false) { return false; } $this->getElement('regname')->addValidator('Db_NoRecordExists', false, array('table' => 'profiles', 'field' => 'name'))->setErrorMessages(array($this->translator->translate('This username is not available'))); $this->getElement('regemail')->addValidator('Db_NoRecordExists', false, array('table' => 'profiles', 'field' => 'email'))->setErrorMessages(array($this->translator->translate('This email is already in use'))); return parent::isValid($data); }