コード例 #1
0
ファイル: DefaultController.php プロジェクト: tolik505/bl
 /**
  * @return string
  */
 public function actionUploadImage()
 {
     $returnData = [];
     $className = \Yii::$app->request->get('model_name');
     $attribute = \Yii::$app->request->get('attribute');
     if ($className && $attribute) {
         $model = new $className();
         $modelName = $model->formName();
         $files = UploadedFile::getInstances($model, $attribute);
         foreach ($files as $file) {
             $originalName = $file->baseName . '.' . $file->extension;
             $fileId = FPM::transfer()->saveUploadedFile($file);
             if ($fileId) {
                 $existModelId = \Yii::$app->request->post('id');
                 $tempSign = \Yii::$app->request->post('sign');
                 $savedImage = EntityToFile::add($modelName, $existModelId, $fileId, $tempSign, \Yii::$app->request->get('entity_attribute'));
                 if (!$savedImage) {
                     $returnData['error'][] = 'Не получилось связать файл ' . $originalName . ' с моделью';
                 } else {
                     $returnData = ['deleteUrl' => ImagesUploadModel::deleteImageUrl(['id' => $savedImage->id]), 'cropUrl' => ImagesUploadModel::getCropUrl(['id' => $savedImage->id]), 'id' => $savedImage->id, 'imgId' => $savedImage->file_id];
                 }
             } else {
                 $returnData['error'][] = 'Не получилось сохранить файл ' . $originalName;
             }
         }
     }
     return Json::encode($returnData);
 }