From 1e8fe591b1c9da8d1654c4450d38265c5a34552e Mon Sep 17 00:00:00 2001 From: Sebastian Zoglowek <55794780+zoglo@users.noreply.github.com> Date: Tue, 12 Nov 2024 16:09:18 +0100 Subject: [PATCH] Fix a potential issue when deleting real estate via import --- .../contao/classes/RealEstateImporter.php | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/Resources/contao/classes/RealEstateImporter.php b/src/Resources/contao/classes/RealEstateImporter.php index 74d302c..f8f5edc 100644 --- a/src/Resources/contao/classes/RealEstateImporter.php +++ b/src/Resources/contao/classes/RealEstateImporter.php @@ -796,11 +796,15 @@ protected function updateCatalog($contactPersonRecords, $realEstateRecords) continue; } - // Delete real estate - $this->deleteRealEstateImages($objRealEstate, $objProvider); - $objRealEstate->delete(); - $this->addLog('Real estate was deleted: ' . $realEstateRecords[$i][$this->objInterface->uniqueField], 2, 'success'); - continue; + // Do not delete if the real estate does not exist + if (null !== $objRealEstate) + { + // Delete real estate + $this->deleteRealEstateImages($objRealEstate, $objProvider); + $objRealEstate->delete(); + $this->addLog('Real estate was deleted: ' . $realEstateRecords[$i][$this->objInterface->uniqueField], 2, 'success'); + continue; + } }else{ $this->addLog('Real estate was updated: ' . $realEstateRecords[$i][$this->objInterface->uniqueField], 2, 'success'); } @@ -1471,6 +1475,11 @@ protected function copyFile($fileName, $objFolder, $providerDirectoryName, $dire protected function deleteRealEstateImages($objRealEstate, $objProvider) { + if (null === $objRealEstate || null === $objProvider) + { + return; + } + $deleteFolder = $this->objFilesFolder->path . '/' . $objProvider->anbieternr . '/' . $objRealEstate->{$this->objInterface->uniqueField}; Files::getInstance()->rrdir($deleteFolder);