Exemple #1
0
 /**
  * Validate the given request with the given rules.
  *
  * @param  Request $request
  * @param  array   $rules
  * @param  array   $messages
  * @param  array   $customAttributes
  *
  * @throws ValidationException
  */
 public function validate(Request $request, array $rules, array $messages = [], array $customAttributes = [])
 {
     $validator = Validator::make($request->all(), $rules, $messages, $customAttributes);
     if ($validator->fails()) {
         $exception = new ValidationException();
         $exception->setErrors($validator->errors());
         throw $exception;
     }
 }
 public static function updateUrlMapping($item)
 {
     $urlMapping = UrlMappings::find()->where(['id' => $item['id']])->one();
     if ($urlMapping === null) {
         throw new BusinessException("Item does not exist");
     } else {
         $urlMapping->attributes = $item;
         if ($urlMapping->validate()) {
             if ($urlMapping->save(false)) {
                 return $urlMapping;
             } else {
                 throw new Exception("Database exception");
             }
         } else {
             $ex = new ValidationException();
             $ex->setData($urlMapping->errors);
             throw $ex;
         }
     }
 }
 public function actionAdd()
 {
     $data = \Yii::$app->request->post('user');
     if (isset($data)) {
         $user = new User();
         $user->attributes = $data;
         $created = new \DateTime('now');
         $user->created_on = date("Y-m-d H:i:s");
         $user->ip_address = \Yii::$app->request->userIP;
         $user->password = md5($data['password']);
         if ($user->validate()) {
             $user->save();
             return $user;
         } else {
             $ex = new ValidationException();
             $ex->setData($user->errors);
             throw $ex;
         }
     }
     throw new BadRequestHttpException("Missing required parameters");
 }
 public function actionUpdateMenuItem()
 {
     $data = \Yii::$app->request->post('item');
     if (isset($data)) {
         $id = $data['id'];
         if (isset($id)) {
             $menuItem = MenuItems::find()->where(['id' => $id])->one();
             if ($menuItem != null) {
                 $menuItem->attributes = $data;
                 if ($menuItem->validate()) {
                     $menuItem->save(false);
                     return $menuItem;
                 } else {
                     $ex = new ValidationException();
                     $ex->setData($menuItem->errors);
                     throw $ex;
                 }
             } else {
                 throw new BusinessException("Menu item does not exist");
             }
         }
     }
     throw new BadRequestHttpException("Missing required parameters");
 }
 public function loginWithOTP()
 {
     $otpForm = new OtpForm(['scenario' => OtpForm::SCENARIO_LOGIN]);
     $otpForm->attributes = \Yii::$app->request->getBodyParams();
     if (!$otpForm->validate()) {
         $ex = new ValidationException();
         $ex->setData($otpForm->errors);
         throw $ex;
     }
     if ($otpForm->login()) {
         return ['token' => $this->getAccessToken()];
     } else {
         throw new BusinessException("Invalid Credentials");
     }
 }
 public function actionUpdateThumbnail()
 {
     $form = new FileUploadModel();
     $form->setScenario(FileUploadModel::SCENARIO_IMAGE);
     if (\Yii::$app->request->isPost) {
         $form->uploadedFile = UploadedFile::getInstance($form, 'uploadedFile');
     }
     if (!$form->validate()) {
         $ex = new ValidationException();
         $ex->setData($form->errors);
         throw $ex;
     } else {
         $form->uploadedFile->saveAs('assets/thumbnail.' . $form->uploadedFile->extension);
     }
     return [];
 }
 /**
  * Constructor
  * 
  * @param array $errors
  * @param string $error
  */
 public function __construct($error = 'Invalid file.', $errors = [])
 {
     parent::__construct($error, $errors);
 }
Exemple #8
0
 /**
  * Cria um registro
  *
  * @param array $data Colunas e valores para serem salvos
  *
  * @return mixed
  * @throws ApiException
  * @throws ValidationException
  */
 public function create(array $data)
 {
     $model = $this->app->make($this->model());
     $model->fill($data);
     $wasSaved = $model->save();
     if ($wasSaved) {
         return $this->find($model->id);
     }
     $errorMessage = "Não foi possível salvar.";
     if (method_exists($model, 'isValid')) {
         $exception = new ValidationException();
         $exception->setMessages($model->getValidationErrors()->all());
         throw $exception;
     }
     throw new ApiException($errorMessage);
 }