private function validateAndSaveConsumer(Request $request, Consumer $consumer) { $this->validate($request, array_merge(['first_name' => 'required', 'last_name' => 'required', 'description' => 'required'], Address::rules())); // TODO: check to see if logged in user is a caregiver for this consumer $consumer->first_name = $request->first_name; $consumer->last_name = $request->last_name; $consumer->description = $request->description; $consumer->address_id = Address::retrieveOrCreate(['street' => $request->street, 'city' => $request->city, 'state' => $request->state, 'zip1' => $request->zip1])->id; $consumer->save(); return Redirect::to('/caregiver'); }
/** * update the given user's profile info. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function postUpdate(Request $request) { $this->validate($request, ['id' => 'required|exists:users']); $user = User::find($request->id); $user->email = $request->email; $this->validate($request, array_merge(['id' => 'required|exists:users', 'email' => 'email|max:255' . ($user->isDirty('email') ? '|unique:users,email' : '')], Address::rules())); if (Auth::user()->id != $request->id && !Auth::user()->administrator) { //todo: access denied (handle w/ middleware instead of controller?) } else { $user->first_name = $request->first_name; $user->last_name = $request->last_name; $user->address_id = Address::retrieveOrCreate(['street' => $request->street, 'city' => $request->city, 'state' => $request->state, 'zip1' => $request->zip1])->id; $user->save(); return Redirect::to('/profile/' . $request->id); } }
/** * Get a validator for an incoming registration request. * * @param array $data * @return \Illuminate\Contracts\Validation\Validator */ protected function validator(array $data) { return Validator::make($data, array_merge(['email' => 'required|email|max:255|unique:users', 'password' => 'required|confirmed|min:6'], Address::rules())); }