瀏覽代碼

Upgrade script from 9.0.0.B3 to 9.0.0.B4

Alex Trofimov 9 年之前
父節點
當前提交
31cde29886
共有 2 個文件被更改,包括 38 次插入 和 3 次删除
  1. 38 2
      upgrade/classes/BxDolUpgradeUtil.php
  2. 0 1
      upgrade/files/9.0.0.B3-9.0.0.B4/files_delete.php

+ 38 - 2
upgrade/classes/BxDolUpgradeUtil.php

@@ -328,8 +328,12 @@ class BxDolUpgradeUtil
         if (!$aFilesDelete && !is_array($aFilesDelete))
             return true;
 
-        foreach ($aFilesDelete as $sFile)
-            @unlink(BX_DIRECTORY_PATH_ROOT . $sFile);
+        foreach ($aFilesDelete as $sFile) {
+            if (is_dir(BX_DIRECTORY_PATH_ROOT . $sFile))
+                $this->rrmdir(BX_DIRECTORY_PATH_ROOT . $sFile);
+            else
+                @unlink(BX_DIRECTORY_PATH_ROOT . $sFile);
+        }
 
         return true;
     }
@@ -356,6 +360,38 @@ class BxDolUpgradeUtil
 
         return true;
     }
+
+    function rrmdir($directory)
+    {
+        if (substr($directory,-1) == "/")
+            $directory = substr($directory,0,-1);
+
+        if (!file_exists($directory) || !is_dir($directory))
+            return false;
+        elseif (!is_readable($directory))
+            return false;
+
+        if (!($directoryHandle = opendir($directory)))
+            return false;
+
+        while ($contents = readdir($directoryHandle)) {
+            if ($contents != '.' && $contents != '..') {
+                $path = $directory . "/" . $contents;
+
+                if (is_dir($path))
+                    bx_rrmdir($path);
+                else
+                    @unlink($path);
+            }
+        }
+
+        closedir($directoryHandle);
+
+        if (!@rmdir($directory))
+            return false;
+
+        return true;
+    }    
 }
 
 /** @} */

+ 0 - 1
upgrade/files/9.0.0.B3-9.0.0.B4/files_delete.php

@@ -10,6 +10,5 @@ $aFilesDelete = array(
     'plugins_public/tinymce/langs/ru_RU.js',
     'plugins_public/tinymce/plugins/media/moxieplayer.swf',
     'plugins_public/tinymce/plugins/layer',
-    'plugins/firephp',
 );