Commit 20690497 authored by Shakarim Sapa's avatar Shakarim Sapa

- Добавлена валидация передаваемых файлов и заголовков

parent b5ca61da
......@@ -3,6 +3,7 @@
namespace common\modules\analyticsSchool\models;
use Yii;
use yii\web\UploadedFile;
/**
* This is the model class for table "analytics_school_lessons".
......@@ -17,6 +18,8 @@ use Yii;
*/
class AnalyticsSchoolLesson extends \common\components\ActiveRecordModel
{
public $filename = [];
public $file = [];
/**
* @inheritdoc
*/
......@@ -40,12 +43,32 @@ class AnalyticsSchoolLesson extends \common\components\ActiveRecordModel
return [
[['course_id', 'name', 'content'], 'required'],
[['course_id'], 'integer'],
[['filename', 'file'], 'safe'],
[['video_link', 'content'], 'string'],
[['name'], 'string', 'max' => 255],
[['course_id'], 'exist', 'skipOnError' => true, 'targetClass' => AnalyticsSchoolCourse::className(), 'targetAttribute' => ['course_id' => 'id']],
];
}
public function validate($attributeNames = null, $clearErrors = true){
if (!parent::validate($attributeNames = null, $clearErrors = true))
return false;
$files = UploadedFile::getInstances($this, 'file');
foreach($files as $index=>$file) {
if (isset($this->filename[$index])) {
$model = new AnalyticsSchoolLessonFile();
$model->document = $file;
if (!$model->validate(['document'])) {
$this->addError('file', current(current($model->getErrors())));
return false;
}
}
}
return true;
}
/**
* @inheritdoc
*/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment