From e0db5d463661bb9a75e33852e7a85697f2a148e8 Mon Sep 17 00:00:00 2001 From: Bob van Leeuwen Date: Wed, 17 May 2017 20:32:34 +0200 Subject: [PATCH 1/2] Upload transaction --- controllers/ManagerController.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/controllers/ManagerController.php b/controllers/ManagerController.php index 2ea8cc8..d21e663 100644 --- a/controllers/ManagerController.php +++ b/controllers/ManagerController.php @@ -115,12 +115,14 @@ public function actionIndex() { public function actionUpload() { //set response header Yii::$app->getResponse()->format = Response::FORMAT_JSON; - // Check if the user is allowed to upload the image if (Yii::$app->controller->module->canUploadImage == false) { // Return the response array to prevent from the action being executed any further return []; } + // Create the transaction and set the success variable + $transaction = Yii::$app->db->beginTransaction(); + $bSuccess = false; //disable Csrf Yii::$app->controller->enableCsrfValidation = false; @@ -152,10 +154,19 @@ public function actionUpload() { //move_uploaded_file($sTempFile, $sMediaPath."/".$sFileName); //save with Imagine class Image::getImagine()->open($sTempFile)->save($sMediaPath . "/" . $sSaveFileName); + $bSuccess = true; } } } } + + if ($bSuccess) + // The upload action went successful, save the transaction + $transaction->commit(); + else + // There where problems during the upload, kill the transaction + $transaction->rollBack(); + //echo return json encoded return $return; } From 5d7baf0c8fc9bc2e1e55fbbb7b11c285ab507a06 Mon Sep 17 00:00:00 2001 From: noam148 Date: Thu, 18 May 2017 17:11:04 +0200 Subject: [PATCH 2/2] Update ManagerController.php --- controllers/ManagerController.php | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/controllers/ManagerController.php b/controllers/ManagerController.php index d21e663..b293471 100644 --- a/controllers/ManagerController.php +++ b/controllers/ManagerController.php @@ -160,12 +160,13 @@ public function actionUpload() { } } - if ($bSuccess) + if ($bSuccess) { // The upload action went successful, save the transaction $transaction->commit(); - else + } else { // There where problems during the upload, kill the transaction $transaction->rollBack(); + } //echo return json encoded return $return; @@ -383,9 +384,10 @@ public function actionDelete() { //set response header Yii::$app->getResponse()->format = Response::FORMAT_JSON; - if (Yii::$app->controller->module->canRemoveImage == false) - // User can not remove this image, return false status - return $return; + if (Yii::$app->controller->module->canRemoveImage == false) { + // User can not remove this image, return false status + return $return; + } //get post $ImageManager_id = Yii::$app->request->post("ImageManager_id"); @@ -393,9 +395,9 @@ public function actionDelete() { $model = $this->findModel($ImageManager_id); //delete record - if ($model->delete()) + if ($model->delete()) { $return['delete'] = true; - + } return $return; }