From 48040c46cb6ebcfbe6e7070d82e411be4ed12d2e Mon Sep 17 00:00:00 2001 From: Steffen Lindner Date: Wed, 20 May 2015 17:06:00 +0200 Subject: Skip disable3rdParty Apps --- lib/private/updater.php | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'lib/private/updater.php') diff --git a/lib/private/updater.php b/lib/private/updater.php index 59b1c0a8f66..8371193ef79 100644 --- a/lib/private/updater.php +++ b/lib/private/updater.php @@ -65,6 +65,9 @@ class Updater extends BasicEmitter { /** @var bool */ private $updateStepEnabled; + /** @var bool */ + private $skip3rdPartyAppsDisable; + /** * @param HTTPHelper $httpHelper * @param IConfig $config @@ -99,6 +102,16 @@ class Updater extends BasicEmitter { $this->updateStepEnabled = $flag; } + /** + * Sets whether the update disables 3rd party apps. + * This can be set to true to skip the disable. + * + * @param bool $flag false to not disable, true otherwise + */ + public function setSkip3rdPartyAppsDisable($flag) { + $this->skip3rdPartyAppsDisable = $flag; + } + /** * Check if a new version is available * @@ -407,10 +420,12 @@ class Updater extends BasicEmitter { continue; } - // disable any other 3rd party apps - \OC_App::disable($app); - $disabledApps[]= $app; - $this->emit('\OC\Updater', 'thirdPartyAppDisabled', array($app)); + // disable any other 3rd party apps if not overriden + if(!$this->skip3rdPartyAppsDisable) { + \OC_App::disable($app); + $disabledApps[]= $app; + $this->emit('\OC\Updater', 'thirdPartyAppDisabled', array($app)); + }; } return $disabledApps; } -- cgit v1.2.3