5 * Contains Drupal\Console\Command\User\LoginUrlCommand.
8 namespace Drupal\Console\Command\User;
10 use Symfony\Component\Console\Input\InputInterface;
11 use Symfony\Component\Console\Input\InputArgument;
12 use Symfony\Component\Console\Output\OutputInterface;
13 use Symfony\Component\Console\Command\Command;
14 use Drupal\Console\Core\Command\Shared\CommandTrait;
15 use Drupal\Core\Entity\EntityTypeManagerInterface;
16 use Drupal\Console\Core\Style\DrupalStyle;
19 * Class UserLoginCommand.
21 * @package Drupal\Console
23 class LoginUrlCommand extends Command
28 * @var EntityTypeManagerInterface
30 protected $entityTypeManager;
33 * LoginUrlCommand constructor.
35 * @param EntityTypeManagerInterface $entityTypeManager
37 public function __construct(EntityTypeManagerInterface $entityTypeManager)
39 $this->entityTypeManager = $entityTypeManager;
40 parent::__construct();
46 protected function configure()
49 ->setName('user:login:url')
50 ->setDescription($this->trans('commands.user.login.url.description'))
53 InputArgument::REQUIRED,
54 $this->trans('commands.user.login.url.options.user-id'),
62 protected function execute(InputInterface $input, OutputInterface $output)
64 $io = new DrupalStyle($input, $output);
66 $uid = $input->getArgument('user-id');
67 $user = $this->entityTypeManager->getStorage('user')->load($uid);
72 $this->trans('commands.user.login.url.errors.invalid-user'),
80 $url = user_pass_reset_url($user);
83 $this->trans('commands.user.login.url.messages.url'),