diff options
author | Lukas Reschke <lukas@owncloud.com> | 2015-01-09 10:47:02 +0100 |
---|---|---|
committer | Lukas Reschke <lukas@owncloud.com> | 2015-01-09 10:47:02 +0100 |
commit | a5099b01f93ec81602c8facba04233c7bc65ed47 (patch) | |
tree | fb2ac4d03d0210848c0c22a241ad956b7bf54c8d /core | |
parent | b4606ec24f507ff6ad6f720d3c4f026221a163d7 (diff) | |
parent | c1a79d24c54d3c1d6ecb2c65540f9b52a3d6dc31 (diff) | |
download | nextcloud-server-a5099b01f93ec81602c8facba04233c7bc65ed47.tar.gz nextcloud-server-a5099b01f93ec81602c8facba04233c7bc65ed47.zip |
Merge pull request #12984 from owncloud/ldap-user-cleanup-master
Ldap user cleanup master
Diffstat (limited to 'core')
-rw-r--r-- | core/command/user/delete.php | 47 | ||||
-rw-r--r-- | core/register_command.php | 1 |
2 files changed, 48 insertions, 0 deletions
diff --git a/core/command/user/delete.php b/core/command/user/delete.php new file mode 100644 index 00000000000..d5ec3ee0bde --- /dev/null +++ b/core/command/user/delete.php @@ -0,0 +1,47 @@ +<?php +/** + * Copyright (c) 2014 Arthur Schiwon <blizzz@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Core\Command\User; + +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Input\InputArgument; + +class Delete extends Command { + /** @var \OC\User\Manager */ + protected $userManager; + + /** + * @param \OC\User\Manager $userManager + */ + public function __construct(\OC\User\Manager $userManager) { + $this->userManager = $userManager; + parent::__construct(); + } + + protected function configure() { + $this + ->setName('user:delete') + ->setDescription('deletes the specified user') + ->addArgument( + 'uid', + InputArgument::REQUIRED, + 'the username' + ); + } + + protected function execute(InputInterface $input, OutputInterface $output) { + $wasSuccessful = $this->userManager->get($input->getArgument('uid'))->delete(); + if($wasSuccessful === true) { + $output->writeln('The specified user was deleted'); + return; + } + $output->writeln('<error>The specified could not be deleted. Please check the logs.</error>'); + } +} diff --git a/core/register_command.php b/core/register_command.php index 8f79473ced8..5aa55be3e2c 100644 --- a/core/register_command.php +++ b/core/register_command.php @@ -22,5 +22,6 @@ $application->add(new OC\Core\Command\Maintenance\Repair($repair, \OC::$server-> $application->add(new OC\Core\Command\User\Report()); $application->add(new OC\Core\Command\User\ResetPassword(\OC::$server->getUserManager())); $application->add(new OC\Core\Command\User\LastSeen()); +$application->add(new OC\Core\Command\User\Delete(\OC::$server->getUserManager())); $application->add(new OC\Core\Command\L10n\CreateJs()); |