95 lines
2.1 KiB
PHP
95 lines
2.1 KiB
PHP
<?php
|
|
|
|
namespace App\Controllers;
|
|
|
|
use App\Controllers\BaseController;
|
|
|
|
class V2 extends BaseController {
|
|
|
|
public function index() {
|
|
$session = session();
|
|
|
|
if (! $session->get('isLoggedIn')) {
|
|
return redirect()->to('v2/login');
|
|
}
|
|
|
|
// Jika sudah login, arahkan sesuai level
|
|
switch ($session->get('level')) {
|
|
case 1:
|
|
return redirect()->to('v2/admin');
|
|
case 2:
|
|
return redirect()->to('v2/dokter');
|
|
case 3:
|
|
return redirect()->to('v2/analis');
|
|
case 4:
|
|
return redirect()->to('v2/cs');
|
|
default:
|
|
return redirect()->to('v2/login');
|
|
}
|
|
}
|
|
|
|
public function loginPage() {
|
|
return view("v2/login");
|
|
}
|
|
|
|
public function login() {
|
|
helper(['form', 'url']);
|
|
$session = session();
|
|
$db = \Config\Database::connect();
|
|
|
|
$userid = strtoupper(trim($this->request->getPost('userid')));
|
|
$password = $this->request->getPost('password');
|
|
|
|
// Gunakan raw SQL sesuai kolom di tabel kamu
|
|
$query = $db->query("SELECT * FROM gdc_cmod.dbo.USERS WHERE USERID = ?", [$userid]);
|
|
$user = $query->getRowArray();
|
|
|
|
if ($user && !empty($user['PASSWORD']) && password_verify($password, $user['PASSWORD'])) {
|
|
|
|
// Role untuk url
|
|
switch ((int)$user['USERLEVEL']) {
|
|
case 1:
|
|
$role = 'admin';
|
|
break;
|
|
case 2:
|
|
$role = 'doctor';
|
|
break;
|
|
case 3:
|
|
$role = 'analyst';
|
|
break;
|
|
case 4:
|
|
$role = 'cs';
|
|
break;
|
|
default:
|
|
$role = '';
|
|
break;
|
|
}
|
|
|
|
// Simpan session
|
|
$session->set([
|
|
'isLoggedIn' => true,
|
|
'userid' => (string) $user['USERID'],
|
|
'userlevel' => (int) $user['USERLEVEL'],
|
|
'userrole' => (string) $role,
|
|
]);
|
|
|
|
// Redirect sesuai level dari data didatabase
|
|
switch ((int)$user['USERLEVEL']) {
|
|
case 1:
|
|
return redirect()->to('v2/admin');
|
|
case 2:
|
|
return redirect()->to('v2/doctor');
|
|
case 3:
|
|
return redirect()->to('v2/analyst');
|
|
case 4:
|
|
return redirect()->to('v2/cs');
|
|
default:
|
|
return redirect()->to('v2/login');
|
|
}
|
|
} else {
|
|
$session->setFlashdata('error', 'USERID atau PASSWORD salah.');
|
|
return redirect()->back();
|
|
}
|
|
}
|
|
}
|