From c5e9262b05d9a9ad88c17314c91fa4f32c12aa1d Mon Sep 17 00:00:00 2001 From: Alexander Ebert Date: Mon, 11 Feb 2013 17:16:07 +0100 Subject: [PATCH] Removed detection of existing WCF directories Fixes #1128 --- .../files/lib/system/WCFSetup.class.php | 25 +++++++------------ wcfsetup/setup/lang/setup_de.xml | 2 +- wcfsetup/setup/lang/setup_en.xml | 2 +- wcfsetup/setup/template/stepSearchWcfDir.tpl | 4 +-- 4 files changed, 13 insertions(+), 20 deletions(-) diff --git a/wcfsetup/install/files/lib/system/WCFSetup.class.php b/wcfsetup/install/files/lib/system/WCFSetup.class.php index 9edd8463e1..4b71822be0 100644 --- a/wcfsetup/install/files/lib/system/WCFSetup.class.php +++ b/wcfsetup/install/files/lib/system/WCFSetup.class.php @@ -449,22 +449,16 @@ class WCFSetup extends WCF { * Searches the wcf dir. */ protected function searchWcfDir() { - $foundDirectory = ''; if (self::$wcfDir) { $wcfDir = self::$wcfDir; } else { - if ($foundDirectory = FileUtil::scanFolder(INSTALL_SCRIPT_DIR, "WCF.class.php", true)) { - $foundDirectory = $wcfDir = FileUtil::unifyDirSeperator(dirname(dirname(dirname($foundDirectory))).'/'); - - if (dirname(dirname($wcfDir)).'/' == TMP_DIR) { - $foundDirectory = false; - $wcfDir = FileUtil::unifyDirSeperator(INSTALL_SCRIPT_DIR).'wcf/'; - } - } - else { - $wcfDir = FileUtil::unifyDirSeperator(INSTALL_SCRIPT_DIR).'wcf/'; - } + $wcfDir = FileUtil::unifyDirSeperator(INSTALL_SCRIPT_DIR).'wcf/'; + } + + $invalidDirectory = false; + if (@is_file($wcfDir.'lib/system/WCF.class.php')) { + $invalidDirectory = true; } // domain @@ -478,7 +472,7 @@ class WCFSetup extends WCF { WCF::getTPL()->assign(array( 'nextStep' => 'unzipFiles', - 'foundDirectory' => $foundDirectory, + 'invalidDirectory' => true, 'wcfDir' => $wcfDir, 'domainName' => $domainName, 'installScriptUrl' => $installScriptUrl, @@ -492,10 +486,9 @@ class WCFSetup extends WCF { * Unzips the files of the wcfsetup tar archive. */ protected function unzipFiles() { - // WCF seems to be installed, skip installation of files, database - // and admin account and go directly to the installation of packages + // WCF seems to be installed, abort if (@is_file(self::$wcfDir.'lib/system/WCF.class.php')) { - $this->gotoNextStep('installPackages'); + throw new SystemException('Target directory seems to be an existing installation of WCF, unable to continue.'); exit; } // WCF not yet installed, install files first diff --git a/wcfsetup/setup/lang/setup_de.xml b/wcfsetup/setup/lang/setup_de.xml index 6aa16e90c2..39975639c3 100644 --- a/wcfsetup/setup/lang/setup_de.xml +++ b/wcfsetup/setup/lang/setup_de.xml @@ -39,10 +39,10 @@ WoltLab Community Framework entpackt.]]> - WoltLab Community Framework im Ordner „{$foundDirectory}“.
Bitte überprüfen Sie diese Angabe bzw. definieren Sie ein anderes Installationsverzeichnis, wenn Sie eine neue Kopie von WoltLab Community Framework installieren möchten.]]>
+ WoltLab Community Framework im Verzeichnis „{$wcfDir}“.
Bitte definieren Sie ein anderes Installationsverzeichnis um die Installation fortzusetzen.]]>
WoltLab Community Framework über diese Adresse (URL) erreichbar.]]> diff --git a/wcfsetup/setup/lang/setup_en.xml b/wcfsetup/setup/lang/setup_en.xml index 2b8edca404..e6cac48b27 100644 --- a/wcfsetup/setup/lang/setup_en.xml +++ b/wcfsetup/setup/lang/setup_en.xml @@ -39,10 +39,10 @@ WoltLab Community Framework will be extracted into the installation-folder.]]> - WoltLab Community Framework in the “{$foundDirectory}” folder.
If you would like to install a new copy of the WoltLab Community Framework, then please enter an alternative installation folder.]]>
+ WoltLab Community Framework in the “{$wcfDir}” folder.
Please enter an alternative installation folder to continue installation.]]>
WoltLab Community Framework through this address (URL).]]> diff --git a/wcfsetup/setup/template/stepSearchWcfDir.tpl b/wcfsetup/setup/template/stepSearchWcfDir.tpl index e4942ec3cd..42be50e817 100644 --- a/wcfsetup/setup/template/stepSearchWcfDir.tpl +++ b/wcfsetup/setup/template/stepSearchWcfDir.tpl @@ -87,8 +87,8 @@ -{if $foundDirectory} -

{lang}wcf.global.wcfDir.foundDirectory{/lang}

+{if $invalidDirectory} +

{lang}wcf.global.wcfDir.error.invalidDirectory{/lang}

{/if} {if $exception|isset} -- 2.20.1