Signed-off-by: Joas Schilling <coding@schilljs.com>tags/v11.0RC2
@@ -25,13 +25,15 @@ namespace OC\Core\Command\L10n; | |||
use DirectoryIterator; | |||
use Stecman\Component\Symfony\Console\BashCompletion\Completion\CompletionAwareInterface; | |||
use Stecman\Component\Symfony\Console\BashCompletion\CompletionContext; | |||
use Symfony\Component\Console\Command\Command; | |||
use Symfony\Component\Console\Input\InputInterface; | |||
use Symfony\Component\Console\Input\InputOption; | |||
use Symfony\Component\Console\Output\OutputInterface; | |||
use UnexpectedValueException; | |||
class CreateJs extends Command { | |||
class CreateJs extends Command implements CompletionAwareInterface { | |||
protected function configure() { | |||
$this | |||
@@ -135,4 +137,32 @@ class CreateJs extends Command { | |||
return array($TRANSLATIONS, $PLURAL_FORMS); | |||
} | |||
/** | |||
* Return possible values for the named option | |||
* | |||
* @param string $optionName | |||
* @param CompletionContext $context | |||
* @return string[] | |||
*/ | |||
public function completeOptionValues($optionName, CompletionContext $context) { | |||
return []; | |||
} | |||
/** | |||
* Return possible values for the named argument | |||
* | |||
* @param string $argumentName | |||
* @param CompletionContext $context | |||
* @return string[] | |||
*/ | |||
public function completeArgumentValues($argumentName, CompletionContext $context) { | |||
if ($argumentName === 'app') { | |||
return \OC_App::getAllApps(); | |||
} else if ($argumentName === 'lang') { | |||
$appName = $context->getWordAtIndex($context->getWordIndex() - 1); | |||
return $this->getAllLanguages(\OC_App::getAppPath($appName)); | |||
} | |||
return []; | |||
} | |||
} |
@@ -0,0 +1,60 @@ | |||
<?php | |||
/** | |||
* @copyright Copyright (c) 2016 Joas Schilling <coding@schilljs.com> | |||
* | |||
* @license GNU AGPL version 3 or any later version | |||
* | |||
* This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU Affero General Public License as | |||
* published by the Free Software Foundation, either version 3 of the | |||
* License, or (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU Affero General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU Affero General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
* | |||
*/ | |||
namespace OC\Core\Command\TwoFactorAuth; | |||
use OCP\IUserManager; | |||
use OCP\IUser; | |||
use Stecman\Component\Symfony\Console\BashCompletion\Completion\CompletionAwareInterface; | |||
use Stecman\Component\Symfony\Console\BashCompletion\CompletionContext; | |||
class Base extends \OC\Core\Command\Base implements CompletionAwareInterface { | |||
/** @var IUserManager */ | |||
protected $userManager; | |||
/** | |||
* Return possible values for the named option | |||
* | |||
* @param string $optionName | |||
* @param CompletionContext $context | |||
* @return string[] | |||
*/ | |||
public function completeOptionValues($optionName, CompletionContext $context) { | |||
return []; | |||
} | |||
/** | |||
* Return possible values for the named argument | |||
* | |||
* @param string $argumentName | |||
* @param CompletionContext $context | |||
* @return string[] | |||
*/ | |||
public function completeArgumentValues($argumentName, CompletionContext $context) { | |||
if ($argumentName === 'uid') { | |||
return array_map(function(IUser $user) { | |||
return $user->getUID(); | |||
}, $this->userManager->search($context->getCurrentWord(), 100)); | |||
} | |||
return []; | |||
} | |||
} |
@@ -23,8 +23,7 @@ | |||
namespace OC\Core\Command\TwoFactorAuth; | |||
use OC\Authentication\TwoFactorAuth\Manager; | |||
use OC\User\Manager as UserManager; | |||
use OC\Core\Command\Base; | |||
use OCP\IUserManager; | |||
use Symfony\Component\Console\Input\InputArgument; | |||
use Symfony\Component\Console\Input\InputInterface; | |||
use Symfony\Component\Console\Output\OutputInterface; | |||
@@ -34,10 +33,10 @@ class Disable extends Base { | |||
/** @var Manager */ | |||
private $manager; | |||
/** @var UserManager */ | |||
private $userManager; | |||
/** @var IUserManager */ | |||
protected $userManager; | |||
public function __construct(Manager $manager, UserManager $userManager) { | |||
public function __construct(Manager $manager, IUserManager $userManager) { | |||
parent::__construct('twofactorauth:disable'); | |||
$this->manager = $manager; | |||
$this->userManager = $userManager; |
@@ -23,8 +23,7 @@ | |||
namespace OC\Core\Command\TwoFactorAuth; | |||
use OC\Authentication\TwoFactorAuth\Manager; | |||
use OC\User\Manager as UserManager; | |||
use OC\Core\Command\Base; | |||
use OCP\IUserManager; | |||
use Symfony\Component\Console\Input\InputArgument; | |||
use Symfony\Component\Console\Input\InputInterface; | |||
use Symfony\Component\Console\Output\OutputInterface; | |||
@@ -34,10 +33,10 @@ class Enable extends Base { | |||
/** @var Manager */ | |||
private $manager; | |||
/** @var UserManager */ | |||
private $userManager; | |||
/** @var IUserManager */ | |||
protected $userManager; | |||
public function __construct(Manager $manager, UserManager $userManager) { | |||
public function __construct(Manager $manager, IUserManager $userManager) { | |||
parent::__construct('twofactorauth:enable'); | |||
$this->manager = $manager; | |||
$this->userManager = $userManager; |