Commit 64fade56 by Lalang Trendy Buana Committed by nurchamim

modul: middleware

status: selesai
keterangan: tambah url ref ketika session expired dan redirect ketika login berhasil
parent 7b87e930
...@@ -18,8 +18,14 @@ class Auth extends MY_Controller ...@@ -18,8 +18,14 @@ class Auth extends MY_Controller
if (isset($id_karyawan)) { if (isset($id_karyawan)) {
redirect(route('dashboard.absensi')); redirect(route('dashboard.absensi'));
} else { } else {
if(str_contains(current_url(), 'http://localhost/profesional_v3') || str_contains(current_url(), 'https://apps.absenku.com')) { // Get parameter ref dari URL dan simpan ke session
if(strpos(file_get_contents(APPPATH.'/config/database.php'), 'dashboard_absenku')) { $ref_url = $this->input->get('ref');
if ($ref_url) {
$this->session->set_userdata('ref_url', $ref_url);
}
if (str_contains(current_url(), 'http://localhost/profesional_v3') || str_contains(current_url(), 'https://apps.absenku.com')) {
if (strpos(file_get_contents(APPPATH . '/config/database.php'), 'dashboard_absenku')) {
$this->load->database('dashboard', false, true); $this->load->database('dashboard', false, true);
$data['data'] = $this->db->where('status', 'aktif')->order_by('no_urut', 'asc')->get('login_page_banner')->result(); $data['data'] = $this->db->where('status', 'aktif')->order_by('no_urut', 'asc')->get('login_page_banner')->result();
} }
...@@ -172,10 +178,10 @@ class Auth extends MY_Controller ...@@ -172,10 +178,10 @@ class Auth extends MY_Controller
$id_cabang_reimbursement_arr = explode(",", $list_cabang_reimursement); $id_cabang_reimbursement_arr = explode(",", $list_cabang_reimursement);
} }
} else { } else {
if($rows->level_user == "1"){ if ($rows->level_user == "1") {
$adm_reimbursement = true; $adm_reimbursement = true;
$id_cabang_reimbursement_arr = 'all'; $id_cabang_reimbursement_arr = 'all';
}else{ } else {
$adm_reimbursement = false; $adm_reimbursement = false;
$id_cabang_reimbursement_arr = []; $id_cabang_reimbursement_arr = [];
} }
...@@ -189,7 +195,7 @@ class Auth extends MY_Controller ...@@ -189,7 +195,7 @@ class Auth extends MY_Controller
// flexible_jam_kerja // flexible_jam_kerja
if (isset($paket_arr['flexible_jam_kerja'])) { if (isset($paket_arr['flexible_jam_kerja'])) {
$flexible_jam_kerja = $paket_arr['flexible_jam_kerja']; $flexible_jam_kerja = $paket_arr['flexible_jam_kerja'];
}else{ } else {
$flexible_jam_kerja = false; $flexible_jam_kerja = false;
} }
...@@ -199,7 +205,7 @@ class Auth extends MY_Controller ...@@ -199,7 +205,7 @@ class Auth extends MY_Controller
// patroli // patroli
if (isset($paket_arr['patroli'])) { if (isset($paket_arr['patroli'])) {
$patroli = $paket_arr['patroli']; $patroli = $paket_arr['patroli'];
}else{ } else {
$patroli = false; $patroli = false;
} }
...@@ -209,7 +215,7 @@ class Auth extends MY_Controller ...@@ -209,7 +215,7 @@ class Auth extends MY_Controller
// sos_button // sos_button
if (isset($paket_arr['sos_button'])) { if (isset($paket_arr['sos_button'])) {
$sos_button = $paket_arr['sos_button']; $sos_button = $paket_arr['sos_button'];
}else{ } else {
$sos_button = false; $sos_button = false;
} }
...@@ -254,7 +260,7 @@ class Auth extends MY_Controller ...@@ -254,7 +260,7 @@ class Auth extends MY_Controller
$adm_absensi = $adm_absensi ? true : false; $adm_absensi = $adm_absensi ? true : false;
$level_user_prev = $rows->level_user; $level_user_prev = $rows->level_user;
if($adm_absensi == true){ if ($adm_absensi == true) {
$level_user = "1"; $level_user = "1";
} }
...@@ -266,9 +272,9 @@ class Auth extends MY_Controller ...@@ -266,9 +272,9 @@ class Auth extends MY_Controller
->get() ->get()
->row(); ->row();
if(!empty($adm_payroll) || $rows->level_user == "1"){ if (!empty($adm_payroll) || $rows->level_user == "1") {
$adm_payroll = true; $adm_payroll = true;
}else{ } else {
$adm_payroll = false; $adm_payroll = false;
} }
...@@ -309,6 +315,14 @@ class Auth extends MY_Controller ...@@ -309,6 +315,14 @@ class Auth extends MY_Controller
$data_session = $data; $data_session = $data;
$this->session->set_userdata($data_session); $this->session->set_userdata($data_session);
// Cek apakah ada ref_url dari session (ketika session habis)
$ref_url = $this->session->userdata('ref_url');
if ($ref_url) {
// Hapus ref_url dari session setelah digunakan
$this->session->unset_userdata('ref_url');
$url = $ref_url;
} else {
if ($level_user == "3") { if ($level_user == "3") {
$url = site_url("absensi/home"); $url = site_url("absensi/home");
} else if ($level_user == "6") { } else if ($level_user == "6") {
...@@ -316,6 +330,8 @@ class Auth extends MY_Controller ...@@ -316,6 +330,8 @@ class Auth extends MY_Controller
} else { } else {
$url = route('dashboard.absensi'); $url = route('dashboard.absensi');
} }
}
$response = array( $response = array(
'success' => true, 'success' => true,
'message' => 'Successfully login', 'message' => 'Successfully login',
......
...@@ -5,7 +5,7 @@ class Otentikasi_login implements Luthier\MiddlewareInterface{ ...@@ -5,7 +5,7 @@ class Otentikasi_login implements Luthier\MiddlewareInterface{
public function run($args = []){ public function run($args = []){
if(ci()->session->userdata('id_karyawan') === null){ if(ci()->session->userdata('id_karyawan') === null){
redirect(route('login')); redirect(route('login') . '?ref=' . urlencode(current_url()));
}else{ }else{
if($this->wizard()) { if($this->wizard()) {
return; return;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment