diff --git a/app/controllers/UserController.php b/app/controllers/UserController.php index 82309e2460..2a4af46abb 100644 --- a/app/controllers/UserController.php +++ b/app/controllers/UserController.php @@ -77,7 +77,11 @@ class UserController extends BaseController $user = $repository->register(Input::all()); if ($user) { - $email->sendVerificationMail($user); + $result = $email->sendVerificationMail($user); + if($result === false) { + $user->delete(); + return View::make('error')->with('message','The email message could not be send. See the log files.'); + } return View::make('user.verification-pending'); } @@ -121,6 +125,9 @@ class UserController extends BaseController */ public function register() { + if (Config::get('mail.from.address') == '@gmail.com' || Config::get('mail.from.address') == '') { + return View::make('error')->with('message', 'Configuration error in app/config/'.App::environment().'/mail.php'); + } return View::make('user.register'); } diff --git a/app/lib/FireflyIII/Shared/Mail/Registration.php b/app/lib/FireflyIII/Shared/Mail/Registration.php index 4a8367c408..62f98eefe9 100644 --- a/app/lib/FireflyIII/Shared/Mail/Registration.php +++ b/app/lib/FireflyIII/Shared/Mail/Registration.php @@ -3,6 +3,8 @@ namespace FireflyIII\Shared\Mail; use Swift_RfcComplianceException; use Illuminate\Mail\Message; +use Swift_TransportException; + /** * Class Registration * @@ -57,7 +59,16 @@ class Registration implements RegistrationInterface } ); } catch (Swift_RfcComplianceException $e) { + \Log::error($e->getMessage()); + return false; + } catch(Swift_TransportException $e) { + \Log::error($e->getMessage()); + return false; + } catch(\Exception $e) { + \Log::error($e->getMessage()); + return false; } + return true; } @@ -84,7 +95,16 @@ class Registration implements RegistrationInterface } ); } catch (Swift_RfcComplianceException $e) { + \Log::error($e->getMessage()); + return false; + } catch(Swift_TransportException $e) { + \Log::error($e->getMessage()); + return false; + } catch(\Exception $e) { + \Log::error($e->getMessage()); + return false; } + return true; } }