瀏覽代碼

fix website deletion error when website is already soft deleted

Olivier Massot 7 月之前
父節點
當前提交
6057cd746b
共有 1 個文件被更改,包括 5 次插入2 次删除
  1. 5 2
      ot_admin/Classes/Controller/SiteController.php

+ 5 - 2
ot_admin/Classes/Controller/SiteController.php

@@ -800,9 +800,12 @@ class SiteController extends ActionController
      */
     public function deleteSiteAction(int $organizationId, bool $hard=false, bool $redirectToParent=true, bool $force = false): int
     {
-        $website = $this->otWebsiteRepository->getWebsiteByOrganizationId($organizationId);
+        $withRestrictions = !$hard;  // Une suppression 'hard' doit ignorer les restrictions pour pouvoir
+                                     // aussi supprimer définitivement un site déjà soft-deleted
+
+        $website = $this->otWebsiteRepository->getWebsiteByOrganizationId($organizationId, $withRestrictions);
         $websiteUid = $website['uid'];
-        $rootUid = $this->otWebsiteRepository->getWebsiteRootUid($website['uid']);
+        $rootUid = $this->otWebsiteRepository->getWebsiteRootUid($website['uid'], $withRestrictions);
 
         $queryBuilder = $this->connectionPool->getQueryBuilderForTable('pages');
         $isDeleted = $queryBuilder