/** * Reset and send password by email */ public function resetPassword($user) { if ($user) { $utility = new PasswordUtility(); $password = $utility->generatePassword(); $encoder = $this->encoder->getEncoder($user); $encodedPassword = $encoder->encodePassword($password, $user->getSalt()); $user->setPassword($encodedPassword); // Send password via email try { $message = \Swift_Message::newInstance()->setSubject('Password reset')->setFrom($this->websiteEmail)->setTo($user->getEmail())->setBody($this->templating->render('AiselFrontendUserBundle:Email:newPassword.txt.twig', array('username' => $user->getUsername(), 'password' => $password))); $response = $this->mailer->send($message); } catch (\Swift_TransportException $e) { $response = $e->getMessage(); } $this->em->persist($user); $this->em->flush(); return $response; } else { return false; } }
/** * resetPassword * * @param User $user * @return mixed */ public function resetPassword(User $user) { if ($user) { $utility = new PasswordUtility(); $password = $utility->generatePassword(); $user->setPlainPassword($password); $user->setPassword($password); $this->em->persist($user); $this->em->flush(); $this->mailer->sendNewPasswordEmail($user, $password); } }