first commit

This commit is contained in:
2026-01-22 11:06:19 +07:00
commit c877faf5a0
168 changed files with 19843 additions and 0 deletions
+85
View File
@@ -0,0 +1,85 @@
<?php
/*******************************************************************
Module : /apps/php/login.php
Desc. : PHP - Halaman Proses Login
Created By : Siau Pheng ([email protected]).
Created Date : January 5th, 2008.
Last Modified : April 29th, 2022.
(c) 2008 - 2019, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
require_once(__DIR__."/../../../../vendor/autoload.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\Web\Auth;
use siaupheng\fonia3\Web\Param;
$db = $db ?? new MySQL();
$auth = new Auth($db);
$ajson = [];
$mode = Param::Get("mode");
$aapp = $_SESSION['__WEB_APP'];
if ($mode == "login") {
$auser = [];
$auth->set_id_reg($aapp['PARENT_CODE']);
if ($auth->user_check(Param::Get("Username"), Param::Get("Password"))) {
$auser = $auth->user_data(Param::Get("Username"));
//MONITOR DISPLAY
if ($_SESSION['__APP_INV']['MON_ENABLE']) {
$db->Query("DELETE FROM disp_login WHERE CabID='".$_SESSION['__APP_INV']['CABANGID']."' AND UserID='".$auser["UserID"]."'");
$db->Query("INSERT INTO disp_login SET IP='".$_SERVER['REMOTE_ADDR']."',CabID='".$_SESSION['__APP_INV']['CABANGID']."',UserID='".$auser["UserID"]."',Unix='".$auser['UNIX']."',Date=NOW()");
}
$_SESSION['__WEB_USER'] = $auser;
$_appurl = $_GET['redir'];
if (!empty($_appurl)) {
$_redir = $auth->redirect($_appurl);
//jika kosong, tampilkan pesan redirect tidak diijinkan
//jika berisi, js harus redirect ...
}
$ajson['token'] = $_SESSION['APP_TOKEN'];
$ajson['hasil'] = "SUKSES";
$ajson['pesan'] = '<div class="border border-success p-2 pt-3"><h5>Login berhasil,</h5><p><b>'.$auser["Username"].'</b> / '.$auser["Nama"].'<br>'.$auser["Posisi"].'<br><i>login terakhir :</i><br>'.tgl_sql2str($auser["Last_Date"],true).'<br>'.$auser["Last_IP"].'</p></div>';
} else {
$ajson['hasil'] = "ERROR";
$ajson['pesan'] = "Periksa kembali ID Pengguna atau Password Anda ...";
}
} else if ($mode == "logout") {
//MONITOR DISPLAY
if ($_SESSION['__APP_INV']['MON_ENABLE']) {
$db->Query("DELETE FROM disp_login WHERE CabID='".$_SESSION['__APP_INV']['CABANGID']."' AND UserID='".$_SESSION['__WEB_USER']["ID"]."' AND IP='".$_SERVER['REMOTE_ADDR']."' AND Unix='".$_SESSION['__WEB_USER']['UNIX']."'");
}
$auth->logout();
foreach ($_SESSION as $_key => $_val) {
if (substr($_key,0,5)=="__WEB") unset($_SESSION[$_key]);
if (substr($_key,0,5)=="__APP") unset($_SESSION[$_key]);
}
require(__DIR__."/../cfg/app.php");
if ($_SERVER['SERVER_ADDR'] == "127.0.0.1") {
$_host = $aapp['WEB_PATH']."../";
} else {
$_host = (isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : $aapp['PARENT_SITE']);
$_host = str_replace(['http://','https://'], "", $_host);
if ($aapp['PARENT_SUB'] == true) {
$_subs = explode('.', $_host);
if (count($_subs) > 2) array_shift($_subs);
$_host = implode('.', $_subs);
}
$_host = "//" . $_host;
}
$ajson['nexthost'] = $_host;
}
send_json($ajson);
?>