update 2023-02-13

This commit is contained in:
2023-02-13 16:55:11 +07:00
parent 36a32e0165
commit 7f00f39f1f
34 changed files with 372 additions and 19305 deletions
+9 -9
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /App.php
Desc. : v4 - HTML5 Page Generator (jQuery & CoreUI)
Desc. : v3 - HTML5 Page Generator (jQuery & Bootstrap)
Created By : Siau Pheng ([email protected]).
Created Date : January 10th, 2008.
Last Modified : October 17th, 2022.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4;
namespace siaupheng\fonia3;
final class App {
public $version = "4.0.0";
@@ -28,8 +28,8 @@ final class App {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
$this->__form = new \siaupheng\fonia4\Web\Form($this->__db);
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
$this->__form = new \siaupheng\fonia3\Web\Form($this->__db);
$this->apps = $_SESSION['__WEB_APP'];
$this->apps['TEMPLATE'] = "index.php";
@@ -37,13 +37,13 @@ final class App {
$this->auser = $_SESSION['__WEB_USER'];
$this->auser['user_info'] = tgl_sql2str($this->auser['Last_Date'], true) ." // ". $this->auser['Last_IP'].'<input type="hidden" id="Desktop_User_ID" value="'.intval($this->auser['UserID']).'"><input type="hidden" id="Desktop_User_Level" value="'.intval($this->auser['Level']).'"><input type="hidden" id="Desktop_User_UID" value="'.$this->auser['Username'].'">';
$this->auser['user_img'] = "profile.webp";
if (file_exists($this->apps['REAL_PATH']."assets/images/profiles/".$this->auser['ID'].".webp")) {
$this->auser['user_img'] = $this->auser['ID'].".webp";
if (file_exists($this->apps['REAL_PATH']."assets/images/profiles/".$this->auser['UserID'].".webp")) {
$this->auser['user_img'] = $this->auser['UserID'].".webp";
}
}
$this->reg = new \siaupheng\fonia4\Web\Register($this->__db);
$this->cache = new \siaupheng\fonia4\Data\Cache($this->__db);
$this->menu = new \siaupheng\fonia4\Web\Menu($this->__db);
$this->reg = new \siaupheng\fonia3\Web\Register($this->__db);
$this->cache = new \siaupheng\fonia3\Data\Cache($this->__db);
$this->menu = new \siaupheng\fonia3\Web\Menu($this->__db);
}
public function TampilApp($aoption = array()) {
+3 -3
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /DB/CheckSQL.php
Desc. : v4 - Class Check SQL / Repair Database
Desc. : v3 - Class Check SQL / Repair Database
Created By : Siau Pheng ([email protected]).
Created Date : May 11th, 2011.
Last Modified : May 8th, 2021.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\DB;
namespace siaupheng\fonia3\DB;
final class CheckSQL {
private $__atabel = array();
@@ -23,7 +23,7 @@ final class CheckSQL {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
$this->__db->Query("SELECT TABLE_NAME,ENGINE,TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='".$this->__db->getDBName()."' AND TABLE_TYPE='BASE TABLE'");
while ($this->__db->Next()) {
+2 -2
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\DB;
namespace siaupheng\fonia3\DB;
final class DumpSQL {
private $__adata = array();
@@ -23,7 +23,7 @@ final class DumpSQL {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
$this->__adata = $this->__db->getConfig();
}
+1 -1
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\DB;
namespace siaupheng\fonia3\DB;
final class MySQL {
private $cnn;
+2 -2
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\DB;
namespace siaupheng\fonia3\DB;
final class SQL {
private $__ttable = "";
@@ -26,7 +26,7 @@ final class SQL {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
}
public function SafeSQL($ttext = "") {
+2 -2
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /Data/CSV.php
Desc. : v4 - Class pembuatan file CSV
Desc. : v3 - Class pembuatan file CSV
Created By : Siau Pheng ([email protected]).
Created Date : April 2rd, 2011.
Last Modified : May 6th, 2021.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Data;
namespace siaupheng\fonia3\Data;
define( DELI_CSV, ";" );
define( CRLF_CSV, "\r\n" );
+4 -4
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /Data/Cache.php
Desc. : v4 - Class cache aplikasi
Desc. : v3 - Class cache aplikasi
Created By : Siau Pheng ([email protected]).
Created Date : March 16th, 2008.
Last Modified : May 8th, 2021.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Data;
namespace siaupheng\fonia3\Data;
use MatthiasMullie\Minify;
@@ -31,7 +31,7 @@ final class Cache {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else $this->__db = new \siaupheng\fonia4\DB\MySQL();
else $this->__db = new \siaupheng\fonia3\DB\MySQL();
$rootdir = $_SESSION['__WEB_APP']['REAL_PATH'];
$this->__cachedir = $rootdir . 'cache/';
@@ -162,7 +162,7 @@ final class Cache {
}
public function Main($type="css") {
$mode = (isset($_SESSION['__WEB_USER']) && is_array($_SESSION['__WEB_USER']) && $_SESSION['__WEB_USER']['UserID']>0) ? "index" : "login";
$mode = (($_SESSION['__WEB_USER']['UserID'] ?? 0) > 0) ? "index" : "login";
$afile = $this->gen_file($type, $mode);
$lastmod = $this->check_file($afile);
if ($lastmod <> intval($this->__ini[$type][$mode.'_stamp']) || !file_exists($this->__cachedir . $this->__ini[$type][$mode.'_file'])) {
+2 -2
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /Data/PDF.php
Desc. : v4 - Class pembuatan file PDF
Desc. : v3 - Class pembuatan file PDF
Created By : Siau Pheng ([email protected]).
Created Date : April 18th, 2015.
Last Modified : May 8th, 2021.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Data;
namespace siaupheng\fonia3\Data;
use Mpdf;
+2 -2
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Auth {
private $__id_reg = 0;
@@ -22,7 +22,7 @@ final class Auth {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
$this->__id_reg = $_SESSION['__WEB_APP']['REG_ID'];
}
+3 -3
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /Web/Button.php
Desc. : v4 - Button Generator (jQuery & CoreUI)
Desc. : v3 - Button Generator (jQuery & Bootstrap)
Created By : Siau Pheng ([email protected]).
Created Date : February 27th, 2008.
Last Modified : April 4th, 2022.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
class Button {
private $__abutton = array();
@@ -58,7 +58,7 @@ class Button {
if ("separator" == $item['type']) {
if (0 < $sepa_size) $_out .= '<div class="d-none d-lg-block col-lg-'.$sepa_size.'">&nbsp;</div>';
} else {
$_out .= '<div class="col-md-'.floor($size*2).' col-lg-'.$size.' mb-sm-0"><button type="button" class="btn btn-block btn-'.$item['type'].' shadow-none" id="'.$item['id'].'"'.(true==$item['bmiss']?' data-coreui-dismiss="modal"':'').'>'.$item['label'].'</button></div>';
$_out .= '<div class="col-md-'.floor($size*2).' col-lg-'.$size.' mb-sm-0"><button type="button" class="btn btn-block btn-'.$item['type'].' shadow-none" id="'.$item['id'].'"'.(true==$item['bmiss']?' data-bs-dismiss="modal"':'').'>'.$item['label'].'</button></div>';
}
}
$_out .= '</div>';
+3 -3
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /Web/Form.php
Desc. : v4 - Form Generator (jQuery & CoreUI)
Desc. : v4 - Form Generator (jQuery & Bootstrap)
Created By : Siau Pheng ([email protected]).
Created Date : February 27th, 2008.
Last Modified : April 17th, 2022.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Form {
private $__aform = array();
@@ -25,7 +25,7 @@ final class Form {
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
$this->__button = new Button();
}
+1 -1
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class HTMLPrint {
private $__avalue = array();
+20 -21
View File
@@ -3,24 +3,24 @@
/*******************************************************************
Module : /Web/Menu.php
Desc. : v4 - Class menu
Desc. : v3 - Class menu
Created By : Siau Pheng ([email protected]).
Created Date : January 16th, 2008.
Last Modified : May 1st, 2022.
Last Modified : January 13th, 2023.
(c) 2008 - 2022, 3FONIA Software; WWW.3FONIA.COM.
(c) 2008 - 2023, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Menu {
protected $__db = null;
public function __construct($db = null){
$this->__db = $db ?? new \siaupheng\fonia4\DB\MySQL();
$this->__db = $db ?? new \siaupheng\fonia3\DB\MySQL();
}
private function Menu_Query($qry = "", $order = "Kode") {
@@ -53,18 +53,18 @@ final class Menu {
$amodul = $this->Menu_Query("Aktif=1".$tsql, "Kode");
$thasil = '';
$last_level = 0; $last_divider = false;
$last_level = 0;
for ($i=0; $i<count($amodul); $i++) {
if (($i>0) and ($amodul[$i]['Level']<$amodul[$i-1]['Level'])) {
$thasil .= str_repeat("</ul></li>", $amodul[$i-1]['Level']-$amodul[$i]['Level']);
}
$ticon = ($amodul[$i]['Icon']) ? '<i class="me-2 '.$amodul[$i]['Icon'].'"></i>' : "";
if (($amodul[$i]['Level']>=0) && (isset($amodul[$i+1]) && ($amodul[$i+1]['Level']>$amodul[$i]['Level']))) {
$ticon = ($amodul[$i]['Icon']) ? $amodul[$i]['Icon'] : "cui-puzzle";
$thasil .= '<li class="nav-group '.($i==0?'show':'').'"><a class="nav-link nav-group-toggle" title="'.$amodul[$i]['Judul'].'"><i class="nav-icon '.$ticon.'"></i> '.$amodul[$i]['Menu'].'</a><ul class="nav-group-items">';
$thasil .= '<li class="nav-item has-submenu"><a class="nav-link" title="'.$amodul[$i]['Judul'].'">'.$ticon.$amodul[$i]['Menu'].'<i class="icon cui-caret-bottom float-end"></i></a><ul class="submenu collapse">';
} else if (trim($amodul[$i]['Menu'])=="-") {
$thasil .= '<li class="nav-divider"></li>';
} else {
$thasil .= '<li class="nav-item"><a class="nav-link mlink" id="'.$amodul[$i]['Kode'].'Link" title="'.$amodul[$i]['Judul'].'"><span class="nav-icon"></span> '.$amodul[$i]['Menu'].'</a></li>';
$thasil .= '<li class="nav-item"><a class="nav-link mlink" id="'.$amodul[$i]['Kode'].'Link" title="'.$amodul[$i]['Judul'].'">'.$ticon.$amodul[$i]['Menu'].'</a></li>';
}
$last_level = $amodul[$i]['Level'];
}
@@ -99,20 +99,19 @@ final class Menu {
if (($i>0) and ($amodul[$i]['Level']<$amodul[$i-1]['Level'])) {
$thasil .= str_repeat("</ul></li>", $amodul[$i-1]['Level']-$amodul[$i]['Level']);
}
if (isset($amodul[$i+1]) && ($amodul[$i+1]['Level']>$amodul[$i]['Level'])) {
$ticon = ($amodul[$i]['Icon']) ? '<i class="me-2 '.$amodul[$i]['Icon'].'"></i>' : "";
if (isset($amodul[$i+1]) && ($amodul[$i+1]['Level']>$amodul[$i]['Level'])) {//have submenu
if ($amodul[$i]['Level']==$mulai_level) {
$ticon = ($amodul[$i]['Icon']) ? " me-1 ".$amodul[$i]['Icon'] : "";
$thasil .= '<li class="nav-item pe-3"><a class="nav-link dropdown-toggle" data-coreui-toggle="dropdown" aria-expanded="false" title="'.$amodul[$i]['Judul'].'"><i class="nav-icon'.$ticon.'"></i> '.$amodul[$i]['Menu'].'</a><ul class="dropdown-menu multi-level">';
$thasil .= '<li class="nav-item pe-3 dropdown"><a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" title="'.$amodul[$i]['Judul'].'">'.$ticon.$amodul[$i]['Menu'].'</a><ul class="dropdown-menu" data-bs-popper="none">';
} else {
$thasil .= '<li class="nav-item dropdown-submenu"><a class="nav-link dropdown-toggle slink" data-coreui-toggle="dropdown" aria-expanded="false" title="'.$amodul[$i]['Judul'].'"><i class="nav-icon"></i> '.$amodul[$i]['Menu'].'</i></a><ul class="dropdown-menu">';
$thasil .= '<li class="dropdown-submenu"><a class="dropdown-item dropdown-toggle slink" data-bs-toggle="dropdown" aria-expanded="false" title="'.$amodul[$i]['Judul'].'">'.$ticon.$amodul[$i]['Menu'].'</a><ul class="dropdown-menu" data-bs-popper="none">';
}
} else if (trim($amodul[$i]['Menu'])=="-" && $amodul[$i]['Level']>$mulai_level) {
} else if (trim($amodul[$i]['Menu'])=="-" && $amodul[$i]['Level']>$mulai_level) {//divider
$thasil .= '<li class="dropdown-divider"></li>';
} else if ($amodul[$i]['Level']==$mulai_level) {
$ticon = ($amodul[$i]['Icon']) ? " mr-1 ".$amodul[$i]['Icon'] : "";
$thasil .= '<li class="nav-item pe-3"><a class="nav-link mlink" id="'.$amodul[$i]['Kode'].'Link" title="'.$amodul[$i]['Judul'].'"><span class="nav-icon'.$ticon.'"></span> '.$amodul[$i]['Menu'].'</a></li>';
} else {
$thasil .= '<li class="nav-item"><a class="nav-link dropdown-item mlink" id="'.$amodul[$i]['Kode'].'Link" title="'.$amodul[$i]['Judul'].'">'.$amodul[$i]['Menu'].'</a></li>';
} else if ($amodul[$i]['Level']==$mulai_level) {//level = 1 + no submenu
$thasil .= '<li class="nav-item pe-3"><a class="nav-link mlink" id="'.$amodul[$i]['Kode'].'Link" title="'.$amodul[$i]['Judul'].'">'.$ticon.$amodul[$i]['Menu'].'</a></li>';
} else {// level > 1 + no submenu
$thasil .= '<li><a class="dropdown-item mlink" id="'.$amodul[$i]['Kode'].'Link" title="'.$amodul[$i]['Judul'].'">'.$ticon.$amodul[$i]['Menu'].'</a></li>';
}
$last_level = $amodul[$i]['Level'];
}
@@ -120,8 +119,8 @@ final class Menu {
return $thasil;
}
static function MenuJSON($db = null, $page = "", $tquery = "") {
$_mdb = $db ?? new \siaupheng\fonia4\DB\MySQL();
static function MenuJSON($db = null, $page = "", $tquery = "") {//oke
$_mdb = $db ?? new \siaupheng\fonia3\DB\MySQL();
$_query = ($tquery=="") ? "" : ",'".$tquery."'";
$ajson = array('login' => true);
$apage = array('Link' => "");
+1 -1
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
/* VERSI BARU DENGAN MULTI SHEET */
class POSPrint {//up: 20180108
+1 -1
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Param {
private static $__ahasil = array();
+1 -1
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
class RAWPrint {
private $_header = array();
+2 -2
View File
@@ -14,14 +14,14 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Register {
protected $__db = null;
public function __construct($db = null){
if (is_resource($db)) { $this->__db = $db; }
else { $this->__db = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__db = new \siaupheng\fonia3\DB\MySQL(); }
}
static public function reg_id() {
+4 -4
View File
@@ -3,7 +3,7 @@
/*******************************************************************
Module : /Web/Table.php
Desc. : v4 - HTML Table (jQuery & CoreUI)
Desc. : v4 - HTML Table (jQuery & Bootstrap)
Created By : Siau Pheng ([email protected]).
Created Date : January 16th, 2008.
Last Modified : May 3rd, 2022.
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Table {
private $__tquery = "";
@@ -45,7 +45,7 @@ final class Table {
public function __construct($db = null){
if (is_resource($db)) { $this->__cdb = $db; }
else { $this->__cdb = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__cdb = new \siaupheng\fonia3\DB\MySQL(); }
}
public function set_query($tquery = "") {
@@ -219,7 +219,7 @@ final class Table {
/*public function json_table_db($nama_tabel = "tabel_", $baris_tabel = 10) {//new
$adata = array();
$dbpage = \siaupheng\fonia4\Web\Param::Get($nama_tabel.'_pg', 0);
$dbpage = \siaupheng\fonia3\Web\Param::Get($nama_tabel.'_pg', 0);
// adding header
for ($i=0; $i<count($this->__afield); $i++) {
+1 -1
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Terbilang {
private $numb = array("","Satu","Dua","Tiga","Empat","Lima","Enam","Tujuh","Delapan","Sembilan");
+2 -2
View File
@@ -14,7 +14,7 @@
declare(strict_types=1);
namespace siaupheng\fonia4\Web;
namespace siaupheng\fonia3\Web;
final class Update {
private $__amysql = array();
@@ -22,7 +22,7 @@ final class Update {
public function __construct($db = null){
if (is_resource($db)) { $this->__linkdb = $db; }
else { $this->__linkdb = new \siaupheng\fonia4\DB\MySQL(); }
else { $this->__linkdb = new \siaupheng\fonia3\DB\MySQL(); }
$this->__amysql = $this->__linkdb->getConfig();
}