main-backend/php_code/app/Http/Controllers/UserloginController.php
Kwesi Banson Jnr d22ca2954b Initial commit
2026-02-19 07:04:15 +00:00

71 lines
2.9 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Utilities\ApiCalls;
use Session;
use Illuminate\Http\Request;
class UserloginController extends Controller
{
public function index(){
$data = [
'page_title' => 'User Login'
];
return view('user-auth.login', $data);
}
public function handleLogin(Request $request){
$this->validate($request, ['username' => 'required', 'password' => 'required']);
$logged_in = '';
# call API here to login
$check_user_url = 'auth/auth_user.php';
$data = ['user' => $request->username, 'pass' => $request->password, 'api_token' => env('LUPMISAPIKEY')];
$check_user = ApiCalls::CurlPost(json_encode($data), $check_user_url);
if($check_user == false){
return redirect("user-login")->withErrors(array("System not available at the moment. Try again later!"))->withInput();
}
$result = json_decode($check_user, true);
if($result['success'] == false){
return redirect("user-login")->withErrors(array("Incorrect Email/Password. Check and try again!"))->withInput();
}
$logged_in = $result['data'];
$request->session()->regenerate(true);
$request->session()->put('current_user.ua_id', $logged_in['ua_id']);
$request->session()->put('current_user.user_id', $logged_in['user_id']);
$request->session()->put('current_user.username', $logged_in['username']);
$request->session()->put('current_user.title', $logged_in['title']);
$request->session()->put('current_user.full_name', $logged_in['full_name']);
$request->session()->put('current_user.email', $logged_in['email']);
$request->session()->put('current_user.phone', $logged_in['phone']);
$request->session()->put('current_user.allowed_apps', $logged_in['allowed_apps']);
$request->session()->put('current_user.ua_position', $logged_in['ua_position']);
$request->session()->put('current_user.region_id', $logged_in['region_id']);
$request->session()->put('current_user.is_password_changed', $logged_in['is_password_changed']);
$request->session()->put('current_user.district_id', $logged_in['district_id']);
// $request->session()->put('current_user.permissions', $logged_in['permissions']);
\Log::info($logged_in['full_name']. ' Successfully logged in at : ' . date('Y-m-d H:i:s'));
return redirect(url('/'));
}
public function handle_logout(Request $request) {
$user_id = session('current_user.id');
$username = session('current_user.name');
$request->session()->forget('current_user');
$request->session()->flush();
$request->session()->regenerate(true);
\Log::info($username . ' Successfully logged out at : ' . date('Y-m-d H:i:s'));
Session::flash('success_message', 'You have successfully logged out!');
return redirect("/");
}
}