74 lines
2.3 KiB
PHP
74 lines
2.3 KiB
PHP
<?php
|
|
|
|
namespace App\Controllers;
|
|
|
|
use CodeIgniter\HTTP\IncomingRequest;
|
|
use CodeIgniter\HTTP\RequestInterface;
|
|
use CodeIgniter\HTTP\ResponseInterface;
|
|
use Psr\Log\LoggerInterface;
|
|
|
|
use App\Models\UserModal;
|
|
|
|
class LoginController extends BaseController
|
|
{
|
|
|
|
public function index(){
|
|
|
|
// $session_data = ['isLoggedIn' => True ,'userid' => '4'];
|
|
// set_session_data($session_data);
|
|
$isLoggedIn = check_session();
|
|
|
|
if ($isLoggedIn) {
|
|
return redirect()->to(base_url('/dashboard/view'));
|
|
}
|
|
return view('login');
|
|
}
|
|
|
|
|
|
public function receiveGoogleOAuthResponse()
|
|
{
|
|
//echo 'DONE';die();
|
|
$UserModel = new UserModal();
|
|
if ($this->request->getGet('code')) {
|
|
$code = (string) $this->request->getGet('code');
|
|
log_message('error', 'Get OAuth Responce Code Sucessfully');
|
|
log_message('error', 'OAuthResponceCode : `'.$code.'`');
|
|
$value = googleOAuthLogin($this->request->getGet('code'));
|
|
if($value){
|
|
$user = $UserModel->getUserByEmail($value->email);
|
|
if($user){
|
|
if($user->is_active !== '0'){
|
|
|
|
$session_data = ['isLoggedIn' => True ,'userid' => $user->id];
|
|
set_session_data($session_data);
|
|
log_message('error', 'Set The UserId : `'. $user->id .'` in Session');
|
|
log_message('error', 'Is User Login Sucessfully');
|
|
return redirect()->to(base_url('/dashboard/view'));
|
|
|
|
}else{
|
|
log_message('error', 'Is User Not Activate');
|
|
session()->setFlashdata('error', 'Is User Not Activate');
|
|
return redirect()->to(base_url('login'));
|
|
}
|
|
}else{
|
|
log_message('error', 'Is User Not Register');
|
|
session()->setFlashdata('error', 'Is User Not Register');
|
|
return redirect()->to(base_url('login'));
|
|
}
|
|
}
|
|
|
|
}else{
|
|
$return = googleOAuthLogin(false);
|
|
return $return;
|
|
}
|
|
}
|
|
|
|
public function logout()
|
|
{
|
|
session()->destroy();
|
|
return redirect()->to(base_url('login'));
|
|
}
|
|
|
|
|
|
}
|