X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FConsole%2FPostUpdate.php;h=742197e732c0fcab2f8b25f07d6ed729e118adc2;hb=f65c71a25bcade6c3aacbff6a1ec36132c780e40;hp=4d7246d90bf459e85e3be374ef0ede8a187c5c08;hpb=4dcdc56e8173d6db3410014fa4c4ae3445a2436d;p=friendica.git diff --git a/src/Console/PostUpdate.php b/src/Console/PostUpdate.php index 4d7246d90b..742197e732 100644 --- a/src/Console/PostUpdate.php +++ b/src/Console/PostUpdate.php @@ -1,26 +1,54 @@ . + * + */ namespace Friendica\Console; -use Friendica\Core\Config; +use Friendica\App; +use Friendica\Core\KeyValueStorage\Capabilities\IManageKeyValuePairs; use Friendica\Core\L10n; use Friendica\Core\Update; /** * Performs database post updates - * - * License: AGPLv3 or later, same as Friendica - * - * @author Tobias Diekershoff - * @author Hypolite Petovan */ class PostUpdate extends \Asika\SimpleConsole\Console { - protected $helpOptions = ['h', 'help', '?']; + protected $helpOptions = ['h', 'help', '?']; + + /** + * @var App\Mode + */ + private $appMode; + /** + * @var IManageKeyValuePairs + */ + private $keyValue; + /** + * @var L10n + */ + private $l10n; - protected function getHelp() - { - $help = <<] @@ -29,12 +57,21 @@ Options -h|--help|-? Show help information --reset Reset the post update version HELP; - return $help; - } + return $help; + } + + public function __construct(App\Mode $appMode, IManageKeyValuePairs $keyValue, L10n $l10n, array $argv = null) + { + parent::__construct($argv); + + $this->appMode = $appMode; + $this->keyValue = $keyValue; + $this->l10n = $l10n; + } - protected function doExecute() + protected function doExecute(): int { - $a = \Friendica\BaseObject::getApp(); + $a = \Friendica\DI::app(); if ($this->getOption($this->helpOptions)) { $this->out($this->getHelp()); @@ -46,26 +83,26 @@ HELP; $this->out($this->getHelp()); return 0; } elseif ($reset_version) { - Config::set('system', 'post_update_version', $reset_version); - echo L10n::t('Post update version number has been set to %s.', $reset_version) . "\n"; + $this->keyValue->set('post_update_version', $reset_version); + echo $this->l10n->t('Post update version number has been set to %s.', $reset_version) . "\n"; return 0; } - if ($a->getMode()->isInstall()) { + if ($this->appMode->isInstall()) { throw new \RuntimeException('Database isn\'t ready or populated yet'); } - echo L10n::t('Check for pending update actions.') . "\n"; + echo $this->l10n->t('Check for pending update actions.') . "\n"; Update::run($a->getBasePath(), true, false, true, false); - echo L10n::t('Done.') . "\n"; + echo $this->l10n->t('Done.') . "\n"; - echo L10n::t('Execute pending post updates.') . "\n"; + echo $this->l10n->t('Execute pending post updates.') . "\n"; while (!\Friendica\Database\PostUpdate::update()) { echo '.'; } - echo "\n" . L10n::t('All pending post updates are done.') . "\n"; + echo "\n" . $this->l10n->t('All pending post updates are done.') . "\n"; return 0; }