public function doSignup() { // Validation rules $rules = array('email' => 'required|email|unique:users', 'password' => 'required|min:4'); // run the validation rules on the inputs $validator = Validator::make(Input::all(), $rules); if ($validator->fails()) { // validation error -> redirect $failedAttribute = $validator->invalid(); return Redirect::route('auth.signup')->with('error', $validator->errors()->get(key($failedAttribute))[0])->withInput(); // sending back data } else { // validator success -> signup // create user $user = new User(); // set auth info $user->email = Input::get('email'); $user->password = Hash::make(Input::get('password')); $user->ready = 'notConnected'; $user->summaryEmailFrequency = 'daily'; $user->plan = 'trial'; $user->save(); // create user on intercom IntercomHelper::signedup($user); // signing the user in and redirect to dashboard Auth::login($user); return Redirect::route('auth.signup')->with('success', 'Signup was successful.'); } }