]> source.dussan.org Git - nextcloud-server.git/commitdiff
Move resetpassword into user: command space.
authorAndreas Fischer <bantu@owncloud.com>
Wed, 28 May 2014 20:53:44 +0000 (22:53 +0200)
committerAndreas Fischer <bantu@owncloud.com>
Wed, 28 May 2014 20:53:44 +0000 (22:53 +0200)
core/command/resetpassword.php [deleted file]
core/command/user/resetpassword.php [new file with mode: 0644]
core/register_command.php

diff --git a/core/command/resetpassword.php b/core/command/resetpassword.php
deleted file mode 100644 (file)
index ddff7a9..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/**
- * Copyright (c) 2014 Christopher Schäpers <christopher@schaepers.it>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
- */
-
-namespace OC\Core\Command;
-
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Input\InputArgument;
-use Symfony\Component\Console\Output\OutputInterface;
-
-class ResetPassword extends Command {
-
-       /** @var \OC\User\Manager */
-       protected $userManager;
-
-       public function __construct(\OC\User\Manager $userManager) {
-               $this->userManager = $userManager;
-               parent::__construct();
-       }
-
-       protected function configure() {
-               $this
-                       ->setName('resetpassword')
-                       ->setDescription('Resets the password of the named user')
-                       ->addArgument(
-                               'user',
-                               InputArgument::REQUIRED,
-                               'Username to reset password'
-                       )
-               ;
-       }
-
-       protected function execute(InputInterface $input, OutputInterface $output) {
-               $username = $input->getArgument('user');
-
-               /** @var $user \OC\User\User */
-               $user = $this->userManager->get($username);
-               if (is_null($user)) {
-                       $output->writeln("<error>There is no user called " . $username . "</error>");
-                       return 1;
-               }
-
-               if ($input->isInteractive()) {
-                       /** @var $dialog \Symfony\Component\Console\Helper\DialogHelper */
-                       $dialog = $this->getHelperSet()->get('dialog');
-                       $password = $dialog->askHiddenResponse(
-                               $output,
-                               '<question>Enter a new password: </question>',
-                               false
-                       );
-                       $confirm = $dialog->askHiddenResponse(
-                               $output,
-                               '<question>Confirm the new password: </question>',
-                               false
-                       );
-
-                       if ($password === $confirm) {
-                               $success = $user->setPassword($password);
-                               if ($success) {
-                                       $output->writeln("<info>Successfully reset password for " . $username . "</info>");
-                               } else {
-                                       $output->writeln("<error>Error while resetting password!</error>");
-                                       return 1;
-                               }
-                       } else {
-                               $output->writeln("<error>Passwords did not match!</error>");
-                               return 1;
-                       }
-               } else {
-                       $output->writeln("<error>Interactive input is needed for entering a new password!</error>");
-                       return 1;
-               }
-       }
-}
diff --git a/core/command/user/resetpassword.php b/core/command/user/resetpassword.php
new file mode 100644 (file)
index 0000000..d7893c2
--- /dev/null
@@ -0,0 +1,79 @@
+<?php
+/**
+ * Copyright (c) 2014 Christopher Schäpers <christopher@schaepers.it>
+ * 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\Input\InputArgument;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class ResetPassword extends Command {
+
+       /** @var \OC\User\Manager */
+       protected $userManager;
+
+       public function __construct(\OC\User\Manager $userManager) {
+               $this->userManager = $userManager;
+               parent::__construct();
+       }
+
+       protected function configure() {
+               $this
+                       ->setName('user:resetpassword')
+                       ->setDescription('Resets the password of the named user')
+                       ->addArgument(
+                               'user',
+                               InputArgument::REQUIRED,
+                               'Username to reset password'
+                       )
+               ;
+       }
+
+       protected function execute(InputInterface $input, OutputInterface $output) {
+               $username = $input->getArgument('user');
+
+               /** @var $user \OC\User\User */
+               $user = $this->userManager->get($username);
+               if (is_null($user)) {
+                       $output->writeln("<error>There is no user called " . $username . "</error>");
+                       return 1;
+               }
+
+               if ($input->isInteractive()) {
+                       /** @var $dialog \Symfony\Component\Console\Helper\DialogHelper */
+                       $dialog = $this->getHelperSet()->get('dialog');
+                       $password = $dialog->askHiddenResponse(
+                               $output,
+                               '<question>Enter a new password: </question>',
+                               false
+                       );
+                       $confirm = $dialog->askHiddenResponse(
+                               $output,
+                               '<question>Confirm the new password: </question>',
+                               false
+                       );
+
+                       if ($password === $confirm) {
+                               $success = $user->setPassword($password);
+                               if ($success) {
+                                       $output->writeln("<info>Successfully reset password for " . $username . "</info>");
+                               } else {
+                                       $output->writeln("<error>Error while resetting password!</error>");
+                                       return 1;
+                               }
+                       } else {
+                               $output->writeln("<error>Passwords did not match!</error>");
+                               return 1;
+                       }
+               } else {
+                       $output->writeln("<error>Interactive input is needed for entering a new password!</error>");
+                       return 1;
+               }
+       }
+}
index e9b6250888367e2106c8c84a69fdad0536799971..8efd2673afe794cdff8bd573f59a38bcb51e3f0c 100644 (file)
 $application->add(new OC\Core\Command\Status);
 $application->add(new OC\Core\Command\Db\GenerateChangeScript());
 $application->add(new OC\Core\Command\Upgrade());
-$application->add(new OC\Core\Command\ResetPassword(\OC::$server->getUserManager()));
 $application->add(new OC\Core\Command\Maintenance\SingleUser());
 $application->add(new OC\Core\Command\App\Disable());
 $application->add(new OC\Core\Command\App\Enable());
 $application->add(new OC\Core\Command\App\ListApps());
 $application->add(new OC\Core\Command\Maintenance\Repair(new \OC\Repair()));
 $application->add(new OC\Core\Command\User\Report());
+$application->add(new OC\Core\Command\User\ResetPassword(\OC::$server->getUserManager()));