/** * Update a travelers' data * * @return Illuminate\Http\Response */ protected function update() { // Update the travelers' data $traveler = Auth::user(); $traveler->first_name = Input::get('first_name'); $traveler->last_name = Input::get('last_name'); $traveler->email = Input::get('email'); $traveler->birthday = Input::get('birthday'); $traveler->gender = Input::get('gender'); $traveler->save(); // Update their address $address = TravelerAddress::where('traveler', '=', Auth::id())->first(); if ($address) { // The traveler has an address, so // we can safely update it $address->street = Input::get('street'); $address->city = Input::get('city'); $address->state = State::where('abbreviation', '=', Input::get('state'))->first()->id; $address->zip = Input::get('zip'); $address->save(); } // Update their passport profile photo if (Input::hasFile('selfie')) { $extension = Input::file('selfie')->getClientOriginalExtension(); $filename = md5(uniqid(rand(), true)) . '.' . $extension; Input::file('selfie')->move(base_path() . '/public/assets/selfies/', $filename); $traveler->selfie_filename = $filename; $traveler->save(); } return Redirect::back(); }
/** * Create a new user instance after a valid registration. * * @param array $data * @return User */ protected function create(array $data) { $traveler = Traveler::create(['first_name' => $data['first_name'], 'last_name' => $data['last_name'], 'email' => $data['email'], 'password' => bcrypt($data['password']), 'gender' => Input::has('gender') ? intval($data['gender']) : 3, 'birthday' => $data['birthday']]); if ($traveler) { // The traveler was created so // we'll save their address if // they've chosen to provide one $state = Input::has('state') ? State::where('abbreviation', '=', Input::get('state'))->first()->id : NULL; $address = TravelerAddress::create(['traveler' => $traveler->id, 'street' => Input::has('street') ? Input::get('street') : NULL, 'city' => Input::has('city') ? Input::get('city') : NULL, 'state' => $state, 'zip' => Input::has('zip') ? Input::get('zip') : NULL, 'phone' => Input::has('phone') ? Input::get('phone') : NULL, 'created_at' => gmdate('Y-m-d H:i:s'), 'updated_at' => gmdate('Y-m-d H:i:s')]); // We'll also store their profile // photo and store its' filename if (Input::hasFile('selfie')) { $selfie_filename = md5(uniqid(rand(), true)) . '.' . Input::file('selfie')->getClientOriginalExtension(); Input::file('selfie')->move(base_path() . '/public/assets/selfies/', $selfie_filename); // Store the filename $traveler->selfie_filename = $selfie_filename; $traveler->save(); } } return $traveler; }