Remove files for the upgrade 5.5 → 6.0
authorAlexander Ebert <ebert@woltlab.com>
Sat, 22 Jun 2024 12:08:12 +0000 (14:08 +0200)
committerAlexander Ebert <ebert@woltlab.com>
Sat, 22 Jun 2024 12:08:12 +0000 (14:08 +0200)
17 files changed:
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0.3.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_articleOrphans.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkAttachmentStorage.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkCache.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkForMultiDomainSetup.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkSystemRequirements.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkUpdateServers.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_favicon.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_initBootstrap.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_landingPage.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_license.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_reaction_fk_step1.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_removeDownloadedGravatars.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_removeLegacyAppConfig.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_skipFirstTimeSetup.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_styleVariables.php [deleted file]
wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_trophies.php [deleted file]

diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0.3.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0.3.php
deleted file mode 100644 (file)
index a8c42e0..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-/**
- * Fixes the style variable value of `individualScssDarkMode`.
- *
- * @author Alexander Ebert
- * @copyright 2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\WCF;
-
-// Fix the default value for style variables.
-$sql = "UPDATE  wcf1_style_variable
-        SET     defaultValueDarkMode = ?
-        WHERE   variableName = ?";
-$statement = WCF::getDB()->prepare($sql);
-$statement->execute([null, 'individualScssDarkMode']);
-
-// Fixes any bad values stored for existing styles.
-$sql = "UPDATE  wcf1_style_variable_value
-        SET     variableValueDarkMode = ?
-        WHERE   variableID = (
-                    SELECT  variableID
-                    FROM    wcf1_style_variable
-                    WHERE   variableName = ?
-                )";
-$statement = WCF::getDB()->prepare($sql);
-$statement->execute([null, 'individualScssDarkMode']);
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_articleOrphans.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_articleOrphans.php
deleted file mode 100644 (file)
index f036ed8..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-/**
- * Removes orphaned articles.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\data\article\ArticleAction;
-use wcf\system\package\SplitNodeException;
-use wcf\system\WCF;
-
-$sql = "SELECT  articleID
-        FROM    wcf1_article
-        WHERE   categoryID IS NULL";
-$statement = WCF::getDB()->prepare($sql, 50);
-$statement->execute();
-$articleIDs = $statement->fetchAll(\PDO::FETCH_COLUMN);
-
-if ($articleIDs === []) {
-    return;
-}
-
-$articleAction = new ArticleAction($articleIDs, 'delete');
-$articleAction->executeAction();
-
-// Repeat the deletion if any article was deleted. If no deletable articles
-// remain, the script will abort further above.
-throw new SplitNodeException();
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkAttachmentStorage.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkAttachmentStorage.php
deleted file mode 100644 (file)
index b036f51..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-/**
- * Checks if an alternative attachment storage is configured.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2022 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\WCF;
-
-if (\defined('ATTACHMENT_STORAGE') && ATTACHMENT_STORAGE) {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = \sprintf(
-            "Die Unterst&uuml;tzung f&uuml;r einen alternativen Speicherort von Dateianh&auml;ngen wird mit dem Upgrade entfernt. Es ist notwendig die Dateianh&auml;nge in das Standardverzeichnis '%s' zu verschieben und anschlie&szlig;end die PHP-Konstante 'ATTACHMENT_STORAGE' zu entfernen.",
-            WCF_DIR . 'attachments/'
-        );
-    } else {
-        $message = \sprintf(
-            "The support for an alternative attachment storage location will be removed during the upgrade. It is required to move the attachments into the default directory '%s' and then to remove the PHP constant 'ATTACHMENT_STORAGE'.",
-            WCF_DIR . 'attachments/'
-        );
-    }
-
-    throw new \RuntimeException($message);
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkCache.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkCache.php
deleted file mode 100644 (file)
index 5e5cc86..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-/**
- * Checks for Memcached as the configured cache.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2022 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\WCF;
-
-if (CACHE_SOURCE_TYPE === 'memcached') {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = "Die Unterst&uuml;tzung f&uuml;r Memcached wird mit dem Upgrade entfernt. Es ist notwendig, auf einen anderen Cache umzustellen.";
-    } else {
-        $message = "The support for Memcached will be removed during the upgrade. It is required to configure a different cache.";
-    }
-
-    throw new \RuntimeException($message);
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkForMultiDomainSetup.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkForMultiDomainSetup.php
deleted file mode 100644 (file)
index 4d51aa4..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-use wcf\system\application\ApplicationHandler;
-use wcf\system\WCF;
-
-$domainName = ApplicationHandler::getInstance()->getApplicationByID(1)->domainName;
-foreach (ApplicationHandler::getInstance()->getApplications() as $application) {
-    if ($application->domainName !== $domainName) {
-        if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-            $message = "Die installierten Apps befinden sich auf unterschiedlichen Domains.";
-        } else {
-            $message = "The installed apps are running on different domains.";
-        }
-
-        throw new \RuntimeException($message);
-    }
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkSystemRequirements.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkSystemRequirements.php
deleted file mode 100644 (file)
index 456b310..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-
-/**
- * Checks the increased system requirements.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2022 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\WCF;
-
-$phpVersion = \PHP_VERSION;
-$neededPhpVersion = '8.1.2';
-if (!\version_compare($phpVersion, $neededPhpVersion, '>=')) {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = "Ihre PHP-Version '{$phpVersion}' ist unzureichend f&uuml;r die Installation dieser Software. PHP-Version {$neededPhpVersion} oder h&ouml;her wird ben&ouml;tigt.";
-    } else {
-        $message = "Your PHP version '{$phpVersion}' is insufficient for installation of this software. PHP version {$neededPhpVersion} or greater is required.";
-    }
-
-    throw new \RuntimeException($message);
-}
-
-if (\PHP_INT_SIZE != 8) {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = "Die eingesetzte PHP-Version muss 64-Bit-Ganzzahlen unterst&uuml;tzen.";
-    } else {
-        $message = "The PHP version must support 64-bit integers.";
-    }
-
-    throw new \RuntimeException($message);
-}
-
-if (!\extension_loaded('intl')) {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = "Die 'intl' PHP-Erweiterung muss aktiv sein.";
-    } else {
-        $message = "The 'intl' PHP extension needs to be enabled.";
-    }
-
-    throw new \RuntimeException($message);
-}
-
-$sqlVersion = WCF::getDB()->getVersion();
-$compareSQLVersion = \preg_replace('/^(\d+\.\d+\.\d+).*$/', '\\1', $sqlVersion);
-if (\stripos($sqlVersion, 'MariaDB') !== false) {
-    $neededSqlVersion = '10.5.15';
-    $sqlFork = 'MariaDB';
-} else {
-    $sqlFork = 'MySQL';
-    $neededSqlVersion = '8.0.30';
-}
-
-if (!\version_compare($compareSQLVersion, $neededSqlVersion, '>=')) {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = "Ihre {$sqlFork}-Version '{$sqlVersion}' ist unzureichend f&uuml;r die Installation dieser Software. {$sqlFork}-Version {$neededSqlVersion} oder h&ouml;her wird ben&ouml;tigt.";
-    } else {
-        $message = "Your {$sqlFork} version '{$sqlVersion}' is insufficient for installation of this software. {$sqlFork} version {$neededSqlVersion} or greater is required.";
-    }
-
-    throw new \RuntimeException($message);
-}
-
-$sql = "SELECT 1";
-$statement = WCF::getDB()->prepareStatement($sql);
-$statement->execute();
-if ($statement->fetchSingleColumn() !== 1) {
-    if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-        $message = "F&uuml;r die Kommunikation mit dem MySQL-Server muss PHPs MySQL Native Driver verwendet werden.";
-    } else {
-        $message = "PHP's MySQL Native Driver must be used for communication with the MySQL server.";
-    }
-
-    throw new \RuntimeException($message);
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkUpdateServers.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_checkUpdateServers.php
deleted file mode 100644 (file)
index 74f92ba..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/**
- * Checks for non-TLS update servers.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2022 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use Laminas\Diactoros\Uri;
-use wcf\data\package\update\server\PackageUpdateServerList;
-use wcf\system\WCF;
-
-$list = new PackageUpdateServerList();
-$list->readObjects();
-
-foreach ($list as $server) {
-    $uri = new Uri($server->serverURL);
-
-    if ($uri->getScheme() !== 'https') {
-        if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-            $message = "Der Paketserver '{$uri}' verwendet das unverschl&uuml;sselte http-Protokoll.";
-        } else {
-            $message = "The package server '{$uri}' uses the unencrypted 'http' scheme.";
-        }
-
-        throw new \RuntimeException($message);
-    }
-    if ($uri->getPort()) {
-        if (WCF::getLanguage()->getFixedLanguageCode() === 'de') {
-            $message = "Der Paketserver '{$uri}' verwendet nicht den Standard-Port.";
-        } else {
-            $message = "The package server '{$uri}' uses a non-standard port.";
-        }
-
-        throw new \RuntimeException($message);
-    }
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_favicon.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_favicon.php
deleted file mode 100644 (file)
index c3c04bc..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-
-/**
- * Recreates all favicon thumbnails.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\data\style\StyleEditor;
-use wcf\data\style\StyleList;
-use wcf\system\image\ImageHandler;
-
-$styleList = new StyleList();
-$styleList->readObjects();
-
-$images = [
-    'favicon-48x48.png' => 48,
-    'android-chrome-192x192.png' => 192,
-    'android-chrome-256x256.png' => 256,
-    'apple-touch-icon.png' => 180,
-    'mstile-150x150.png' => 150,
-];
-
-foreach ($styleList as $style) {
-    $style->loadVariables();
-    $variables = $style->getVariables();
-    $styleEditor = new StyleEditor($style);
-
-    foreach (['png', 'jpg', 'gif'] as $extension) {
-        $templatePath = $style->getAssetPath() . "favicon-template." . $extension;
-        if (\file_exists($templatePath)) {
-            $adapter = ImageHandler::getInstance()->getAdapter();
-            $adapter->loadFile($templatePath);
-
-            foreach ($images as $filename => $length) {
-                $thumbnail = $adapter->createThumbnail($length, $length);
-                $adapter->writeImage($thumbnail, $style->getAssetPath() . $filename);
-                // Clear thumbnail as soon as possible to free up the memory.
-                $thumbnail = null;
-            }
-
-            break;
-        }
-    }
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_initBootstrap.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_initBootstrap.php
deleted file mode 100644 (file)
index 9bce40d..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/**
- * Creates an empty bootstrap file if it does not exist. This prevents a misleading
- * error message added to the log when it is initialized for the first time.
- *
- * @author Alexander Ebert
- * @copyright 2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-namespace wcf\acp;
-
-use wcf\system\io\AtomicWriter;
-
-// Variable taken from 'WCF::BOOTSTRAP_LOADER' which is not defined yet.
-$BOOTSTRAP_LOADER = \WCF_DIR . '/lib/bootstrap.php';
-
-if (\file_exists($BOOTSTRAP_LOADER)) {
-    return;
-}
-
-$writer = new AtomicWriter($BOOTSTRAP_LOADER);
-$writer->write(
-    <<<'EOT'
-        <?php
-        return [];
-        EOT
-);
-$writer->flush();
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_landingPage.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_landingPage.php
deleted file mode 100644 (file)
index b0b2f7b..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-/**
- * Updates WCF'S landingPageID in wcf1_application from the wcf1_page data.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\WCF;
-
-$columns = \array_map(
-    strtolower(...),
-    \array_column(
-        WCF::getDB()->getEditor()->getColumns('wcf' . WCF_N . '_page'),
-        'name'
-    )
-);
-
-if (\in_array('islandingpage', $columns)) {
-    $sql = "SELECT  pageID
-            FROM    wcf1_page
-            WHERE   isLandingPage = ?";
-    $statement = WCF::getDB()->prepare($sql);
-    $statement->execute([
-        1,
-    ]);
-    $landingPageID = $statement->fetchSingleColumn();
-
-    $sql = "UPDATE  wcf1_application
-            SET     landingPageID = ?
-            WHERE   packageID = ?";
-    $statement = WCF::getDB()->prepare($sql);
-    $statement->execute([
-        $landingPageID ?: null,
-        1,
-    ]);
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_license.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_license.php
deleted file mode 100644 (file)
index a208a82..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-/**
- * Validates the license credentials and writes the license file.
- *
- * @author Alexander Ebert
- * @copyright 2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\data\package\update\server\PackageUpdateServer;
-use wcf\data\package\update\server\PackageUpdateServerEditor;
-use wcf\system\package\license\LicenseApi;
-
-try {
-    $licenseApi = new LicenseApi();
-    $licenseData = $licenseApi->fetchFromRemote();
-    $licenseApi->updateLicenseFile($licenseData);
-
-    // If we’re still here it means that the credentials are actually valid. Now
-    // we can check if the credentials for both servers are in sync, because
-    // traditionally users could use their account credentials to authenticate.
-    $updateServer = PackageUpdateServer::getWoltLabUpdateServer();
-    $storeServer = PackageUpdateServer::getPluginStoreServer();
-
-    if ($updateServer->getAuthData() !== $storeServer->getAuthData()) {
-        $authData = $updateServer->getAuthData();
-
-        (new PackageUpdateServerEditor($storeServer))->update([
-            'username' => $authData['username'],
-            'password' => $authData['password'],
-        ]);
-    }
-} catch (\Throwable) {
-    // This action must be silent, failing to execute is not an issue here.
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_reaction_fk_step1.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_reaction_fk_step1.php
deleted file mode 100644 (file)
index d521442..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-
-namespace wcf\acp;
-
-/**
- * Remove extraneous foreign keys on `wcf1_like.reactionTypeID` that use generic
- * `*_ibfk` names
- *
- * @author Alexander Ebert
- * @copyright 2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\WCF;
-
-$databaseEditor = WCF::getDB()->getEditor();
-$tableName = 'wcf' . WCF_N . '_like';
-foreach ($databaseEditor->getForeignKeys($tableName) as $foreignKey => $columnData) {
-    if ($columnData['columns'] !== ['reactionTypeID']) {
-        continue;
-    }
-
-    if ($columnData['referencedColumns'] !== ['reactionTypeID']) {
-        continue;
-    }
-
-    if ($columnData['referencedTable'] !== 'wcf' . WCF_N . '_reaction_type') {
-        continue;
-    }
-
-    $databaseEditor->dropForeignKey($tableName, $foreignKey);
-
-    $sql = "DELETE FROM wcf1_package_installation_sql_log
-            WHERE       sqlTable = ?
-                    AND sqlIndex = ?";
-    $statement = WCF::getDB()->prepare($sql);
-    $statement->execute([
-        $tableName,
-        $foreignKey,
-    ]);
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_removeDownloadedGravatars.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_removeDownloadedGravatars.php
deleted file mode 100644 (file)
index 436b2e1..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-
-/**
- * Removes the downloaded gravatars.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\system\package\SplitNodeException;
-
-if (!\is_dir(WCF_DIR . 'images/avatars/gravatars/')) {
-    return;
-}
-
-$deleted = 0;
-foreach (new \DirectoryIterator(WCF_DIR . 'images/avatars/gravatars/') as $fileInfo) {
-    if (!$fileInfo->isFile()) {
-        continue;
-    }
-
-    if (!\preg_match('/^[0-9a-f]{32}-[0-9]+\.(png|gif|jpe?g)$/', $fileInfo->getBasename())) {
-        continue;
-    }
-
-    \unlink($fileInfo->getPathname());
-    $deleted++;
-
-    if ($deleted > 500) {
-        throw new SplitNodeException();
-    }
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_removeLegacyAppConfig.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_removeLegacyAppConfig.php
deleted file mode 100644 (file)
index d402617..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-/**
- * Removes the legacy config.inc.php from application directories.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2022 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\data\application\ApplicationList;
-use wcf\util\FileUtil;
-
-$list = new ApplicationList();
-$list->readObjects();
-
-foreach ($list as $application) {
-    $package = $application->getPackage();
-
-    if ($package->package === 'com.woltlab.wcf') {
-        continue;
-    }
-
-    $legacyConfig = FileUtil::addTrailingSlash(WCF_DIR . $package->packageDir) . 'config.inc.php';
-
-    if (\file_exists($legacyConfig) && \md5_file($legacyConfig) === 'e13ffdb5262e68a066d2486e468df685') {
-        \unlink($legacyConfig);
-    }
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_skipFirstTimeSetup.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_skipFirstTimeSetup.php
deleted file mode 100644 (file)
index 1a281a1..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-/**
- * Marks the first time setup as completed during the upgrade.
- *
- * @author Tim Duesterhus
- * @copyright 2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\data\option\Option;
-use wcf\data\option\OptionAction;
-
-$objectAction = new OptionAction(
-    [],
-    'updateAll',
-    [
-        'data' => [
-            Option::getOptionByName('first_time_setup_state')->optionID => -1,
-        ],
-    ]
-);
-$objectAction->executeAction();
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_styleVariables.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_styleVariables.php
deleted file mode 100644 (file)
index 01cf73a..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-<?php
-
-use wcf\system\WCF;
-
-$styleVariables = [
-    ['messageSidebarOrientation', 'left', null],
-    ['pageLogoWidth', '281', null],
-    ['pageLogoHeight', '40', null],
-    ['useFluidLayout', '1', null],
-    ['wcfButtonBackground', 'rgba(207, 216, 220, 1)', 'rgba(47, 57, 76, 1)'],
-    ['wcfButtonBackgroundActive', 'rgba(120, 144, 156, 1)', 'rgba(37, 45, 60, 1)'],
-    ['wcfButtonDisabledBackground', 'rgba(223, 223, 223, 1)', 'rgba(38, 39, 42, 1)'],
-    ['wcfButtonDisabledText', 'rgba(165, 165, 165, 1)', 'rgba(112, 115, 118, 1)'],
-    ['wcfButtonPrimaryBackground', 'rgba(29, 122, 197, 1)', 'rgba(1, 87, 155, 1)'],
-    ['wcfButtonPrimaryBackgroundActive', 'rgba(26, 107, 173, 1)', 'rgba(1, 75, 132, 1)'],
-    ['wcfButtonPrimaryText', 'rgba(255, 255, 255, 1)', 'rgba(231, 236, 245, 1)'],
-    ['wcfButtonPrimaryTextActive', 'rgba(255, 255, 255, 1)', 'rgba(231, 236, 245, 1)'],
-    ['wcfButtonText', 'rgba(33, 33, 33, 1)', 'rgba(230, 231, 234, 1)'],
-    ['wcfButtonTextActive', 'rgba(255, 255, 255, 1)', 'rgba(230, 231, 234, 1)'],
-    ['wcfContentBackground', 'rgba(250, 250, 250, 1)', 'rgba(26, 29, 33, 1)'],
-    ['wcfContentBorder', 'rgba(65, 121, 173, 1)', 'rgba(98, 113, 136, 1)'],
-    ['wcfContentBorderInner', 'rgba(224, 224, 224, 1)', 'rgba(54, 55, 59, 1)'],
-    ['wcfContentContainerBackground', 'rgba(255, 255, 255, 1)', 'rgba(34, 37, 41, 1)'],
-    ['wcfContentContainerBorder', 'rgba(236, 241, 247, 1)', 'rgba(54, 55, 59, 1)'],
-    ['wcfContentDimmedLink', 'rgba(52, 73, 94, 1)', 'rgba(29, 155, 209, 1)'],
-    ['wcfContentDimmedLinkActive', 'rgba(52, 73, 94, 1)', 'rgba(64, 179, 228, 1)'],
-    ['wcfContentDimmedText', 'rgba(113, 117, 122, 1)', 'rgba(138, 140, 143, 1)'],
-    ['wcfContentHeadlineBorder', 'rgba(238, 238, 238, 1)', 'rgba(54, 55, 59, 1)'],
-    ['wcfContentHeadlineLink', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfContentHeadlineLinkActive', 'rgba(58, 58, 61, 1)', 'rgba(158, 158, 158, 1)'],
-    ['wcfContentHeadlineText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfContentLink', 'rgba(38, 113, 166, 1)', 'rgba(29, 155, 209, 1)'],
-    ['wcfContentLinkActive', 'rgba(22, 81, 124, 1)', 'rgba(64, 179, 228, 1)'],
-    ['wcfContentText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfDropdownBackground', 'rgba(255, 255, 255, 1)', 'rgba(34, 37, 41, 1)'],
-    ['wcfDropdownBackgroundActive', 'rgba(238, 238, 238, 1)', 'rgba(44, 49, 59, 1)'],
-    ['wcfDropdownBorderInner', 'rgba(238, 238, 238, 1)', 'rgba(54, 55, 59, 1)'],
-    ['wcfDropdownLink', 'rgba(33, 33, 33, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfDropdownLinkActive', 'rgba(33, 33, 33, 1)', 'rgba(239, 239, 239, 1)'],
-    ['wcfDropdownText', 'rgba(33, 33, 33, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfEditorButtonBackground', 'rgba(58, 109, 156, 1)', 'rgba(47, 57, 76, 1)'],
-    ['wcfEditorButtonBackgroundActive', 'rgba(36, 66, 95, 1)', 'rgba(37, 45, 60, 1)'],
-    ['wcfEditorButtonText', 'rgba(255, 255, 255, 1)', 'rgba(230, 231, 234, 1)'],
-    ['wcfEditorButtonTextActive', 'rgba(255, 255, 255, 1)', 'rgba(230, 231, 234, 1)'],
-    ['wcfEditorButtonTextDisabled', 'rgba(165, 165, 165, 1)', 'rgba(118, 125, 137, 1)'],
-    ['wcfEditorTableBorder', 'rgba(221, 221, 221, 1)', 'rgba(221, 221, 221, 1)'],
-    ['wcfFontFamilyFallback', 'system', null],
-    ['wcfFontLineHeight', '1.48', null],
-    ['wcfFontSizeDefault', '15px', null],
-    ['wcfFontSizeHeadline', '18px', null],
-    ['wcfFontSizeSection', '23px', null],
-    ['wcfFontSizeSmall', '12px', null],
-    ['wcfFontSizeTitle', '28px', null],
-    ['wcfFooterBackground', 'rgba(58, 109, 156, 1)', 'rgba(30, 39, 52, 1)'],
-    ['wcfFooterBoxBackground', 'rgba(236, 239, 241, 1)', 'rgba(26, 34, 45, 1)'],
-    ['wcfFooterBoxHeadlineLink', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfFooterBoxHeadlineLinkActive', 'rgba(58, 58, 61, 1)', 'rgba(255, 255, 255, 1)'],
-    ['wcfFooterBoxHeadlineText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfFooterBoxLink', 'rgba(38, 113, 166, 1)', 'rgba(29, 155, 209, 1)'],
-    ['wcfFooterBoxLinkActive', 'rgba(22, 81, 124, 1)', 'rgba(64, 179, 228, 1)'],
-    ['wcfFooterBoxText', 'rgba(58, 58, 61, 1)', 'rgba(158, 158, 158, 1)'],
-    ['wcfFooterCopyrightBackground', 'rgba(50, 92, 132, 1)', 'rgba(36, 46, 61, 1)'],
-    ['wcfFooterCopyrightLink', 'rgba(217, 220, 222, 1)', 'rgba(182, 184, 185, 1)'],
-    ['wcfFooterCopyrightLinkActive', 'rgba(255, 255, 255, 1)', 'rgba(217, 220, 222, 1)'],
-    ['wcfFooterCopyrightText', 'rgba(217, 220, 222, 1)', 'rgba(182, 184, 185, 1)'],
-    ['wcfFooterHeadlineLink', 'rgba(255, 255, 255, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfFooterHeadlineLinkActive', 'rgba(255, 255, 255, 1)', 'rgba(255, 255, 255, 1)'],
-    ['wcfFooterHeadlineText', 'rgba(233, 235, 236, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfFooterLink', 'rgba(255, 255, 255, 1)', 'rgba(30, 163, 220, 1)'],
-    ['wcfFooterLinkActive', 'rgba(255, 255, 255, 1)', 'rgba(75, 184, 231, 1)'],
-    ['wcfFooterText', 'rgba(217, 220, 222, 1)', 'rgba(158, 158, 158, 1)'],
-    ['wcfHeaderBackground', 'rgba(58, 109, 156, 1)', 'rgba(30, 39, 52, 1)'],
-    ['wcfHeaderText', 'rgba(255, 255, 255, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfHeaderLink', 'rgba(255, 255, 255, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfHeaderLinkActive', 'rgba(255, 255, 255, 1)', 'rgba(255, 255, 255, 1)'],
-    ['wcfHeaderMenuBackground', 'rgba(50, 92, 132, 1)', 'rgba(36, 46, 61, 1)'],
-    ['wcfHeaderMenuLinkBackground', 'rgba(43, 79, 113, 1)', 'rgba(36, 46, 61, 1)'],
-    ['wcfHeaderMenuLinkBackgroundActive', 'rgba(36, 66, 95, 1)', 'rgba(43, 56, 74, 1)'],
-    ['wcfHeaderMenuLink', 'rgba(255, 255, 255, 1)', 'rgba(183, 186, 191, 1)'],
-    ['wcfHeaderMenuLinkActive', 'rgba(255, 255, 255, 1)', 'rgba(224, 227, 230, 1)'],
-    ['wcfHeaderMenuDropdownBackground', 'rgba(36, 66, 95, 1)', 'rgba(43, 56, 74, 1)'],
-    ['wcfHeaderMenuDropdownBackgroundActive', 'rgba(65, 121, 173, 1)', 'rgba(38, 49, 64, 1)'],
-    ['wcfHeaderMenuDropdownLink', 'rgba(255, 255, 255, 1)', 'rgba(224, 227, 230, 1)'],
-    ['wcfHeaderMenuDropdownLinkActive', 'rgba(255, 255, 255, 1)', 'rgba(229, 231, 234, 1)'],
-    ['wcfHeaderSearchBoxBackground', 'rgba(50, 92, 132, 1)', 'rgba(36, 46, 61, 1)'],
-    ['wcfHeaderSearchBoxBackgroundActive', 'rgba(50, 92, 132, 1)', 'rgba(43, 56, 74, 1)'],
-    ['wcfHeaderSearchBoxText', 'rgba(255, 255, 255, 1)', 'rgba(255, 255, 255, 1)'],
-    ['wcfHeaderSearchBoxTextActive', 'rgba(255, 255, 255, 1)', 'rgba(255, 255, 255, 1)'],
-    ['wcfHeaderSearchBoxPlaceholder', 'rgba(207, 207, 207, 1)', 'rgba(207, 207, 207, 1)'],
-    ['wcfHeaderSearchBoxPlaceholderActive', 'rgba(207, 207, 207, 1)', 'rgba(207, 207, 207, 1)'],
-    ['wcfInputBackground', 'rgba(241, 246, 251, 1)', 'rgba(26, 29, 33, 1)'],
-    ['wcfInputBackgroundActive', 'rgba(241, 246, 251, 1)', 'rgba(26, 29, 33, 1)'],
-    ['wcfInputBorder', 'rgba(176, 200, 224, 1)', 'rgba(87, 88, 86, 1)'],
-    ['wcfInputBorderActive', 'rgba(41, 128, 185, 1)', 'rgba(173, 174, 175, 1)'],
-    ['wcfInputDisabledBackground', 'rgba(245, 245, 245, 1)', 'rgba(34, 37, 41, 1)'],
-    ['wcfInputDisabledBorder', 'rgba(174, 176, 179, 1)', 'rgba(56, 56, 57, 1)'],
-    ['wcfInputDisabledText', 'rgba(125, 130, 100, 1)', 'rgba(118, 119, 121, 1)'],
-    ['wcfInputLabel', 'rgba(59, 109, 169, 1)', 'rgba(144, 164, 174, 1)'],
-    ['wcfInputText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfInputTextActive', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfInputPlaceholder', 'rgba(169, 169, 169, 1)', 'rgba(122, 123, 125, 1)'],
-    ['wcfInputPlaceholderActive', 'rgba(204, 204, 204, 1)', 'rgba(122, 123, 125, 1)'],
-    ['wcfLayoutFixedWidth', '1200px', null],
-    ['wcfLayoutMaxWidth', '1400px', null],
-    ['wcfLayoutMinWidth', '1000px', null],
-    ['wcfNavigationBackground', 'rgba(236, 239, 241, 1)', 'rgba(26, 34, 45, 1)'],
-    ['wcfNavigationLink', 'rgba(58, 58, 61, 1)', 'rgba(179, 182, 185, 1)'],
-    ['wcfNavigationLinkActive', 'rgba(58, 58, 61, 1)', 'rgba(205, 207, 208, 1)'],
-    ['wcfNavigationText', 'rgba(170, 170, 170, 1)', 'rgba(179, 182, 185, 1)'],
-    ['wcfSidebarBackground', 'rgba(236, 241, 247, 1)', 'rgba(30, 39, 52, 1)'],
-    ['wcfSidebarDimmedLink', 'rgba(58, 58, 61, 1)', 'rgba(29, 155, 209, 1)'],
-    ['wcfSidebarDimmedLinkActive', 'rgba(58, 58, 61, 1)', 'rgba(64, 179, 228, 1)'],
-    ['wcfSidebarDimmedText', 'rgba(105, 109, 114, 1)', 'rgba(139, 141, 145, 1)'],
-    ['wcfSidebarHeadlineLink', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfSidebarHeadlineLinkActive', 'rgba(58, 58, 61, 1)', 'rgba(158, 158, 158, 1)'],
-    ['wcfSidebarHeadlineText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfSidebarLink', 'rgba(38, 113, 166, 1)', 'rgba(29, 155, 209, 1)'],
-    ['wcfSidebarLinkActive', 'rgba(22, 81, 124, 1)', 'rgba(64, 179, 228, 1)'],
-    ['wcfSidebarText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfStatusErrorBackground', 'rgba(242, 222, 222, 1)', 'rgba(116, 38, 30, 1)'],
-    ['wcfStatusErrorBorder', 'rgba(235, 204, 204, 1)', 'rgba(139, 46, 36, 1)'],
-    ['wcfStatusErrorLink', 'rgba(132, 53, 52, 1)', 'rgba(201, 170, 165, 1)'],
-    ['wcfStatusErrorLinkActive', 'rgba(132, 53, 52, 1)', 'rgba(201, 170, 165, 1)'],
-    ['wcfStatusErrorText', 'rgba(169, 68, 66, 1)', 'rgba(201, 170, 165, 1)'],
-    ['wcfStatusInfoBackground', 'rgba(217, 237, 247, 1)', 'rgba(12, 81, 92, 1)'],
-    ['wcfStatusInfoBorder', 'rgba(188, 223, 241, 1)', 'rgba(14, 97, 110, 1)'],
-    ['wcfStatusInfoLink', 'rgba(36, 82, 105, 1)', 'rgba(171, 191, 196, 1)'],
-    ['wcfStatusInfoLinkActive', 'rgba(36, 82, 105, 1)', 'rgba(171, 191, 196, 1)'],
-    ['wcfStatusInfoText', 'rgba(49, 112, 143, 1)', 'rgba(171, 191, 196, 1)'],
-    ['wcfStatusSuccessBackground', 'rgba(223, 240, 216, 1)', 'rgba(0, 94, 70, 1)'],
-    ['wcfStatusSuccessBorder', 'rgba(208, 233, 198, 1)', 'rgba(0, 113, 84, 1)'],
-    ['wcfStatusSuccessLink', 'rgba(43, 84, 44, 1)', 'rgba(180, 203, 195, 1)'],
-    ['wcfStatusSuccessLinkActive', 'rgba(43, 84, 44, 1)', 'rgba(180, 203, 195, 1)'],
-    ['wcfStatusSuccessText', 'rgba(60, 118, 61, 1)', 'rgba(180, 203, 195, 1)'],
-    ['wcfStatusWarningBackground', 'rgba(252, 248, 227, 1)', 'rgba(122, 78, 9, 1)'],
-    ['wcfStatusWarningBorder', 'rgba(250, 242, 204, 1)', 'rgba(146, 94, 11, 1)'],
-    ['wcfStatusWarningLink', 'rgba(102, 81, 44, 1)', 'rgba(221, 209, 194, 1)'],
-    ['wcfStatusWarningLinkActive', 'rgba(102, 81, 44, 1)', 'rgba(221, 209, 194, 1)'],
-    ['wcfStatusWarningText', 'rgba(138, 109, 59, 1)', 'rgba(221, 209, 194, 1)'],
-    ['wcfTabularBoxBackgroundActive', 'rgba(242, 242, 242, 1)', 'rgba(30, 33, 36, 1)'],
-    ['wcfTabularBoxBorderInner', 'rgba(238, 238, 238, 1)', 'rgba(54, 55, 59, 1)'],
-    ['wcfTabularBoxHeadline', 'rgba(38, 113, 166, 1)', 'rgba(29, 155, 209, 1)'],
-    ['wcfTabularBoxHeadlineActive', 'rgba(22, 81, 124, 1)', 'rgba(64, 179, 228, 1)'],
-    ['wcfTextShadowDark', 'rgba(0, 0, 0, .8)', 'rgba(0, 0, 0, .8)'],
-    ['wcfTextShadowLight', 'rgba(255, 255, 255, .8)', 'rgba(255, 255, 255, .8)'],
-    ['wcfTooltipBackground', 'rgba(0, 0, 0, .8)', 'rgba(0, 0, 0, .8)'],
-    ['wcfTooltipText', 'rgba(255, 255, 255, 1)', 'rgba(255, 255, 255, 1)'],
-    ['wcfUserMenuBackground', 'rgba(255, 255, 255, 1)', 'rgba(34, 37, 41, 1)'],
-    ['wcfUserMenuBackgroundActive', 'rgba(239, 239, 239, 1)', 'rgba(44, 49, 59, 1)'],
-    ['wcfUserMenuText', 'rgba(58, 58, 61, 1)', 'rgba(209, 210, 211, 1)'],
-    ['wcfUserMenuTextActive', 'rgba(58, 58, 61, 1)', 'rgba(239, 239, 239, 1)'],
-    ['wcfUserMenuTextDimmed', 'rgba(108, 108, 108, 1)', 'rgba(149, 152, 156, 1)'],
-    ['wcfUserMenuIndicator', 'rgba(49, 138, 220, 1)', 'rgba(49, 138, 220, 1)'],
-    ['wcfUserMenuBorder', 'rgba(221, 221, 221, 1)', 'rgba(54, 55, 59, 1)'],
-    ['wcfSidebarBorder', 'rgba(236, 241, 247, 0)', 'rgba(57, 65, 77, 1)'],
-    ['individualScssDarkMode', '', null],
-    ['wcfHeaderMenuDropdownBorder', 'rgba(36, 66, 95, 1)', 'rgba(36, 66, 95, 1)'],
-];
-
-$sql = "INSERT INTO             wcf1_style_variable
-                                (variableName, defaultValue, defaultValueDarkMode)
-        VALUES                  (?, ?, ?)
-        ON DUPLICATE KEY UPDATE defaultValue = VALUES(defaultValue),
-                                defaultValueDarkMode = VALUES(defaultValueDarkMode)";
-$statement = WCF::getDB()->prepare($sql);
-
-foreach ($styleVariables as $data) {
-    [$variableName, $defaultValue, $defaultValueDarkMode] = $data;
-
-    $statement->execute([
-        $variableName,
-        $defaultValue,
-        $defaultValueDarkMode,
-    ]);
-}
diff --git a/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_trophies.php b/wcfsetup/install/files/acp/update_com.woltlab.wcf_6.0_trophies.php
deleted file mode 100644 (file)
index 58682bf..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-<?php
-
-/**
- * Updates icon-based trophies to the FA 6 names.
- *
- * @author  Tim Duesterhus
- * @copyright   2001-2023 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- */
-
-use wcf\data\trophy\Trophy;
-use wcf\data\trophy\TrophyCache;
-use wcf\system\style\exception\UnknownIcon;
-use wcf\system\style\FontAwesomeIcon;
-use wcf\system\WCF;
-
-WCF::getDB()->beginTransaction();
-
-$sql = "SELECT  trophyID, iconName
-        FROM    wcf1_trophy
-        WHERE   type = ?
-            AND iconName IS NOT NULL
-            AND iconName <> ?";
-$statement = WCF::getDB()->prepare($sql);
-$statement->execute([
-    Trophy::TYPE_BADGE,
-    '[]',
-]);
-$iconData = $statement->fetchMap('trophyID', 'iconName');
-
-$sql = "UPDATE  wcf1_trophy
-        SET     iconName = ?
-        WHERE   trophyID = ?";
-$statement = WCF::getDB()->prepare($sql);
-foreach ($iconData as $trophyID => $oldIconName) {
-    // No modification if the icon already contains a semicolon
-    // (implying it already was migrated).
-    if (\str_contains($oldIconName, ';')) {
-        continue;
-    }
-
-    try {
-        $newIconName = FontAwesomeIcon::mapVersion4($oldIconName);
-    } catch (UnknownIcon $e) {
-        // If the old icon is unknown we replace it with a placeholder.
-        \wcf\functions\exception\logThrowable($e);
-
-        $newIconName = FontAwesomeIcon::fromString('trophy;false')->__toString();
-    }
-
-    $statement->execute([
-        $newIconName,
-        $trophyID,
-    ]);
-}
-
-WCF::getDB()->commitTransaction();
-
-TrophyCache::getInstance()->clearCache();