/** * @expectedException \LaravelItalia\Exceptions\NotFoundException */ public function testCanFindByConfirmationCodeThrowsException() { $this->userRepository->findByConfirmationCode('wololooooooo'); }
/** * @param Request $request * @param UserRepository $userRepository * @param $confirmationCode * @return \Illuminate\Http\RedirectResponse * @throws \Exception */ public function postInvitation(Request $request, UserRepository $userRepository, $confirmationCode) { /* @var User $user */ $user = $userRepository->findByConfirmationCode($confirmationCode); if (!$user) { return redirect('admin/login')->with('errors', Collection::make(['Codice di conferma non riconosciuto. Riprovare.'])); } if ($user->email !== $request->get('email')) { return redirect('admin/invitation/' . $confirmationCode)->with('errors', Collection::make(['L\'indirizzo email inserito non corrisponde a quello del codice.'])); } $user->setNewPassword($request->get('password')); $user->confirm(); try { $userRepository->save($user); } catch (NotSavedException $e) { return redirect('admin/invitation/' . $confirmationCode)->with('errors', Collection::make(['Problemi in fase di salvataggio della password. Riprovare.'])); } return redirect('admin/login')->with('message', 'Editor registrato! Effettua l\'accesso inserendo le credenziali scelte.'); }