From f36f2e82c9476ae2c21a92678fb38430419c2de0 Mon Sep 17 00:00:00 2001 From: Anastasia Date: Thu, 30 Aug 2018 17:29:48 +0300 Subject: [PATCH] valid files --- common/models/Customer.php | 10 ++++------ frontend/controllers/SiteController.php | 5 ++--- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/common/models/Customer.php b/common/models/Customer.php index a784f63..7539839 100644 --- a/common/models/Customer.php +++ b/common/models/Customer.php @@ -109,7 +109,6 @@ 'citizenship', 'passport', 'email', - 'image', ], 'required', ], @@ -145,18 +144,17 @@ } - public function upload($file) + public function upload() { /** * @var \yii\web\UploadedFile $file; */ - $this->file = $file; - if (!empty($file)) { + if (!empty($this->file) and $this->validate()) { if (!file_exists(\Yii::getAlias('@storage/customers/'))) { FileHelper::createDirectory(\Yii::getAlias('@storage/customers/')); } - $filename = $file->baseName.'_'.Yii::$app->security->generateRandomString(5).'.'.$file->extension; - if ($file->saveAs(\Yii::getAlias('@storage/customers/') . $filename)) { + $filename = $this->file->baseName.'_'.Yii::$app->security->generateRandomString(5).'.'.$this->file->extension; + if ($this->file->saveAs(\Yii::getAlias('@storage/customers/') . $filename)) { $this->image = '/storage/customers/'.$filename; $this->file->name = $filename; return true; diff --git a/frontend/controllers/SiteController.php b/frontend/controllers/SiteController.php index d6b5c9c..2f6e456 100755 --- a/frontend/controllers/SiteController.php +++ b/frontend/controllers/SiteController.php @@ -155,13 +155,12 @@ { $model = new Customer(); if ($model->load(\Yii::$app->request->post())){ - - if ($model->upload(UploadedFile::getInstance($model, 'file')) and $model->save()){ + $model->file = UploadedFile::getInstance($model, 'file'); + if ($model->upload() and $model->save()){ \Yii::$app->session->setFlash('success', \Yii::t('app', 'Дякуемо за реєстрацію. Підтвердження участі буде відправлено на вказаний email')); return $this->redirect(['site/index']); } } - return $this->render('signup', [ 'model' => $model ]); -- libgit2 0.21.4