public function action_create() { $user_input = Input::get('user'); $user = new User(); $user->email = $user_input["email"]; $user->password = $user_input["password"]; $user->how_hear = $user_input["how_hear"]; $user->send_emails = isset($user_input["send_emails"]) ? true : false; $vendor = new Vendor(Input::get('vendor')); if ($user->validator()->passes() && $vendor->validator()->passes()) { $user->save(); $vendor->user_id = $user->id; $vendor->save(); $services = Input::get('services') ? array_keys(Input::get('services')) : array(); $user->vendor->services()->sync($services); Session::regenerate(); Auth::login($user->id); Mailer::send("NewVendorRegistered", array("user" => $user)); return Redirect::to('/'); } else { Session::flash('errors', array_merge($user->validator()->errors->all(), $vendor->validator()->errors->all())); return Redirect::to_route('new_vendors')->with_input(); } }