* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace FOS\UserBundle\Command; use Symfony\Component\Console\Output\OutputInterface; use FOS\UserBundle\Util\UserManipulator; /** * @author Matthieu Bontemps * @author Thibault Duplessis * @author Luis Cordova * @author Lenar Lõhmus */ class PromoteUserCommand extends RoleCommand { /** * @see Command */ protected function configure() { parent::configure(); $this ->setName('fos:user:promote') ->setDescription('Promotes a user by adding a role') ->setHelp(<<fos:user:promote command promotes a user by adding a role php app/console fos:user:promote matthieu ROLE_CUSTOM php app/console fos:user:promote --super matthieu EOT ); } protected function executeRoleCommand(UserManipulator $manipulator, OutputInterface $output, $username, $super, $role) { if ($super) { $manipulator->promote($username); $output->writeln(sprintf('User "%s" has been promoted as a super administrator.', $username)); } else { if ($manipulator->addRole($username, $role)) { $output->writeln(sprintf('Role "%s" has been added to user "%s".', $role, $username)); } else { $output->writeln(sprintf('User "%s" did already have "%s" role.', $username, $role)); } } } }