public function testRemoveFolder() { $folder = 'C:\\xampp\\htdocs\\addons\\assets\\mycomponents\\upgrademodx\\_build\\test\\temproot'; $this->assertTrue(is_dir($folder)); MODXInstaller::removeFolder($folder, true); $this->assertFalse(is_dir($folder)); $folder = 'C:\\xampp\\htdocs\\addons\\assets\\mycomponents\\upgrademodx\\_build\\test\\temp'; $this->assertTrue(is_dir($folder)); MODXInstaller::removeFolder($folder, false); $this->assertTrue(is_dir($folder)); MODXInstaller::removeFolder($folder); $this->assertFalse(is_dir($folder)); }
MODXInstaller::quit($success); } $directories = MODXInstaller::getDirectories(); $directories = MODXInstaller::normalize($directories); $sourceDir = $tempDir . '/' . MODXInstaller::getModxDir($tempDir); $sourceDir = MODXInstaller::normalize($sourceDir); MODXInstaller::copyFiles($sourceDir, $directories); unlink($source); if (!is_dir(MODX_BASE_PATH . 'setup')) { MODXInstaller::quit('File Copy Failed'); } MODXInstaller::removeFolder($tempDir, true); /* Clear cache files but not cache folder */ $path = MODX_CORE_PATH . 'cache'; if (is_dir($path)) { MODXInstaller::removeFolder($path, false); } unlink(basename(__FILE__)); /* Log upgrade in Manager Actions log */ include MODX_CORE_PATH . 'model/modx/modx.class.php'; $modx = new modX(); $modx->initialize('web'); $modx->lexicon->load('core:default'); $modx->logManagerAction('Upgrade MODX', 'modWorkspace', $modx->lexicon('version') . ' ' . $_GET['modx'], $_GET['userId']); $modx = null; /* Forward to Setup */ header('Location: ' . $rowInstall['location']); } else { $ItemGrid = array(); foreach ($InstallData as $ver => $item) { $ItemGrid[$item['tree']][$ver] = $item;
/* See if we need to do processors path */ $modxProcessorsPath = rtrim(MODX_PROCESSORS_PATH, '/\\'); $modxProcessorsPath = str_replace('\\', '/', $modxProcessorsPath); if (strpos(MODX_PROCESSORS_PATH, 'core/model/modx/processors') === false) { $directories['core/model/modx/processors'] = $modxProcessorsPath; } /* Copy directories */ foreach ($directories as $source => $target) { set_time_limit(0); MODXInstaller::copyFolder(dirname(__FILE__) . '/temp/' . $dir . '/' . $source, $target); } MODXInstaller::removeFolder(dirname(__FILE__) . '/temp'); /* Clear cache files */ $path = MODX_CORE_PATH . 'cache'; if (is_dir($path)) { MODXInstaller::removeFolder($path); /* recreate cache dir */ MODXInstaller::mmkDir($path); } unlink(basename(__FILE__)); header('Location: ' . $rowInstall['location']); } else { $ItemGrid = array(); foreach ($InstallData as $ver => $item) { $ItemGrid[$item['tree']][$ver] = $item; } /* Display the Form */ echo ' <!DOCTYPE html> <html> <head>