authenticate(); $request->session()->regenerate(); return redirect()->intended(RouteServiceProvider::HOME); } public function storeUsermanager(Request $request) { $userArray = []; $id = $request->email; $passwd = $request->password; $SERVER_ADDR = $request->ip(); $IPUserManager = $_ENV['IP_USER_MANAGER']; $portUserManager = $_ENV['PORT_USER_MANAGER']; $appId = $_ENV['APP_ID']; $userData = verify_user($id, $passwd, $SERVER_ADDR, $IPUserManager, $portUserManager, $appId); if (strlen($userData) > 1) { $userRawArray = explode("\t", $userData); foreach ($userRawArray as $rkey => $rval) { [$key, $val] = explode('=', $rval); $userArray[0][$key] = $val; } $credentials = $request->validate([ 'email' => ['required'], 'password' => ['required'], ]); $user = ""; if (Auth::attempt($credentials)) { $user = User::where(['email' => $request->email])->first(); } if (!$user) { $user = User::updateOrCreate([ 'email' => $userArray[0]['KD_USER'], ], [ 'name' => $userArray[0]['NAMA_USER'], 'password' => Hash::make($request->password) ]); switch ($userArray[0]['KD_GROUP']) { case '001' : $user->assignRole('administrator'); break; case '007' : $user->assignRole('eo'); break; case '008' : $user->assignRole('dd'); break; case '401' : $user->assignRole('ad'); break; case '018' : $user->assignRole('siskon'); break; case '019' : $user->assignRole('siskon_otorisator'); break; default : $user->assignRole('user'); break; } } Auth::loginUsingId($user->id, true); $request->session()->regenerate(); } return redirect()->intended(RouteServiceProvider::HOME); } /** * Display the login view. * * @return \Illuminate\View\View */ public function create() { if (isset($_ENV['METHOD_AUTH'])) { if ($_ENV['METHOD_AUTH'] == 'usermanager') { addJavascriptFile('assets/js/custom/authentication/sign-in/uim.js'); return view('usermanager::auth.login-usermanager'); } else { addJavascriptFile('assets/js/custom/authentication/sign-in/general.js'); return view('usermanager::auth.login'); } } } /** * Destroy an authenticated session. * * @param \Illuminate\Http\Request $request * * @return \Illuminate\Http\RedirectResponse */ public function destroy(Request $request) { Auth::guard('web')->logout(); $request->session()->invalidate(); $request->session()->regenerateToken(); return redirect('/'); } }