diff --git a/apps/dav/lib/Connector/Sabre/MaintenancePlugin.php b/apps/dav/lib/Connector/Sabre/MaintenancePlugin.php index 21bffcdb29..36110c81db 100644 --- a/apps/dav/lib/Connector/Sabre/MaintenancePlugin.php +++ b/apps/dav/lib/Connector/Sabre/MaintenancePlugin.php @@ -27,6 +27,7 @@ namespace OCA\DAV\Connector\Sabre; use OCP\IConfig; +use OCP\Util; use Sabre\DAV\Exception\ServiceUnavailable; use Sabre\DAV\ServerPlugin; @@ -80,7 +81,7 @@ class MaintenancePlugin extends ServerPlugin { if ($this->config->getSystemValue('maintenance', false)) { throw new ServiceUnavailable('System in maintenance mode.'); } - if (\OC::checkUpgrade(false)) { + if (Util::needUpgrade()) { throw new ServiceUnavailable('Upgrade needed'); } diff --git a/core/Command/Upgrade.php b/core/Command/Upgrade.php index cadc1f8530..1611b121f3 100644 --- a/core/Command/Upgrade.php +++ b/core/Command/Upgrade.php @@ -39,6 +39,7 @@ use OC\Installer; use OC\Updater; use OCP\IConfig; use OCP\ILogger; +use OCP\Util; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Helper\ProgressBar; use Symfony\Component\Console\Input\InputInterface; @@ -87,7 +88,7 @@ class Upgrade extends Command { */ protected function execute(InputInterface $input, OutputInterface $output) { - if(\OC::checkUpgrade(false)) { + if(Util::needUpgrade()) { if (OutputInterface::VERBOSITY_NORMAL < $output->getVerbosity()) { // Prepend each line with a little timestamp $timestampFormatter = new TimestampFormatter($this->config, $output->getFormatter()); diff --git a/core/ajax/update.php b/core/ajax/update.php index 239b073dc9..af60429916 100644 --- a/core/ajax/update.php +++ b/core/ajax/update.php @@ -98,7 +98,7 @@ class FeedBackHandler { } } -if (OC::checkUpgrade(false)) { +if (\OCP\Util::needUpgrade()) { $config = \OC::$server->getSystemConfig(); if ($config->getValue('upgrade.disable-web', false)) { diff --git a/lib/base.php b/lib/base.php index f763ee634f..99651479df 100644 --- a/lib/base.php +++ b/lib/base.php @@ -236,7 +236,7 @@ class OC { // Check if config is writable $configFileWritable = is_writable($configFilePath); if (!$configFileWritable && !OC_Helper::isReadOnlyConfigEnabled() - || !$configFileWritable && self::checkUpgrade(false)) { + || !$configFileWritable && \OCP\Util::needUpgrade()) { $urlGenerator = \OC::$server->getURLGenerator(); @@ -289,38 +289,16 @@ class OC { } } - /** - * Checks if the version requires an update and shows - * @param bool $showTemplate Whether an update screen should get shown - * @return bool|void - */ - public static function checkUpgrade($showTemplate = true) { - if (\OCP\Util::needUpgrade()) { - if (function_exists('opcache_reset')) { - opcache_reset(); - } - $systemConfig = \OC::$server->getSystemConfig(); - if ($showTemplate && !$systemConfig->getValue('maintenance', false)) { - self::printUpgradePage(); - exit(); - } else { - return true; - } - } - return false; - } - /** * Prints the upgrade page + * + * @param \OC\SystemConfig $systemConfig */ - private static function printUpgradePage() { - $systemConfig = \OC::$server->getSystemConfig(); - + private static function printUpgradePage(\OC\SystemConfig $systemConfig) { $disableWebUpdater = $systemConfig->getValue('upgrade.disable-web', false); $tooBig = false; if (!$disableWebUpdater) { $apps = \OC::$server->getAppManager(); - $tooBig = false; if ($apps->isInstalled('user_ldap')) { $qb = \OC::$server->getDatabaseConnection()->getQueryBuilder(); @@ -724,7 +702,7 @@ class OC { ); //setup extra user backends - if (!self::checkUpgrade(false)) { + if (!\OCP\Util::needUpgrade()) { OC_User::setupBackends(); } else { // Run upgrades in incognito mode @@ -807,7 +785,7 @@ class OC { */ public static function registerCleanupHooks() { //don't try to do this before we are properly setup - if (\OC::$server->getSystemConfig()->getValue('installed', false) && !self::checkUpgrade(false)) { + if (\OC::$server->getSystemConfig()->getValue('installed', false) && !\OCP\Util::needUpgrade()) { // NOTE: This will be replaced to use OCP $userSession = self::$server->getUserSession(); @@ -925,7 +903,7 @@ class OC { if (!$systemConfig->getValue('installed', false)) { \OC::$server->getSession()->clear(); $setupHelper = new OC\Setup( - \OC::$server->getSystemConfig(), + $systemConfig, \OC::$server->getIniWrapper(), \OC::$server->getL10N('lib'), \OC::$server->query(\OCP\Defaults::class), @@ -945,7 +923,16 @@ class OC { } if (substr($requestPath, -3) !== '.js') { // we need these files during the upgrade self::checkMaintenanceMode(); - self::checkUpgrade(); + + if (\OCP\Util::needUpgrade()) { + if (function_exists('opcache_reset')) { + opcache_reset(); + } + if (!$systemConfig->getValue('maintenance', false)) { + self::printUpgradePage($systemConfig); + exit(); + } + } } // emergency app disabling @@ -968,7 +955,7 @@ class OC { OC_App::loadApps(['authentication']); // Load minimum set of apps - if (!self::checkUpgrade(false) + if (!\OCP\Util::needUpgrade() && !$systemConfig->getValue('maintenance', false)) { // For logged-in users: Load everything if(\OC::$server->getUserSession()->isLoggedIn()) { @@ -982,7 +969,7 @@ class OC { if (!self::$CLI) { try { - if (!$systemConfig->getValue('maintenance', false) && !self::checkUpgrade(false)) { + if (!$systemConfig->getValue('maintenance', false) && !\OCP\Util::needUpgrade()) { OC_App::loadApps(array('filesystem', 'logging')); OC_App::loadApps(); }