public function contacts(Request $request) { $user = Auth::user() ? User::find(Auth::user()->id) : false; if (!$user) { $ajaxResponse['status'] = 'error'; $ajaxResponse['errors'] = 'Вы не авторизованы. Пройдите авторизацию снова.'; return $ajaxResponse; } $contact = Contact::findOrNew($user->contact_id); $contact->fill($request->input('contact')); $contact->save(); $user->update(['contact_id' => $contact->id]); $ajaxResponse['status'] = 'success'; $ajaxResponse['success_text'] = 'Контактная информация сохранена'; return $ajaxResponse; }
/** * Update the specified resource in storage. * * @param int $id * @param Request $request * * @return Response */ public function update($id, Request $request) { $emailRule = $request->input('email') ? 'required|email|max:255|unique:users,email,' . $id : ''; $passwordRule = $request->input('password') ? 'required|min:6' : ''; $this->validate($request, ['name' => 'required', 'email' => $emailRule, 'password' => $passwordRule]); $item = User::findOrFail($id); $contact = Contact::findOrNew($item->contact_id); $contact->fill($request->input('contact')); $contact->save(); $item->update($request->except('password') + ['contact_id' => $contact->id] + ($passwordRule ? ['password' => bcrypt($request->input('password'))] : [])); Flash::success("Запись - {$id} обновлена"); return redirect(route('admin.users.index')); }