diff --git a/app/library/App/Controllers/UserController.php b/app/library/App/Controllers/UserController.php index a1af0c8..3d3fb53 100755 --- a/app/library/App/Controllers/UserController.php +++ b/app/library/App/Controllers/UserController.php @@ -3,7 +3,11 @@ namespace App\Controllers; use App\Model\User; +use Phalcon\Validation; +use Phalcon\Validation\Validator\Email; use PhalconRest\Mvc\Controllers\CrudResourceController; +use PhalconApi\Exception; +use PhalconApi\Constants\ErrorCodes; class UserController extends CrudResourceController { @@ -101,4 +105,36 @@ class UserController extends CrudResourceController } } + protected function beforeHandleWrite() + { + $email_field = 'email'; + + $validation = new Validation(); + + $validation->add( + $email_field, + new Email( + [ + "message" => "The e-mail is not valid", + ] + ) + ); + + $data = $this->getPostedData(); + + if (!isset($data[$email_field])) { + + $message = $validation->validate($data[$email_field]); + if (count($message)) { + throw new Exception(ErrorCodes::DATA_FAILED, 'Unable to create item', [ + 'messages' => $message, + 'data' => $data[$email_field] + ]); + } + + } + + + } + } -- libgit2 0.21.4