diff options
author | blizzz <blizzz@arthur-schiwon.de> | 2018-01-22 22:50:05 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-22 22:50:05 +0100 |
commit | c7d9e5fd6305354ba46563a77eaa53642e2a838d (patch) | |
tree | 5ac016c84e6740f949efc5e65107b300d19af44b /lib/base.php | |
parent | 23768d5fea197e9d74417244fd4bf870427f4b6c (diff) | |
parent | 0f35ef3727ee6ccec6f80cbc636b45aad00db903 (diff) | |
download | nextcloud-server-c7d9e5fd6305354ba46563a77eaa53642e2a838d.tar.gz nextcloud-server-c7d9e5fd6305354ba46563a77eaa53642e2a838d.zip |
Merge pull request #7354 from nextcloud/refacor-update-page-print
Refactor method to check if update is needed
Diffstat (limited to 'lib/base.php')
-rw-r--r-- | lib/base.php | 51 |
1 files changed, 19 insertions, 32 deletions
diff --git a/lib/base.php b/lib/base.php index f763ee634f3..99651479dfa 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(); @@ -290,37 +290,15 @@ 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(); } |