user(); $config_languages = config('constants.langs'); $languages = []; foreach ($config_languages as $key => $value) { $languages[$key] = $value['full_name']; } return view('portal::marketer.profile.edit', compact('user', 'languages')); } public function updateProfile(Request $request) { $request->validate([ 'first_name' => 'required|string|max:191', 'last_name' => 'nullable|string|max:191', 'email' => 'nullable|email|max:191', 'language' => 'nullable|string|max:10', ]); $user = auth()->user(); $user->first_name = $request->first_name; $user->last_name = $request->last_name; $user->email = $request->email; if ($request->filled('language')) { $user->language = $request->language; } $user->save(); return redirect() ->action([self::class, 'getProfile']) ->with('status', ['success' => 1, 'msg' => __('lang_v1.success')]); } public function updatePassword(Request $request) { $request->validate([ 'current_password' => 'required', 'new_password' => 'required|min:6|confirmed', ]); if (! \Hash::check($request->current_password, auth()->user()->password)) { return back()->with('status', ['success' => 0, 'msg' => __('user.old_password_mismatch')]); } $user = auth()->user(); $user->password = \Hash::make($request->new_password); $user->save(); return redirect() ->action([self::class, 'getProfile']) ->with('status', ['success' => 1, 'msg' => __('lang_v1.success')]); } }