1<?php 2/** 3 * @copyright Copyright (c) 2016, ownCloud, Inc. 4 * 5 * @author Joas Schilling <coding@schilljs.com> 6 * 7 * @license AGPL-3.0 8 * 9 * This code is free software: you can redistribute it and/or modify 10 * it under the terms of the GNU Affero General Public License, version 3, 11 * as published by the Free Software Foundation. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU Affero General Public License for more details. 17 * 18 * You should have received a copy of the GNU Affero General Public License, version 3, 19 * along with this program. If not, see <http://www.gnu.org/licenses/> 20 * 21 */ 22namespace OC\Core\Command\Encryption; 23 24use OCP\IConfig; 25use Symfony\Component\Console\Command\Command; 26use Symfony\Component\Console\Input\InputInterface; 27use Symfony\Component\Console\Output\OutputInterface; 28 29class Disable extends Command { 30 /** @var IConfig */ 31 protected $config; 32 33 /** 34 * @param IConfig $config 35 */ 36 public function __construct(IConfig $config) { 37 parent::__construct(); 38 $this->config = $config; 39 } 40 41 protected function configure() { 42 $this 43 ->setName('encryption:disable') 44 ->setDescription('Disable encryption') 45 ; 46 } 47 48 protected function execute(InputInterface $input, OutputInterface $output): int { 49 if ($this->config->getAppValue('core', 'encryption_enabled', 'no') !== 'yes') { 50 $output->writeln('Encryption is already disabled'); 51 } else { 52 $this->config->setAppValue('core', 'encryption_enabled', 'no'); 53 $output->writeln('<info>Encryption disabled</info>'); 54 } 55 return 0; 56 } 57} 58