/** * Create a new user instance after a valid registration. * * @param array $data * * @return User */ protected function create(array $data) { $user = User::create(['name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password']), 'user_type' => $data['user_type']]); $userdata = ['user_id' => $user->id, 'phone_number' => '9888888888', 'login_time' => Carbon::now()]; $userdetail = userDetail::create($userdata); return $user; }
/** * Register any other events for your application. * * @param \Illuminate\Contracts\Events\Dispatcher $events * @return void */ public function boot(DispatcherContract $events) { parent::boot($events); $events->listen('Illuminate\\Auth\\Events\\Login', function () { $login_data = ['login_time' => Carbon::now()]; User::where('id', Auth::user()->id)->update(['last_login' => Carbon::now()]); userDetail::where('user_id', Auth::user()->id)->update($login_data); $login_user_detail = User::where('id', Auth::user()->id)->get(); foreach ($login_user_detail as $val) { $user_detail_array = ['user_id' => $val->id, 'user_type' => $val->user_type, 'name' => $val->name, 'email' => $val->email]; } if ($user_detail_array['user_type'] == 'attorney') { $session_array = ['attorney_session_array' => ['user_id' => $user_detail_array['user_id'], 'user_type' => $user_detail_array['user_type'], 'name' => $user_detail_array['name'], 'email' => $user_detail_array['email']]]; } elseif ($user_detail_array['user_type'] == 'client') { $session_array = ['client_session_array' => ['user_id' => $user_detail_array['user_id'], 'user_type' => $user_detail_array['user_type'], 'name' => $user_detail_array['name'], 'email' => $user_detail_array['email']]]; } elseif ($user_detail_array['user_type'] == 'admin') { $session_array = ['admin_session_array' => ['user_id' => $user_detail_array['user_id'], 'user_type' => $user_detail_array['user_type'], 'name' => $user_detail_array['name'], 'email' => $user_detail_array['email']]]; } else { $session_array = ['session' => 'null']; } //Save session of login user Session::put($session_array); //Fetch session of login user // if( Session::has('admin_session_array') ){ // $AdminSession = Session::get( 'admin_session_array' ); // //dd($AdminSession); // }elseif(Session::has('client_session_array')){ // $ClientSession = Session::get( 'client_session_array' ); // //dd($ClientSession); // }elseif(Session::has('attorney_session_array')){ // $AttorneySession = Session::get( 'attorney_session_array' ); // //dd($AttorneySession); // }else{ // $DefaultSession = Session::get( 'session' ); // } }); $events->listen('Illuminate\\Auth\\Events\\Logout', function () { $login_user_detail = User::where('id', Auth::user()->id)->get(); foreach ($login_user_detail as $val) { $user_detail_array = ['user_type' => $val->user_type]; } if ($user_detail_array['user_type'] == 'client') { Session::forget('client_session_array'); } elseif ($user_detail_array['user_type'] == 'attorney') { Session::forget('attorney_session_array'); } elseif ($user_detail_array['user_type'] == 'admin') { Session::forget('admin_session_array'); } else { // } }); }