From ade9f22a7d36b2855cc61ae0363c61b335901e55 Mon Sep 17 00:00:00 2001 From: Tim Kelty Date: Wed, 13 Dec 2023 13:51:24 -0500 Subject: [PATCH] Set newFolderId instead of folderId --- src/controllers/AssetsController.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/controllers/AssetsController.php b/src/controllers/AssetsController.php index a0ca090..0f8250a 100644 --- a/src/controllers/AssetsController.php +++ b/src/controllers/AssetsController.php @@ -150,8 +150,6 @@ public function actionCreateAsset(): Response $targetFilename = Assets::prepareAssetName($originalFilename); $asset = new Asset(); $asset->setFilename($filename); - $asset->folderId = $folder->id; - $asset->folderPath = $folder->path; $asset->setVolumeId($folder->volumeId); $asset->uploaderId = Craft::$app->getUser()->getId(); $asset->avoidFilenameConflicts = true; @@ -160,6 +158,9 @@ public function actionCreateAsset(): Response $asset->width = $width; $asset->height = $height; + // Setting newFolderId and not folderId, so that validation on newLocation occurs + $asset->newFolderId = $folder->id; + if (!$selectionCondition) { $asset->newFilename = $targetFilename; } @@ -168,6 +169,7 @@ public function actionCreateAsset(): Response $asset->title = Assets::filename2Title(pathinfo($originalFilename, PATHINFO_FILENAME)); } + // Saving without Asset::SCENARIO_CREATE, as it requires a tempFilePath $saved = $elementsService->saveElement($asset); // In case of error, let user know about it.