FEAT_COOKIE_SAVE_AND_CHECK ADDED

This commit is contained in:
Srinivas-Saravanan 2025-01-08 09:17:03 +05:30
parent 4f5f117aa6
commit 0e0a881375
5 changed files with 48 additions and 16 deletions

View File

@ -19,17 +19,16 @@ class LoginController extends BaseController
// set_session_data($session_data);
// $isLoggedIn = check_session();
$isLoggedIn = check_session();
if ($isLoggedIn) {
$hasCookie = check_cookie();
if ($isLoggedIn || $hasCookie) {
return redirect()->to(base_url('/dashboard/view'));
}
return view('login');
}
public function receiveGoogleOAuthResponse()
{
$UserModel = new UserModel();
//echo 'DONE';die();
if ($this->request->getGet('code')) {
@ -52,7 +51,10 @@ class LoginController extends BaseController
'userProfile' => $value->picture,
'user_team' => $user_team,
];
$path = getenv('cookie.Path');
$domain = getenv('cookie.Domain');
$https = getenv('ccokie.secure');
setcookie('session_data', json_encode($session_data), time() + 12 * 60 * 60, $path, $domain, $https, true);
set_session_data($session_data);
log_message('error', 'Set The UserId : `'. $user->id .'` in Session');
@ -82,12 +84,14 @@ class LoginController extends BaseController
public function initiateGoogleOAuth()
{
return googleOAuthLogin(false);
return googleOAuthLogin(false);
}
public function logout()
{
$path = getenv('cookie.Path');
session()->destroy();
setcookie('session_data', '', time() - 3600, $path);
return redirect()->to(base_url('login'));
}

View File

@ -9,8 +9,7 @@ class AuthMVC implements FilterInterface
{
public function before(RequestInterface $request, $arguments = null)
{
if (!check_session()) {
if (!check_session() && !check_cookie()) {
return redirect()->to(base_url('/login'));
}

View File

@ -1,6 +1,6 @@
<?php
// File: app/Helpers/oauth_helper.php
// require 'vendor/autoload.php';
use Google\Client as GoogleClient;
use Google\Service\Oauth2;

View File

@ -1,5 +1,40 @@
<?php
use App\Models\UserModel;
if(!function_exists('check_cookie')){
function check_cookie(){
$UserModel = new UserModel();
if(isset($_COOKIE['session_data'])){
$value = (array)json_decode($_COOKIE['session_data']);
$user = $UserModel->getUserByEmail($value['userData']->email);
if($user){
if($user->is_active !== '0'){
$user_team = $UserModel->getUserTeamsByUserID($user->id);
// dd($user_team);
$session_data = [
'isLoggedIn' => True ,
'userid' => $user->id,
'userData' => $user,
'userProfile' => $value['userProfile'],
'user_team' => $user_team,
];
set_session_data($session_data);
// $this->getUserDeviceInfo($user->id, 'NhanceUser');
// return redirect()->to(base_url('/dashboard/view'));
return true;
}
// $session_data = (array)json_decode($_COOKIE['session_data']);
// set_session_data($session_data);
}
}else{
return false;
}
}
}
if (!function_exists('check_session')) {
function check_session()
@ -148,9 +183,3 @@ if (!function_exists('user_team')) {
return $session->get('user_team');
}
}

View File

@ -16,7 +16,7 @@
"ext-mbstring": "*",
"dompdf/dompdf": "^2.0",
"firebase/php-jwt": "^6.10",
"google/apiclient": "^2.15.0",
"google/apiclient": "^2.18",
"kreait/firebase-php": "^7.0",
"laminas/laminas-escaper": "^2.9",
"php-amqplib/php-amqplib": "^2.8",