public function authenticate() { // $email = Input::get('email'); $empId = Input::get('empId'); $password = Input::get('password'); $mmplant = Input::get('mmplant'); /* $credentials = [ 'email' => '*****@*****.**', 'password' => 'password' ]; */ // $remember = $request->has('remember'); Log::info("into authenticate->[" . $empId . "]"); $error_message = null; $hasAuthened = false; $user_empId = null; $user_db = null; $mmtrendsM = null; $user_priority = 0; if (Auth::check()) { // User is logged in Log::info("into check->"); $hasAuthened = true; } else { Log::info("into login->"); // check user in DB? $mmtrendsM = DB::table("mmemployee_table")->where('A', $empId)->orderBy('updated_at', 'DESC')->get(); if (!empty($mmtrendsM)) { Log::info($mmtrendsM[0]->A); $user_empId = $mmtrendsM[0]->A; $user_priority = $mmtrendsM[0]->D0; // for LDAP Authen // $user_ldap = LDAPAuth::authen($empId, $password); // for Test $email = '*****@*****.**'; $user_ldap = ['email' => $email, 'name' => 'Chatchai Pimtun', 'empId' => $empId, 'password' => 'password']; // end test if (!empty($user_ldap)) { Log::info($user_ldap); //$user_db = User::where('email', $email) $user_db = User::where('empId', $empId)->first(); Log::info("user_db->" + sizeof($user_db)); $user_key = null; if (empty($user_db)) { //create user $this->create($user_ldap); //$user_db = User::where('email', $email) $user_db = User::where('empId', $empId)->first(); } $user_key = $user_db->id; $hasAuthened = true; Auth::loginUsingId($user_key); //set mmplant Auth::user()->mmplant = $mmplant; Session::put('user_mmplant', $mmplant); // set mmemployee_table $user_priority = 255; Session::put('user_empId', $user_empId); Session::put('user_priority', $user_priority); Log::info('mmplant->' . $mmplant); } else { $error_message = " Invalid Employee ID or Password"; } Log::info($user_ldap); } else { $error_message = " Employee is Empty"; } /* $user_name = [ 'name' => 'imake', 'email' => '*****@*****.**', 'password' => 'password' ]; $user_name=null; */ } // You can also specify true as the second parameter to set the "remember me" cookie. Session::put('error_message', $error_message); //return redirect()->intended('/home'); if ($hasAuthened) { $session_id = Session::getId(); if (!empty($mmtrendsM)) { $userLoginLog = new UserLoginLog(); $userLoginLog->user_id = $user_empId; $current_time = Carbon::now(); $userLoginLog->user_login_log_id = $session_id; $userLoginLog->login_time = $current_time; $userLoginLog->date_created = $current_time; $userLoginLog->session_id = $session_id; $userLoginLog->title_name = $mmtrendsM[0]->B; $names = explode(" ", $mmtrendsM[0]->C); $userLoginLog->first_name = $names[0]; $userLoginLog->last_name = $names[1]; $userLoginLog->save(); } Log::info("into login successs session id->" . $session_id); return redirect()->intended('/ais/index'); } else { Log::info("error_message"); // session()->flash('error_message', " Invalid Employee id or Password ."); // Session::put('error_message', " Invalid Employee id or Password ."); //return redirect()->intended('/ais/login'); return redirect()->intended('/login'); } // check ldap }