diff -r 806e57d67020 -r e54dfe4d0b2b vendor/bundles/FOS/UserBundle/Command/DemoteUserCommand.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/bundles/FOS/UserBundle/Command/DemoteUserCommand.php Fri Sep 30 11:24:53 2011 +0200 @@ -0,0 +1,55 @@ + + * + * 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 Antoine Hérault + * @author Lenar Lõhmus + */ +class DemoteUserCommand extends RoleCommand +{ + /** + * @see Command + */ + protected function configure() + { + parent::configure(); + + $this + ->setName('fos:user:demote') + ->setDescription('Demote a user by removing a role') + ->setHelp(<<fos:user:demote command demotes a user by removing a role + + php app/console fos:user:demote matthieu ROLE_CUSTOM + php app/console fos:user:demote --super matthieu +EOT + ); + } + + protected function executeRoleCommand(UserManipulator $manipulator, OutputInterface $output, $username, $super, $role) + { + if ($super) { + $manipulator->demote($username); + $output->writeln(sprintf('User "%s" has been demoted as a simple user.', $username)); + } else { + if ($manipulator->removeRole($username, $role)) { + $output->writeln(sprintf('Role "%s" has been removed from user "%s".', $role, $username)); + } else { + $output->writeln(sprintf('User "%s" didn\'t have "%s" role.', $username, $role)); + } + } + } +}