diff --git a/src/AppBundle/Command/RebirthCommand.php b/src/AppBundle/Command/RebirthCommand.php new file mode 100755 index 00000000..9cd0b011 --- /dev/null +++ b/src/AppBundle/Command/RebirthCommand.php @@ -0,0 +1,68 @@ +entityManager = $entityManager; + $this->router = $router; + } + + protected function configure() + { + $this + ->setName('app:rebirth') + ->setDescription('Bring back a previously locked down user.') + ->addArgument( + 'username', + InputArgument::REQUIRED, + 'Username to summarize.') + ; + } + + protected function execute(InputInterface $input, OutputInterface $output) + { + $username = $input->getArgument('username'); + $userEntity = $this->entityManager->getRepository('AppBundle:User'); + $user = $userEntity->findOneBy(['username' => $username]); + if (!($user instanceof User)) { + $output->writeln('Could not find user ' . $username); + return; + } + + $output-> writeln('===== User =============='); + $output->writeln('User:'); + $output->writeln(" username: {$user->getUsername()}"); + $output->writeln(" email: {$user->getEmail()}"); + $output->writeln(" last_login: {$user->getLastLogin()->format('Y-m-d H:i:s')}"); + $output->writeln('=========================='); + + if (!strpos($user->getEmail(), "-was-a-damn-dirty-spammer")) { + $output->writeln('User is already reborn.'); + return; + } + + $user->setEmail(str_replace("-was-a-damn-dirty-spammer", "", $user->getEmail())); + $this->entityManager->persist($user); + $this->entityManager->flush(); + } +}