Add version files and new GIF images for UI components

This commit is contained in:
2025-04-03 06:26:44 +07:00
commit 663c28a2ea
5219 changed files with 772528 additions and 0 deletions

View File

@ -0,0 +1,115 @@
<?php
class BASE_MENUCONFIG extends MY_DHTMLX // base class and derived class from fs_library
{
public function fn_page_construct()
{
}
}
class MENUCONFIG_HTML extends BASE_MENUCONFIG // derived class
{
public function fn_page_default()
{
echo $this->FN_CREATEHEADER();
$tabid=$_REQUEST['tabid'];
echo "<script>
// === globar variable
var myLayout, myTree,myTabbar;
function initObject()
{
myLayout = new dhtmlXLayoutObject(document.body,\"2U\",\"dhx_skyblue\");
myLayout.cells(\"a\").setWidth(200);
myLayout.cells(\"a\").setText(\"MENU\");
myLayout.cells(\"b\").setText(\"KONFIGURASI MENU\");
myTree = myLayout.cells(\"a\").attachTree(\"0\");
myTree.setSkin(\"dhx_skyblue\");
myTree.setImagePath(\"".PATH_THEME."/codebase/imgs/dhxtree_skyblue/\");
myTree.enableTreeLines(true);
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("-")."&task=".$this->enc("treemenu")."');
myTree.loadXML(url);
// ==== init Sub Tabbar in Layout Cells b
myTabbar = myLayout.cells('b').attachTabbar(\"Top\");
myTabbar.setSkin('dhx_skyblue');
myTabbar.enableTabCloseButton(true);
myTabbar.addTab('b', 'Selamat Datang', '150px','true',true);";
$url="fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("-")."&task=".$this->enc("pagehome")."')";
echo " myTabbar.cells('b').attachURL($url);
// === Attach Event MyTree
myTree.attachEvent(\"onClick\",function(e){
switch (myTree.getSelectedItemId())
{
case 'mc0':";
$url="fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_new")."&task=".$this->enc("default")."')";
//echo "myLayout.cells(\"b\").attachURL($url);fn_dhtmlxaddtabbar('b','tabhome',$url,'Welcomes',120,true);
echo " fn_dhtmlxaddtabbar('tab0',$url,'Penambahan Menu',150,true);
break;
case 'mc1':";
$url="fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=".$this->enc("default")."')";
echo " fn_dhtmlxaddtabbar('tab1',$url,'Pencarian Menu',150,true);
break;
};
});
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY();
echo $this->FN_CREATEFOOTER();
}
public function fn_page_home()
{
echo "<div style=\"font-size:14pt;margin:20px;\"><u>INFORMASI</u></div>";
echo "<div style=\"font-size:14pt;margin-left:40px;\">
<ul>
<li>Penambahan menu baru untuk aplikasi Dimas.</li>
<li>Perubahan dan konfigurasi menu yang diakses.</li>
</ul>
</div>";
}
public function fn_treemenu()
{
header("Content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>
<tree id=\"0\" radio=\"1\">
<item text=\"Konfigurasi\" id=\"trkonfigurasi\" open=\"1\" im0=\"folderClosed.gif\" im1=\"folderOpen.gif\" im2=\"folderClosed.gif\">
<item text=\"Penambahan Menu\" id=\"mc0\"></item>
<item text=\"Pencarian Menu\" id=\"mc1\"></item>
</item>
</tree>";
}
public function fn_url_home()
{
return "$('#uri').val('ajax=0&sec=1&option=01fc812f36899c1ee4d748105ff6db23&obj=e6e61859e95f78646b67a1cc96d270fa&task=de7eb57f52fc4d8a6fef759e7bb0844b');$('#fm').prop('target','_self');$('#fm').submit();";
}
public function fn_url_menuconfignew()
{
return "$('#uri').val('ajax=0&sec=1&option=01fc812f36899c1ee4d748105ff6db23&obj=e6e61859e95f78646b67a1cc96d270fa&task=de7eb57f52fc4d8a6fef759e7bb0844b');$('#fm').prop('target','_self');$('#fm').submit();";
}
public function fn_url_menuconfiglist()
{
return "$('#uri').val('ajax=0&sec=1&option=01fc812f36899c1ee4d748105ff6db23&obj=00687a17cf8b20f4141743da723d3be4&task=de7eb57f52fc4d8a6fef759e7bb0844b');$('#fm').prop('target','_self');$('#fm').submit();";
}
public function fn_url_search()
{
$urlsearch="ajaxuri('".$this->enc("obj_menuconfig")."','obj=menuconfig_list&task=searchmenu&pagingndx='+$('#txtcbopagingid').val()+'&keyword='+$('#txtsearch').val()+'&header='+$('#cbomenuheader').val(),'div_menuconfigliststatus',true,'');";
$urlsearch.="txtcbopagingid.value=parseInt(txtcbopagingid.value)+1;";
return $urlsearch;
}
}
?>

View File

@ -0,0 +1,167 @@
<?php
//echo $_SESSION['branch_group'];
//echo "<br/><br/>GGGGGG<br/>";
require_once($pg.".html.php");
//echo "xxx<br/><br/>xxx$pg<br/>";
class MENUCONFIG extends MENUCONFIG_HTML
{
//function fn_token_lokasi()
// {
// $keyword=$_POST['keyword'];
// $qry="select id,nama_kota from ".DB_INVOICE.".tbl_kota where nama_kota like '%$keyword%' order by nama_kota asc";
// $rskota=$this->selectquery($qry);
// if($rskota)
// {
// if($this->REC_ROWS_COUNT($rskota)>0)
// {
// $p="";
// while($rw=$this->data_row_object($rskota))
// {
// $p.="{\"id\":\"".$rw->id."\",\"label\":\"".$rw->nama_kota."\"},";
// }
// $p="[".substr($p,0,strlen($p)-1)."]";
//$p="[\"$keyword\"]";
// }
// else
// {
// $p="[\"Record Not Found\"]";
// }
// }
// else
// {
// $p="[\"RecordSet Error\"]";
// }
// $this->clearrecordset($rskota);
// echo $p;
//echo json_encode($arr);
// }
//
// function fn_token_ygmenugaskan()
// {
// $keyword=$_POST['keyword'];
// $qry="select nik,nama_employee from ".DB_INVOICE.".tbl_employee
// where nama_employee like '%$keyword%' and userlevel>=2 and length(nik)=5 and activated='Y' order by nama_employee asc";
// $rsemp=$this->selectquery($qry);
// if($rsemp)
// {
// if($this->REC_ROWS_COUNT($rsemp)>0)
// {
// $p="";
// while($rw=$this->data_row_object($rsemp))
// {
// $p.="{\"id\":\"".$rw->nik."\",\"label\":\"".$rw->nama_employee."\"},";
// }
// $p="[".substr($p,0,strlen($p)-1)."]";
//$p="[\"$keyword\"]";
// }
// else
// {
// $p="[\"Record Not Found\"]";
// }
// }
// else
// {
// $p="[\"RecordSet Error\"]";
// }
// $this->clearrecordset($rsemp);
// echo $p;
//echo json_encode($arr);
// }
//
// function fn_token_ygmenyetujui()
// {
// $keyword=$_POST['keyword'];
// $qry="select nik,nama_employee from ".DB_INVOICE.".tbl_employee
// where (nama_employee like '%$keyword%') and userlevel>=3 and length(nik)=5 and activated='Y' order by nama_employee asc";
// $rsemp=$this->selectquery($qry);
// if($rsemp)
// {
// if($this->REC_ROWS_COUNT($rsemp)>0)
// {
// $p="";
// while($rw=$this->data_row_object($rsemp))
// {
// $p.="{\"id\":\"".$rw->nik."\",\"label\":\"".$rw->nama_employee."\"},";
// }
// $p="[".substr($p,0,strlen($p)-1)."]";
//$p="[\"$keyword\"]";
// }
// else
// {
// $p="[\"Record Not Found\"]";
// }
// }
// else
// {
// $p="[\"RecordSet Error\"]";
// }
// $this->clearrecordset($rsemp);
// echo $p;
//echo json_encode($arr);
// }
}
$cl=new MENUCONFIG();
if(isset($_REQUEST['task'])){$case=$_REQUEST['task'];}
if(isset($_POST['task'])){$case=$_POST['task'];}
if(isset($_REQUEST['obj'])){$obj=$_REQUEST['obj'];}
if(isset($_POST['obj'])){$obj=$_POST['obj'];}
if($_REQUEST){if($_REQUEST['sec']){$case=$cl->dec($case);$obj=$cl->dec($obj);}}
//if($_POST){if($_POST['sec']){$case=$cl->dec($case);$obj=$cl->dec($obj);}}
//if($_POST['sec']){$case=$cl->dec($case);$obj=$cl->dec($obj);}
//echo $option.' '.$obj.' '.$case;return false;
//echo $option.' '.$obj;
//echo $case;return false;
//$obj=trim(strtolower($_REQUEST['obj']));
//$case=trim(strtolower($_REQUEST['task']));
//$option=trim(strtolower($_REQUEST['option']));
//if($_REQUEST['sec']||$sec){$obj=$cl->dec($obj);$case=$cl->dec($case);}
if(file_exists(PATH_OBJECT."/$option/$obj.php"))
{
require_once("$obj.php");
$className=strtoupper($obj);
$clfile=new $className();
$fn_init_java=strtolower($className)."_javainit";
$init_java=trim(strtolower($_REQUEST['init_java']));if($init_java){$clfile->$fn_init_java();}
$case=$obj;
}
//else
//{
//if($obj){echo "<i>Still under construction</i>";return false;}
//}
if(!$case){$case=$obj;if(!file_exists(PATH_OBJECT."/$option/$obj.php")){$cl->under_construction();}}
$sptask=explode("_",$case);$modulename=$sptask[1];$fn_module_init="fn_".$modulename."_init";
//echo "<label style=\"color:white;margin-top:200px;\">$fn_module_init</label>";return false;
//echo $case.' '.$modulename;return false;
//echo $option.' '.$obj.' '.$case;return false;
switch($case)
{
case "menuconfig_$modulename":
$clfile->$fn_module_init();
break;
case "pagehome":
$cl->fn_page_home();
break;
case "contxmnu":
$cl->FN_DHTMLXGRIDCONTEXTMENU();
break;
case "treemenu":
$cl->fn_treemenu();
break;
//case "loadtree":
// $cl->fn_menuconfig_tree();
//break;
case "default":
$cl->fn_page_default();
break;
}
?>

View File

@ -0,0 +1,348 @@
<?php
class MENUCONFIG_LIST extends MENUCONFIG
{
public function menuconfig_list_javainit()
{
echo "<script language=\"javascript\">
</script>";
}
public function fn_list_init()
{
if(isset($_REQUEST['task'])){$task=trim(strtolower($_REQUEST['task']));}
if(isset($_POST['task'])){$task=trim(strtolower($_POST['task']));}
if($_REQUEST||$_POST){if($_REQUEST['sec']||$_POST['sec']){$task=$this->dec($task);}}
switch($task)
{
case "default":
$this->fn_default_menulist();
break;
case $task:
$task="fn_".$task;
if(method_exists($this,$task)){$this->$task();}
break;
//case "searchmenu":
// $this->fn_searchmenu();
// break;
//
// case "paging":
// $this->fn_disp_page();
// break;
// case "editmenu":
// $this->fn_editmenu();
// break;
//
// case "iconlists":
// $this->fn_iconlists();
// break;
//
// case "cbomenugroupproject":
// $this->fn_cbomenugroupproject();
// break;
//
// case "updatemenu":
// $this->fn_updatemenu();
// break;
//
// default:
//if($_SESSION["nikx"]!=='9999'){echo $this->under_construction();}
// $this->fn_default_menulist();
// break;
}
}
public function fn_default_menulist()
{
echo $this->FN_CREATEHEADER();
//echo "<div><span id=\"pagingArea\"></span>&nbsp;<span id=\"infoArea\"></span></div>";
echo "<script>
var myForm,dgmenuconfig,dp;
function initObject()
{";
$formdata=array(
array("type"=>"settings","position"=>"label-left","labelWidth"=>"auto","inputWidth"=>"auto"),
array("type"=>"fieldset","width"=>"900","label"=>"Find Menu",
"list"=>array(
array("type"=>"input","name"=>"txtsearch","label"=>"Menu Name","info"=>"true","inputWidth"=>"160",
"tooltip"=>"Entry your menu first. Thank you","className"=>"txtleft"),
array("type"=>"newcolumn"),
array("type"=>"combo","name"=>"cbotipemenu","label"=>"","info"=>"true","readonly"=>"0",
"tooltip"=>"Choice your menu type","inputWidth"=>"120","offsetLeft"=>"10","options"=>array(array(value=>"tree",text=>"TreeMenu"),array(value=>"",text=>"Menu"))),
array("type"=>"newcolumn"),
array("type"=>"combo","name"=>"cbogroupproject","label"=>"","info"=>"true","readonly"=>"0",
"tooltip"=>"Choice your menu type","inputWidth"=>"220","offsetLeft"=>"10"),
array("type"=>"newcolumn"),
array("type"=>"button","name"=>"btnfindmenu","value"=>"Find Menu","className"=>"button_update","offsetLeft"=>"10","offsetTop"=>"5"),
)
)
);
$this->FN_DHTMLXFORMDOCUMENT("myForm","divmyform",$formdata);
$eventfindmenu="var url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=".$this->enc("searchmenu")."&tipemenu='+myForm.getCombo(\"cbotipemenu\").getSelectedValue()+'&idgroupproject='+myForm.getCombo(\"cbogroupproject\").getSelectedValue()+'&keyword='+myForm.getItemValue(\"txtsearch\"));";
$eventfindmenu.="dgmenuconfig.clearAndLoad(url);";
$eventfindmenu.="url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=".$this->enc("updatemenu")."&tipemenu='+myForm.getCombo(\"cbotipemenu\").getSelectedValue()+'&keyword='+myForm.getItemValue(\"txtsearch\"));";
$eventfindmenu.="dp = new dataProcessor(url);";
$eventfindmenu.="dp.init(dgmenuconfig);";
$arrevent=array(
array("eventname"=>"onButtonClick","eventparam"=>"id",
"switch"=>array(
"btnfindmenu"=>"$eventfindmenu"
)
)
);
$this->FN_DHTMLXFORMEVENT("myForm",$arrevent);
$grdinit=array("gridname"=>"dgmenuconfig","divtarget"=>"divdgmenuconfig","divpaging"=>"divpagingarea","paginglimit"=>PAGE_LIMIT,"skin"=>"modern",
"showloader"=>"true","setcolumnhidden"=>"true,false,false,false,false,false,false,false,false,false,false,false,false,false,true,false",
"attachheader"=>"#rspan,#rspan,#combo_filter,#combo_filter,#rspan,#rspan,#rspan,#rspan,#rspan,#rspan,#rspan,#rspan,#combo_filter,#rspan,#rspan,#rspan",
"enableheadermenu"=>true);
$gridproperties=array("id"=>"right,ro,40,right,int,false,true",
"Menu ID.&nbsp;"=>"left,ro,160,left,str,false",
"Menu Type"=>"left,ro,110,left,str,false",
"Menu Header"=>"left,ro,120,left,str,false",
"Menu Text"=>"left,ed,180,left,str,false",
"Menu Description"=>"left,ed,200,left,str,false",
"Menu Image"=>"left,ro,150,left,str,false",
"Obj Option"=>"left,ed,150,left,str,false",
"Obj Name"=>"left,ed,150,left,str,false",
"Obj Task"=>"left,ed,160,left,str,false",
"Obj Target"=>"left,ro,110,left,str,false",
"Menu Order"=>"center,ed,110,center,int,false",
"Menu Group"=>"center,ed,110,center,str,false",
"Group Project"=>"center,combo,110,center,str,false",
"idgroupproject"=>"center,ro,80,center,str,false,true",
"Activated"=>"center,ch,80,center,str,false");
$this->FN_DHTMLXGRIDVIEW($grdinit,$gridproperties,"bricks",true,"fn_grid_loaddata()");
echo " }
function fn_grid_loaddata()
{
//var keyword=myFormsearch.getItemValue('txtsearch');
var url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=".$this->enc("searchmenu")."&tipemenu='+myForm.getCombo(\"cbotipemenu\").getSelectedValue()+'&idgroupproject='+myForm.getCombo(\"cbogroupproject\").getSelectedValue()+'&keyword='+myForm.getItemValue(\"txtsearch\"));
//alert(url);
dgmenuconfig.clearAndLoad(url);
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=".$this->enc("updatemenu")."&tipemenu='+myForm.getCombo(\"cbotipemenu\").getSelectedValue()+'&keyword='+myForm.getItemValue(\"txtsearch\"));
dp = new dataProcessor(url);
dp.init(dgmenuconfig);
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo "<table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td>
<div id=\"divmyform\" style=\"width:100%;\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divdgmenuconfig\" style=\"width:898px; height:400px; background-color:white;\"></div>
</td>
</tr>
<tr><td valign=\"top\"><div id=\"loadergrid\" style=\"z-index:100;position:absolute;margin-top:-220px;margin-left:417px;display:visibility;\">".$this->CREATE_IMAGE("loadergrid.gif")."</div></td></tr>
<tr>
<td>
<div id=\"divpagingarea\" style=\"width:888px;margin-top:1px\"></div>
</td>
</tr>
</table>";
echo $this->FN_CREATEFOOTER();
}
public function fn_searchmenu()
{
$tipemenu=$_REQUEST["tipemenu"];
$idgrouproject=$_REQUEST["idgroupproject"];$criteriaidgroupproject="";
if($idgrouproject>=1){$criteriaidgroupproject=" and m.id_menu_groupproject like '%$idgrouproject%'";}
$keyword=$_REQUEST["keyword"];
//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may be different in your case
echo('<?xml version="1.0" encoding="UTF-8"?>');
//start output of data
echo "<rows>";
//output data from DB as XML
$qry="select m.id,m.menuid,m.menutype,m.menuheader,m.menutext,m.menudesc,m.menuimg,m.objoption,m.id_menu_groupproject,
m.objname,m.objtask,m.objtarget,m.menuorder,m.menugroup,gp.groupname,m.menuactivated
from ".DB_APORTIL.".tbl_".$tipemenu."menu m left join ".DB_APORTIL.".tbl_menu_groupproject gp on m.id_menu_groupproject=gp.id
where (m.menutext like '%$keyword%' or m.menudesc like '%$keyword%') and m.isdeleted=0 $criteriaidgroupproject
order by m.id asc limit ".TBL_PAGE_LIMIT;
$rs=$this->selectquery($qry);
if($rs)
{
while($row=$this->data_row_array($rs))
{
//create xml tag for grid's row
echo ("<row id=\"".$row["id"]."\">");
print("<cell>".$row["id"]."</cell>");
print("<cell>".$row["menuid"]."</cell>");
print("<cell>".$row["menutype"]."</cell>");
print("<cell>".$row["menuheader"]."</cell>");
print("<cell>".$row["menutext"]."</cell>");
print("<cell>".$row["menudesc"]."</cell>");
print("<cell>".$row["menuimg"]."</cell>");
print("<cell>".$row["objoption"]."</cell>");
print("<cell>".$row["objname"]."</cell>");
print("<cell>".$row["objtask"]."</cell>");
print("<cell>".$row["objtarget"]."</cell>");
print("<cell>".$row["menuorder"]."</cell>");
print("<cell>".$row["menugroup"]."</cell>");
print("<cell>".$row["groupname"]."</cell>");
print("<cell>".$row["id_menu_groupproject"]."</cell>");
print("<cell>".$row["menuactivated"]."</cell>");
print("</row>");
}
}
else
{
//error occurs
echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file<br>";
}
echo "</rows>";
}
public function fn_updatemenuTest()
{
//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may differ in your case
echo('<?xml version="1.0" encoding="iso-8859-1"?>');
$mode = $_GET["!nativeeditor_status"]; //get request mode
$rowId = $_GET["gr_id"]; //id or row which was updated
$newId = $_GET["gr_id"]; //will be used for insert operation
switch($mode)
{
case "inserted":
//row adding request
//$action = add_row();
$action = "insert";
break;
case "deleted":
//row deleting request
$action = "delete";//delete_row();
break;
default:
//row updating request
// $qry="update ".DB_APORTIL.".tbl_menu
// set menuid='".$_GET["c1"]."',menutype='".$_GET["c2"]."',menuheader='".$_GET["c3"]."',menutext='".$_GET["c4"]."',menudesc='".$_GET["c5"]."',
// menuimg='".$_GET["c6"]."',objoption='".$_GET["c7"]."',objname='".$_GET["c8"]."',objtask='".$_GET["c9"]."',objtarget='".$_GET["c10"]."',
// menuorder='".$_GET["c11"]."',menugroup='".$_GET["c12"]."',menuactivated='".$_GET["c13"]."',uby='".$_POST["kduser"]."',udt=now()
// where id='".$_GET["gr_id"]."'";
$qry="update ".DB_APORTIL.".tbl_menu
set menuid='".$_GET["c1"]."',menutype='".$_GET["c2"]."',menuheader='".$_GET["c3"]."',menutext='".$_GET["c4"]."',menudesc='".$_GET["c5"]."',
menuimg='".$_GET["c6"]."',objoption='".$_GET["c7"]."',objname='".$_GET["c8"]."',objtask='".$_GET["c9"]."',objtarget='".$_GET["c10"]."',
menuorder='".$_GET["c11"]."',menugroup='".$_GET["c12"]."',menuactivated='".$_GET["c13"]."',uby='".$_POST["kduser"]."',udt=now()
where id='".$_GET["gr_id"]."'";
$action = "update";
break;
}
$this->executequery($qry);
//output update results
echo "<data>";
echo "<action type='".$action."' sid='".$rowId."' tid='".$newId."'/>";
echo "</data>";
}
public function fn_updatemenu()
{
$tipemenu=$_REQUEST["tipemenu"];
$keyword=$_REQUEST["keyword"];
$con=mysql_connect(DB_HOST_NAME,DB_USER_NAME,DB_USER_PASS);
mysql_select_db(DB_APORTIL);
require(PATH_THEME."/connector/codebase/grid_connector.php");
$grid = new GridConnector($con);
//$config = new GridConfiguration();
//$config->setHeader("id,menutext,menu");
//$config->setColTypes("ro,ed,ed,ed,ed,ed,ed,ed");
//$grid->set_config($config);
//$grid->render_table("tbl_menu","id","id,menutext,menudesc,menuactivated");
$qry="select * from ".DB_APORTIL.".tbl_".$tipemenu."menu
where (menutext like '%$keyword%' or menudesc like '%$keyword%') and isdeleted=0
order by id asc limit ".TBL_PAGE_LIMIT;
$qry="select m.id,m.menuid,m.menutype,m.menuheader,m.menutext,m.menudesc,m.menuimg,m.objoption,m.id_menu_groupproject,
m.objname,m.objtask,m.objtarget,m.menuorder,m.menugroup,gp.id idgroupproject,gp.groupname,m.menuactivated
from ".DB_APORTIL.".tbl_".$tipemenu."menu m inner join ".DB_APORTIL.".tbl_menu_groupproject gp on m.id_menu_groupproject=gp.id
where (m.menutext like '%$keyword%' or m.menudesc like '%$keyword%') and m.isdeleted=0
order by m.id asc limit ".TBL_PAGE_LIMIT;
//$grid->event->attach("beforeDelete","Function");
//$grid->sql->attach("Delete","update ".DB_APORTIL.".tbl_menu set isdeleted=1,dby='".$_SESSION['nik']."',ddt=now() where id={id}");
$qryupd="update ".DB_APORTIL.".tbl_".$tipemenu."menu
set menuid='{menuid}',menutype='{menutype}',menuheader='{menuheader}',menutext='{menutext}',menudesc='{menudesc}',
menuimg='{menuimg}',objoption='{objoption}',objname='{objname}',objtask='{objtask}',objtarget='{objtarget}',
menuorder='{menuorder}',menugroup='{menugroup}',id_menu_groupproject='{id_menu_groupproject}',menuactivated='{menuactivated}',uby='".$_SESSION['nik']."',udt=now()
where id={id}";
$grid->sql->attach("Update",$qryupd);
$grid->sql->attach("Delete","update ".DB_APORTIL.".tbl_".$tipemenu."menu set isdeleted=1,dby='".$_SESSION['nik']."',ddt=now() where id={id}");
$grid->render_sql("$qry","id","id,menuid,menutype,menuheader,menutext,menudesc,menuimg,objoption,objname,objtask,objtarget,menuorder,menugroup,groupname,id_menu_groupproject,menuactivated");
}
public function fn_iconlists()
{
header("Content-type: text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo("<option value=\"\">-</option>");
$qry="select imgname img,imgname,imgname gif from ".DB_APORTIL.".tbl_menu_img where isdeleted=0 order by id asc";
$rsimg=$this->selectquery($qry);
if($rsimg)
{
while($rw=$this->data_row_object($rsimg))
{
//echo("<option value=\"".$rw->img."\" img_src=\"".$rw->imgname."\">".$rw->imgname."</option>");
echo("<option value=\"".$rw->img."\">".$rw->imgname."</option>");
}
}
$this->clearrecordset($rsimg);
echo("</complete>");
}
public function fn_cbomenugroupproject()
{
header("Content-type: text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo("<option value=\"\">-</option>");
$qry="select id,groupname from ".DB_APORTIL.".tbl_menu_groupproject where isdeleted=0 order by id asc";
$rs=$this->selectquery($qry);
if($rs)
{
while($rw=$this->data_row_object($rs))
{
echo("<option value=\"".$rw->id."\">".$rw->groupname."</option>");
}
}
$this->clearrecordset($rsimg);
echo("</complete>");
}
}
?>

View File

@ -0,0 +1,60 @@
<?php
class MENUCONFIG_LIST1 extends MENUCONFIG
{
public function menuconfig_list1_javainit()
{
}
public function fn_list1_init()
{
if(isset($_REQUEST['task'])){$task=trim(strtolower($_REQUEST['task']));}
if(isset($_POST['task'])){$task=trim(strtolower($_POST['task']));}
if($_REQUEST||$_POST){if($_REQUEST['sec']||$_POST['sec']){$task=$this->dec($task);}}
switch($task)
{
case "default":
$this->fn_default_list1();
break;
case $task:
$task="fn_".$task;
if(method_exists($this,$task)){$this->$task();}
break;
default:
$this->fn_default_list1();
break;
}
}
public function fn_default_list1()
{
echo $this->FN_CREATEHEADER();
echo "<style>
.besidebtnsave {margin-left:104px;margin-top:-6px;position:absolute;}
.besidebtnupdate {margin-left:198px;margin-top:-6px;position:absolute;}
.besidebtndelete {margin-left:288px;margin-top:-6px;position:absolute;}
</style>";
echo "<script>
var myForm,myFormsearch,dgtra;
function initObject()
{";
echo " }
function fn_grid_loaddata()
{";
echo " }
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo "Your Module is <font color='red'>still underconstruction.</font>";
echo $this->FN_CREATEFOOTER();
}
}
?>

View File

@ -0,0 +1,376 @@
<?php
class MENUCONFIG_LIST extends MENUCONFIG
{
public function menuconfig_list_javainit()
{
echo "<script language=\"javascript\">
</script>";
}
public function fn_list_init()
{
if(isset($_REQUEST["task"])){$task=trim(strtolower($_REQUEST["task"]));}
if(isset($_POST["task"])){$task=trim(strtolower($_POST["task"]));}
switch($task)
{
case "searchmenu":
$this->fn_searchmenu();
break;
case "paging":
$this->fn_disp_page();
break;
case "editmenu":
$this->fn_editmenu();
break;
case "iconlists":
$this->fn_iconlists();
break;
case "cbomenugroupproject":
$this->fn_cbomenugroupproject();
break;
case "updatemenu":
$this->fn_updatemenu();
break;
default:
//if($_SESSION["nikx"]!=='9999'){echo $this->under_construction();}
$this->fn_default_menulist();
break;
}
}
public function fn_default_menulist()
{
echo $this->FN_CREATEHEADER();
//echo "<div><span id=\"pagingArea\"></span>&nbsp;<span id=\"infoArea\"></span></div>";
echo "<script>
var myForm,dgmenuconfig,dp;
function initObject()
{
formData=[
{type: \"settings\", position: \"label-left\", labelWidth: \"auto\", inputWidth: \"auto\"},
{type: \"fieldset\",label:\"Cari menu\", width: 900, list:[
{type: \"input\", name:\"txtsearch\",label: \"Masukkan Nama Menu\", inputWidth:160,info:true,tooltip:\"Masukkan Kata yang ingin dicari\"},
{type:\"newcolumn\"},
{type:\"combo\",name:\"cbotipemenu\",required:true,info:true,inputWidth:120,readonly:0,options:";
$arrval=array(array(value=>"tree",text=>"TreeMenu"),array(value=>"",text=>"Menu"));
echo json_encode($arrval);
echo " },
{type:\"newcolumn\"},
{type:\"combo\",name:\"cbogroupproject\",required:true,info:true,inputWidth:220,readonly:0},
{type:\"newcolumn\"},
{type: \"button\", name:\"btnfindmenu\",value: \"Cari Menu\",note:\"My status\",offsetTop:0,offsetLeft:10}
]}
];
// ==== Init Form
myForm = new dhtmlXForm(\"divmyform\", formData);
myForm.enableLiveValidation(true);
myForm.setFocusOnFirstActive(true);";
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_menu_groupproject|id,groupname')";
$this->FN_COMBOVALIDATIONVALUE2("myForm","cbogroupproject","","$urlcbo","");
echo " // ==== Create context Menu
contextmenu=new dhtmlXMenuObject();
contextmenu.setIconsPath(\"".PATH_THEME."/icons/\");
contextmenu.renderAsContextMenu();
contextmenu.attachEvent(\"onClick\",function(id){
if(id=='contextmenu_deleted')
{
var data=dgmenuconfig.contextID.split(\"_\");
var getValMenuText=dgmenuconfig.cellById(data[0],4).getValue();
dhtmlx.confirm({
title:'Confirm',
type:'confirm',
text:'Data <b>'+getValMenuText+'</b> ingin <font color=\"red\">dihapus</font>?',
callback:function(result){
if(result){
dgmenuconfig.deleteRow(data[0]);
}
}
});
//fn_dhtmlxconfirm('Confirm','Data <b>'+getValMenuText+'</b> ingin <font color=\"red\">dihapus</font>?',dgmenuconfig.deleteRow(dgmenuconfig.getRowId(data[0]-1)));
}
});
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("-")."&task=".$this->enc("contxmnu")."');
contextmenu.loadStruct(url);
// ==== attach dgmenuconfig
//dgmenuconfig=new dhtmlXGridObject(myForm.getContainer(\"dgmenuconfig\"));
dgmenuconfig=new dhtmlXGridObject(\"divdgmenuconfig\");
dgmenuconfig.setSkin(\"dhx_skyblue\");
dgmenuconfig.setImagePath(\"".PATH_THEME."/codebase/imgs/\");
dgmenuconfig.setHeader(\"Id,Menu Id,Menu Type,Menu Header,Menu Text,Menu Description,Menu Image,Obj Option,Obj Name,Obj Task,Obj Target,Menu Order,Menu Group,Group Project,idgroupproject,Activated\");
dgmenuconfig.setColTypes(\"ro,ed,ed,ed,ed,ed,combo,ed,ed,ed,ed,ed,ed,combo,ro,ch\"); // ro => Read Only, ed => Edit
dgmenuconfig.attachHeader(\"#rspan,#rspan,#combo_filter,#combo_filter,#rspan,#rspan,#rspan,#rspan,#rspan,#rspan,#rspan,#rspan,#combo_filter,#rspan,#rspan,#rspan\");
dgmenuconfig.setInitWidths(\"30,160,80,120,180,300,100,100,100,100,100,120,110,110,110,110\");
//dgmenuconfig.enableAutoWidth(true);
dgmenuconfig.setColAlign(\"left,left,left,right,left,left,left,left,left,left,left,left,left,left,left,center\");
dgmenuconfig.setColSorting(\"str,str,str,int,str,str,str,str,str,str,str,str,str,str,str,str\");
dgmenuconfig.setDateFormat(\"%Y-%m-%d %H:%i:%s\");
dgmenuconfig.enablePaging(true,".PAGE_LIMIT.",null,\"divpagingarea\",true,\"recInfoArea\");
//dgmenuconfig.setPagingSkin(\"toolbar\",\"dhx_skyblue\");
dgmenuconfig.setPagingSkin(\"bricks\");
dgmenuconfig.enableContextMenu(contextmenu);
dgmenuconfig.enableTooltips(\"false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false\");
dgmenuconfig.init();
dgmenuconfig.enableHeaderMenu();
dgmenuconfig.attachEvent(\"onEditCell\",function(stage,rowid,colid){
if(colid==13&&stage==2)
{
var idmenugroupproject=dgmenuconfig.cells(rowid,13).getValue();
dgmenuconfig.cells(rowid,14).setValue(trim(idmenugroupproject));
}
return true;
});
//dgmenuconfig.splitAt(2);
// ==== Set combo in Cell Icons
var cboiconlist=dgmenuconfig.getColumnCombo(6);
cboiconlist.enableFilteringMode(false);
cboiconlist.readonly(true);
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=iconlists');
cboiconlist.load(url);
var cbomenugroupproject=dgmenuconfig.getColumnCombo(13);
cbomenugroupproject.enableFilteringMode(true);
//cbomenugroupproject.readonly(true);
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=cbomenugroupproject');
//alert(url);
cbomenugroupproject.load(url);
// ==== Attach Event Click
myForm.attachEvent(\"onButtonClick\",function(id){
switch(id)
{
case 'btnfindmenu':
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=searchmenu&tipemenu='+myForm.getCombo(\"cbotipemenu\").getSelectedValue()+'&idgroupproject='+myForm.getCombo(\"cbogroupproject\").getSelectedValue()+'&keyword='+myForm.getItemValue(\"txtsearch\"));
//alert(url);
//dgmenuconfig.enableSmartRendering(true,50);
dgmenuconfig.clearAndLoad(url);
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_list")."&task=updatemenu&tipemenu='+myForm.getCombo(\"cbotipemenu\").getSelectedValue()+'&keyword='+myForm.getItemValue(\"txtsearch\"));
dp = new dataProcessor(url);
dp.init(dgmenuconfig);
break;
}
});
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo "<table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td>
<div id=\"divmyform\" style=\"width:100%;\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divdgmenuconfig\" style=\"width:898px; height:400px; background-color:white;\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divpagingarea\" style=\"width:888px;margin-top:1px\"></div>
</td>
</tr>
</table>";
echo $this->FN_CREATEFOOTER();
}
public function fn_searchmenu()
{
$tipemenu=$_REQUEST["tipemenu"];
$idgrouproject=$_REQUEST["idgroupproject"];$criteriaidgroupproject="";
if($idgrouproject>=1){$criteriaidgroupproject=" and m.id_menu_groupproject like '%$idgrouproject%'";}
$keyword=$_REQUEST["keyword"];
//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may be different in your case
echo('<?xml version="1.0" encoding="utf-8"?>');
//start output of data
echo "<rows id=\"0\">";
//output data from DB as XML
$qry="select m.id,m.menuid,m.menutype,m.menuheader,m.menutext,m.menudesc,m.menuimg,m.objoption,m.id_menu_groupproject,
m.objname,m.objtask,m.objtarget,m.menuorder,m.menugroup,gp.groupname,m.menuactivated
from ".DB_APORTIL.".tbl_".$tipemenu."menu m left join ".DB_APORTIL.".tbl_menu_groupproject gp on m.id_menu_groupproject=gp.id
where (m.menutext like '%$keyword%' or m.menudesc like '%$keyword%') and m.isdeleted=0 $criteriaidgroupproject
order by m.id asc limit ".TBL_PAGE_LIMIT;
$rs=$this->selectquery($qry);
if($rs)
{
while($row=$this->data_row_array($rs))
{
//create xml tag for grid's row
echo ("<row id='".$row["id"]."'>");
print("<cell><![CDATA[".$row["id"]."]]></cell>");
print("<cell><![CDATA[".$row["menuid"]."]]></cell>");
print("<cell><![CDATA[".$row["menutype"]."]]></cell>");
print("<cell><![CDATA[".$row["menuheader"]."]]></cell>");
print("<cell><![CDATA[".$row["menutext"]."]]></cell>");
print("<cell><![CDATA[".$row["menudesc"]."]]></cell>");
print("<cell><![CDATA[".$row["menuimg"]."]]></cell>");
print("<cell><![CDATA[".$row["objoption"]."]]></cell>");
print("<cell><![CDATA[".$row["objname"]."]]></cell>");
print("<cell><![CDATA[".$row["objtask"]."]]></cell>");
print("<cell><![CDATA[".$row["objtarget"]."]]></cell>");
print("<cell><![CDATA[".$row["menuorder"]."]]></cell>");
print("<cell><![CDATA[".$row["menugroup"]."]]></cell>");
print("<cell><![CDATA[".$row["groupname"]."]]></cell>");
print("<cell><![CDATA[".$row["id_menu_groupproject"]."]]></cell>");
print("<cell><![CDATA[".$row["menuactivated"]."]]></cell>");
print("</row>");
}
}
else
{
//error occurs
echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file<br>";
}
echo "</rows>";
}
public function fn_updatemenuTest()
{
//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may differ in your case
echo('<?xml version="1.0" encoding="iso-8859-1"?>');
$mode = $_GET["!nativeeditor_status"]; //get request mode
$rowId = $_GET["gr_id"]; //id or row which was updated
$newId = $_GET["gr_id"]; //will be used for insert operation
switch($mode)
{
case "inserted":
//row adding request
//$action = add_row();
$action = "insert";
break;
case "deleted":
//row deleting request
$action = "delete";//delete_row();
break;
default:
//row updating request
// $qry="update ".DB_APORTIL.".tbl_menu
// set menuid='".$_GET["c1"]."',menutype='".$_GET["c2"]."',menuheader='".$_GET["c3"]."',menutext='".$_GET["c4"]."',menudesc='".$_GET["c5"]."',
// menuimg='".$_GET["c6"]."',objoption='".$_GET["c7"]."',objname='".$_GET["c8"]."',objtask='".$_GET["c9"]."',objtarget='".$_GET["c10"]."',
// menuorder='".$_GET["c11"]."',menugroup='".$_GET["c12"]."',menuactivated='".$_GET["c13"]."',uby='".$_POST["kduser"]."',udt=now()
// where id='".$_GET["gr_id"]."'";
$qry="update ".DB_APORTIL.".tbl_menu
set menuid='".$_GET["c1"]."',menutype='".$_GET["c2"]."',menuheader='".$_GET["c3"]."',menutext='".$_GET["c4"]."',menudesc='".$_GET["c5"]."',
menuimg='".$_GET["c6"]."',objoption='".$_GET["c7"]."',objname='".$_GET["c8"]."',objtask='".$_GET["c9"]."',objtarget='".$_GET["c10"]."',
menuorder='".$_GET["c11"]."',menugroup='".$_GET["c12"]."',menuactivated='".$_GET["c13"]."',uby='".$_POST["kduser"]."',udt=now()
where id='".$_GET["gr_id"]."'";
$action = "update";
break;
}
$this->executequery($qry);
//output update results
echo "<data>";
echo "<action type='".$action."' sid='".$rowId."' tid='".$newId."'/>";
echo "</data>";
}
public function fn_updatemenu()
{
$tipemenu=$_REQUEST["tipemenu"];
$keyword=$_REQUEST["keyword"];
$con=mysql_connect(DB_HOST_NAME,DB_USER_NAME,DB_USER_PASS);
mysql_select_db(DB_APORTIL);
require(PATH_THEME."/connector/codebase/grid_connector.php");
$grid = new GridConnector($con);
//$config = new GridConfiguration();
//$config->setHeader("id,menutext,menu");
//$config->setColTypes("ro,ed,ed,ed,ed,ed,ed,ed");
//$grid->set_config($config);
//$grid->render_table("tbl_menu","id","id,menutext,menudesc,menuactivated");
$qry="select * from ".DB_APORTIL.".tbl_".$tipemenu."menu
where (menutext like '%$keyword%' or menudesc like '%$keyword%') and isdeleted=0
order by id asc limit ".TBL_PAGE_LIMIT;
$qry="select m.id,m.menuid,m.menutype,m.menuheader,m.menutext,m.menudesc,m.menuimg,m.objoption,m.id_menu_groupproject,
m.objname,m.objtask,m.objtarget,m.menuorder,m.menugroup,gp.id idgroupproject,gp.groupname,m.menuactivated
from ".DB_APORTIL.".tbl_".$tipemenu."menu m inner join ".DB_APORTIL.".tbl_menu_groupproject gp on m.id_menu_groupproject=gp.id
where (m.menutext like '%$keyword%' or m.menudesc like '%$keyword%') and m.isdeleted=0
order by m.id asc limit ".TBL_PAGE_LIMIT;
//$grid->event->attach("beforeDelete","Function");
//$grid->sql->attach("Delete","update ".DB_APORTIL.".tbl_menu set isdeleted=1,dby='".$_SESSION['nik']."',ddt=now() where id={id}");
$qryupd="update ".DB_APORTIL.".tbl_".$tipemenu."menu
set menuid='{menuid}',menutype='{menutype}',menuheader='{menuheader}',menutext='{menutext}',menudesc='{menudesc}',
menuimg='{menuimg}',objoption='{objoption}',objname='{objname}',objtask='{objtask}',objtarget='{objtarget}',
menuorder='{menuorder}',menugroup='{menugroup}',id_menu_groupproject='{id_menu_groupproject}',menuactivated='{menuactivated}',uby='".$_SESSION['nik']."',udt=now()
where id={id}";
$grid->sql->attach("Update",$qryupd);
$grid->sql->attach("Delete","update ".DB_APORTIL.".tbl_".$tipemenu."menu set isdeleted=1,dby='".$_SESSION['nik']."',ddt=now() where id={id}");
$grid->render_sql("$qry","id","id,menuid,menutype,menuheader,menutext,menudesc,menuimg,objoption,objname,objtask,objtarget,menuorder,menugroup,groupname,id_menu_groupproject,menuactivated");
}
public function fn_iconlists()
{
header("Content-type: text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo("<option value=\"\">-</option>");
$qry="select imgname img,imgname,imgname gif from ".DB_APORTIL.".tbl_menu_img where isdeleted=0 order by id asc";
$rsimg=$this->selectquery($qry);
if($rsimg)
{
while($rw=$this->data_row_object($rsimg))
{
//echo("<option value=\"".$rw->img."\" img_src=\"".$rw->imgname."\">".$rw->imgname."</option>");
echo("<option value=\"".$rw->img."\">".$rw->imgname."</option>");
}
}
$this->clearrecordset($rsimg);
echo("</complete>");
}
public function fn_cbomenugroupproject()
{
header("Content-type: text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo("<option value=\"\">-</option>");
$qry="select id,groupname from ".DB_APORTIL.".tbl_menu_groupproject where isdeleted=0 order by id asc";
$rs=$this->selectquery($qry);
if($rs)
{
while($rw=$this->data_row_object($rs))
{
echo("<option value=\"".$rw->id."\">".$rw->groupname."</option>");
}
}
$this->clearrecordset($rsimg);
echo("</complete>");
}
}
?>

View File

@ -0,0 +1,443 @@
<?php
class MENUCONFIG_NEW extends MENUCONFIG
{
public function menuconfig_new_javainit()
{
}
public function fn_new_init()
{
if(isset($_REQUEST['task'])){$task=trim(strtolower($_REQUEST['task']));}
if(isset($_POST['task'])){$task=trim(strtolower($_POST['task']));}
if($_REQUEST||$_POST){if($_REQUEST['sec']||$_POST['sec']){$task=$this->dec($task);}}
//echo $task." re";return false;
switch($task)
{
case "default":
$this->fn_default_new();
break;
case $task:
$task="fn_".$task;
if(method_exists($this,$task)){$this->$task();}
break;
// case "loadheader":
// $this->fn_loadheader();
// break;
// case "savemenu":
// $this->fn_savemenu();
// break;
// case "updateuser":
// $this->fn_savemenu(true);
// break;
//
// case "getordermenu":
// $this->fn_getordermenu();
// break;
//
// case "geticons":
// $this->fn_geticons();
// break;
default:
//if($_SESSION['nikx']!=='9999'){echo $this->under_construction();}
$this->fn_default_new();
break;
}
}
public function fn_default_new()
{
echo $this->FN_CREATEHEADER();
echo "<script>
var myForm;
function initObject()
{";
$formdata=array(
array("type"=>"settings","position"=>"label-left","labelWidth"=>"130","inputWidth"=>"120"),
array("type"=>"block","width"=>"1020",
"list"=>array(
array("type"=>"label","label"=>"<u>Kolom 1</u>"),
array("type"=>"combo","name"=>"cbocategory","label"=>"Kategori","required"=>"true","info"=>"true",
"tooltip"=>"Masukkan Kategori terlebih dahulu","inputWidth"=>"220"),
array("type"=>"combo","name"=>"cbomenutype","label"=>"Tipe","required"=>"true","info"=>"true",
"tooltip"=>"Pilih Jenis Menu terlebih dahulu","inputWidth"=>"220"),
array("type"=>"combo","name"=>"cbomenugroupproject","label"=>"Group Project","required"=>"true","info"=>"true",
"tooltip"=>"Pilih Menu Group Project terlebih dahulu","inputWidth"=>"220"),
array("type"=>"combo","name"=>"cbomenuheader","label"=>"Header","info"=>"true",
"tooltip"=>"Pilih Menu Header Project terlebih dahulu","inputWidth"=>"220"),
array("type"=>"input","name"=>"txtmenuid","label"=>"Menu Id","required"=>"true","info"=>"true","inputWidth"=>"260",
"tooltip"=>"Masukkan Id Menu terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","className"=>"txtleft"),
array("type"=>"input","name"=>"txtmenutext","label"=>"Nama Menu","required"=>"true","info"=>"true","inputWidth"=>"260",
"tooltip"=>"Masukkan Nama Menu terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","className"=>"txtleft"),
array("type"=>"input","name"=>"txtmenudesc","label"=>"Keterangan","required"=>"true","info"=>"true","inputWidth"=>"260",
"tooltip"=>"Masukkan Deskripsi Menu terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","className"=>"txtleft"),
array("type"=>"combo","name"=>"cbomenuimg","label"=>"Icons","info"=>"true","comboType"=>"image",
"tooltip"=>"Pilih Icons Bila ada","inputWidth"=>"220"),
array("type"=>"input","name"=>"txtobjoption","label"=>"Nama Option","required"=>"true","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan Object Option terlebih dahulu. TERIMA KASIH","className"=>"txtleft"),
array("type"=>"newcolumn"),
array("type"=>"label","label"=>"<u>Kolom 2</u>"),
array("type"=>"input","name"=>"txtobjname","label"=>"Nama Object","required"=>"true","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan Nama Object terlebih dahulu. TERIMA KASIH","className"=>"txtleft","offsetLeft"=>20),
array("type"=>"input","name"=>"txttask","label"=>"Task","required"=>"true","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan Task/Case terlebih dahulu. TERIMA KASIH","className"=>"txtleft","offsetLeft"=>20),
array("type"=>"combo","name"=>"cbotarget","label"=>"Target","info"=>"true","readonly"=>"0","offsetLeft"=>20,
"tooltip"=>"Pilih Target Terlebih dahulu","inputWidth"=>"220"),
array("type"=>"checkbox","name"=>"chkaktif","label"=>"Aktifkan","checked"=>1,"offsetLeft"=>20),
array("type"=>"input","name"=>"txtmenuorder","label"=>"Order / Urutan","required"=>"true","info"=>"true","inputWidth"=>"30",
"tooltip"=>"Masukkan Order/Urutan terlebih dahulu. TERIMA KASIH","className"=>"txtcenter",
"validate"=>"^[0-9]","offsetLeft"=>20),
array("type"=>"combo","name"=>"cbomenugroup","label"=>"Group","info"=>"true","readonly"=>"0","offsetLeft"=>20,
"tooltip"=>"Pilih Menu Group User Terlebih dahulu","inputWidth"=>"220"),
array("type"=>"combo","name"=>"cbotable","label"=>"Setting Ke Table","info"=>"true","readonly"=>"0","offsetLeft"=>20,
"tooltip"=>"Pilih Setting Ke Table Terlebih dahulu","inputWidth"=>"220"),
array("type"=>"checkbox","label"=>"Ya, Yakin Ingin disimpan","position"=>"label-right","offsetLeft"=>"20","offsetTop"=>"10","checked"=>1,"labelWidth"=>330,
"list"=>array(
array("type"=>"button","name"=>"btnsave","value"=>"Save","className"=>"button_update","offsetLeft"=>"50","offsetTop"=>"10"),
array("type"=>"newcolumn"),
array("type"=>"button","name"=>"btncancel","value"=>"Cancel","className"=>"button_cancel","offsetLeft"=>"8","offsetTop"=>"10")
)
)
)
)
);
$this->FN_DHTMLXFORMDOCUMENT("myForm","document.body",$formdata);
$arrerror=array("cbocategory"=>"Error Found : Harap Pilih <b>Kategori</b> terlebih dahulu.TERIMA KASIH",
"cbomenutype"=>"Error Found : Harap Isikan Pilih <b>Jenis Menu</b> terlebih dahulu.TERIMA KASIH",
"cbomenugroupproject"=>"Error Found : Harap Pilih <b>Group Project</b> terlebih dahulu.TERIMA KASIH",
"cbomenuheader"=>"Error Found : Harap Pilih <b>Header</b> terlebih dahulu.TERIMA KASIH",
"txtmenuid"=>"Error Found : Harap Masukkan <b>Menu Id</b> terlebih dahulu.TERIMA KASIH",
"txtmenutext"=>"Error Found : Harap Masukkan <b>Nama Menu</b> terlebih dahulu.TERIMA KASIH",
"txtmenudesc"=>"Error Found : Harap Masukkan <b>Keterangan Menu</b> terlebih dahulu.TERIMA KASIH",
"txtobjoption"=>"Error Found : Harap Masukkan <b>Object Option</b> terlebih dahulu.TERIMA KASIH",
"txtobjname"=>"Error Found : Harap Masukkan <b>Nama Object</b> terlebih dahulu.TERIMA KASIH",
"txttask"=>"Error Found : Harap Masukkan <b>Task</b> terlebih dahulu.TERIMA KASIH",
"cbotarget"=>"Error Found : Harap Pilih <b>Target</b> terlebih dahulu.TERIMA KASIH",
"txtmenuorder"=>"Error Found : Harap Masukkan <b>Order Menu</b> terlebih dahulu.TERIMA KASIH",
"cbomenugroup"=>"Error Found : Harap Pilih <b>Group User</b> terlebih dahulu.TERIMA KASIH"
);
$this->FN_DHTMLXFORMVALIDATIONERROR("myForm",$arrerror);
// === Init Object
$arrcategory=array("options"=>array(
array("value"=>"","text"=>""),array("value"=>"tree","text"=>"TreeMenu")
)
);
$this->FN_DHTMLXNEWCOMBOWITHARRAY("myForm","cbocategory",$arrcategory);
$arrmenutype=array("options"=>array(
array("value"=>"","text"=>""),array("value"=>"H","text"=>"Header"),
array("value"=>"S","text"=>"SubHeader"),array("value"=>"D","text"=>"Detail")
)
);
$this->FN_DHTMLXNEWCOMBOWITHARRAY("myForm","cbomenutype",$arrmenutype);
$arrmenuheader=array("options"=>array(
array("value"=>"","text"=>"")
)
);
$this->FN_DHTMLXNEWCOMBOWITHARRAY("myForm","cbomenuheader",$arrmenuheader);
$arrtarget=array("options"=>array(
array("value"=>"","text"=>""),array("value"=>"_self","text"=>"_self"),
array("value"=>"_blank","text"=>"_blank")
)
);
$this->FN_DHTMLXNEWCOMBOWITHARRAY("myForm","cbotarget",$arrtarget);
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_new")."&task=".$this->enc("getmenugroup")."');";
$this->FN_DHTMLXNEWCOMBO("myForm","cbomenugroup",$urlcbo);
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_new")."&task=".$this->enc("gettables")."');";
$this->FN_DHTMLXNEWCOMBO("myForm","cbotable",$urlcbo);
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_menu_groupproject|id,groupname')";
$this->FN_COMBOVALIDATIONVALUE2("myForm","cbomenugroupproject","tbl_menu_groupproject",$urlcbo,"");
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_new")."&task=".$this->enc("geticons")."');";
$this->FN_DHTMLXNEWCOMBOIMAGE("myForm","cbomenuimg",$urlcbo,"themes/icons/");
// === Form Event
$arrayControls=array(
"txt_tgltra"=>date("Y-m-d"),"txt_nominal"=>"0","txt_bankfrom"=>"","txt_cabangbankfrom"=>"",
"cbo_idbankto"=>"","txt_rekeningfrom"=>"","txt_bankaccountfrom"=>"","txt_keterangan"=>""
);
$onchangecbomenugroupproject="var menutype=myForm.getCombo(\"cbomenutype\").getSelectedValue();
var cbomenuheader=myForm.getCombo('cbomenuheader');
if(val==null){myForm.getCombo('cbomenugroupproject').setComboText('');}
cbomenuheader.setComboText('');
cbomenuheader.clearAll();//alert(menutype);
if(menutype!=='H')
{
url=fn_dhtmlxloadobject('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_new")."&task=".$this->enc("loadheader")."&kategory='+myForm.getCombo(\"cbocategory\").getSelectedValue()+'&idgroupproject='+val);
cbomenuheader.load(url);//alert('f');
}
//else
//{myform_setmenuorder();}
myform_setmenuorder();";
$onchangecbomenutype="if(val==null){myForm.getCombo('cbomenutype').setComboText('');}
myForm.getCombo('cbomenuheader').setComboText('');
myForm.getCombo('cbomenuheader').clearAll();";
//$onkeydowntxtmenutext="alert(myForm.getCombo('cbomenutype').getComboText());";
$onkeydowntxtmenutext="if(ev.keyCode==13)";
$onkeydowntxtmenutext.="{";
$onkeydowntxtmenutext.=" myForm.setItemValue('txtobjoption','');";
$onkeydowntxtmenutext.=" myForm.setItemValue('txtobjname','');";
$onkeydowntxtmenutext.=" myForm.setItemValue('txttask','');";
$onkeydowntxtmenutext.=" if(myForm.getItemValue('cbomenutype')=='H')";
$onkeydowntxtmenutext.=" {";
$onkeydowntxtmenutext.=" myForm.setItemValue('txtobjoption','-');";
$onkeydowntxtmenutext.=" myForm.setItemValue('txtobjname','-');";
$onkeydowntxtmenutext.=" myForm.setItemValue('txttask','-');";
$onkeydowntxtmenutext.=" }";
$onkeydowntxtmenutext.="}";
$onbuttonclickbtnsave="if(myForm.validate())
{";
$params="'obj=".$this->enc("menuconfig_new")."&task=".$this->enc("savemenu")."'";
$onbuttonclickbtnsave.="url=fn_dhtmlxsenddata('".$this->enc("obj_menuconfig")."',$params);
myForm.send(url,\"get\",function(loader, response){
var sp=trim(response).split('|');
//alert(response);
if(sp[0]=='ok')
{
fn_dhtmlxmessage('','Menu <b>'+myForm.getItemValue('txtmenutext')+'</b> sudah berhasil ditambahkan');
myform_clear();
}
else if(sp[0]=='failed')
{fn_dhtmlxmessage('error','Error Found : '+sp[1]);}
else
{fn_dhtmlxmessage('error','Error Found : '+response);}
});
}";
$arrevent=array(
array("eventname"=>"onbuttonclick","eventparam"=>"id,val",
"switch"=>array(
"btnsave"=>"$onbuttonclickbtnsave",
"btncancel"=>"myform_clear();"
)
),
array("eventname"=>"onchange","eventparam"=>"id,val",
"switch"=>array(
"cbomenugroupproject"=>"$onchangecbomenugroupproject",
"cbomenutype"=>"$onchangecbomenutype",
"cbomenuheader"=>"myform_setmenuorder();"
)
),
array("eventname"=>"onkeydown","eventparam"=>"inp,ev,id,val",
"switch"=>array("txtmenutext"=>"$onkeydowntxtmenutext")
)
);
$this->FN_DHTMLXFORMEVENT("myForm",$arrevent);
echo " }
function myform_setmenuorder()
{
var getmenuorder=ajaxuridhtmlx('".$this->enc("obj_menuconfig")."','obj=".$this->enc("menuconfig_new")."&task=".$this->enc("getordermenu")."&menutype='+myForm.getCombo(\"cbomenutype\").getSelectedValue()+'&idheader='+myForm.getCombo(\"cbomenuheader\").getSelectedValue()+'&kategory='+myForm.getCombo(\"cbocategory\").getSelectedValue());
//alert(getmenuorder);
myForm.setItemValue('txtmenuorder',getmenuorder);
}
function myform_clear()
{
myForm.setItemValue(\"cbomenutype\",'');
myForm.setItemValue(\"cbomenuheader\",'');
myForm.setItemValue(\"txtmenuid\",'');
myForm.setItemValue(\"txtmenutext\",'');
myForm.setItemValue(\"txtmenudesc\",'');
myForm.setItemValue(\"cbomenuimg\",'');
myForm.setItemValue(\"txtobjoption\",'');
myForm.setItemValue(\"txtobjname\",'');
myForm.setItemValue(\"txttask\",'');
myForm.setItemValue(\"cbotarget\",'');
myForm.setItemValue(\"chkaktif\",true);
myForm.setItemValue(\"txtmenuorder\",'');
myForm.setItemValue(\"cbomenugroup\",'');
myForm.setItemValue(\"cbomenugroupproject\",'');
myForm.setItemFocus(\"cbomenutype\");
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo $this->FN_CREATEFOOTER();
}
public function fn_savemenu($isupdate=null)
{
$menuid=$_REQUEST['txtmenuid'];
$menutype=$_REQUEST['cbomenutype'];//echo $menutype;return true;
$menuheader=$_REQUEST['cbomenuheader'];
$menutext=$_REQUEST['txtmenutext'];
$menudesc=$_REQUEST['txtmenudesc'];
$menuimg=$_REQUEST['cbomenuimg'];
$objoption=$_REQUEST['txtobjoption'];
$objname=$_REQUEST['txtobjname'];
$task=$_REQUEST['txttask'];
$target=$_REQUEST['cbotarget'];
$menuorder=$_REQUEST['txtmenuorder'];
$menugroup=$_REQUEST['cbomenugroup'];
$tables=$_REQUEST['cbotables'];
$idmenugroupproject=$_REQUEST['cbomenugroupproject'];
$menuactivated=$_REQUEST['chkaktif'];
$kategory=$_REQUEST['cbocategory'];
$ajaxurl="ajax=0&sec=1&option=".$this->enc($objoption)."&obj=".$this->enc($objname)."&task=".$this->enc($task);
if($menutype=='H'||$menutype=='S'){$objoption="";$objname="";$task="";$ajaxurl="";$target="";}
//"$('#uri').val('ajax=1&sec=1&option=01fc812f36899c1ee4d748105ff6db23&obj=e6e61859e95f78646b67a1cc96d270fa&task=de7eb57f52fc4d8a6fef759e7bb0844b');$('#fm').submit();";
if($menutype=='D'){if(!$this->CREATE_ROOT($objoption,$objname,$task,$tables)){echo 'failed|'.$this->getErrMsg();return false;};}
//return false;
$qry="insert into ".DB_APORTIL.".tbl_".$kategory."menu
set menuid='$menuid',menutype='$menutype',menuheader='$menuheader',menutext='$menutext',menudesc='$menudesc',
menuimg='$menuimg',objoption='$objoption',objname='$objname',objtask='$task',objtarget='$target',
menuorder='$menuorder',menugroup='$menugroup',id_menu_groupproject='$idmenugroupproject',menuactivated='$menuactivated',
iby='".$_SESSION['nik']."',idt=now()";
//echo $menuheader;return false;
//echo "failed|$idmenugroupproject";
//echo "failed|Object $objoption sudah pernah ditambahkan.TERIMA KASIH";
// if($this->fn_row_isexists("select objoption from ".DB_APORTIL.".tbl_menu where objoption='$objoption' and isdeleted=0"))
// {
// echo "failed|Object $objoption sudah pernah ditambahkan.TERIMA KASIH";return false;
// }
$qrychkmenuid="select menuid from ".DB_APORTIL.".tbl_treemenu where menuid='$menuid'";
if($this->fn_row_isexists($qrychkmenuid)){echo "failed|Mohon maaf menu $menuid sudah pernah didaftarkan.TERIMA KASIH";return false;}
if($this->executequery($qry))
{
echo 'ok';
//$msg="Menu baru <b>".strtoupper("$nmuser")."</b> sudah berhasil ditambahkan<br/>";
//$msg.="Klik ".$this->CREATE_LINK($this->fn_url_home(),"disini","javascript:void(0)","_self","Penambahan Menu Baru");
//$msg.=" untuk Penambahan Menu Baru. TERIMA KASIH";
//echo $this->SHOWMESSAGE($msg);
}else{echo "failed|".$this->getErrorQuery();}
}
public function fn_getordermenu()
{
$kategory=$_POST['kategory'];
$menutype=$_POST['menutype'];
//$menutype=$_POST['menutype'];
$qry="select menuorder from ".DB_APORTIL.".tbl_".$kategory."menu where menutype='$menutype' order by id desc limit 1";
//echo $qry;return false;
$menuorder=$this->fn_get_fieldvalue("menuorder",$qry);
if($menutype=='H'){$newmenuorder=$menuorder+1;}
else
{
$idheader=$_POST['idheader'];
$qry="select menuorder from ".DB_APORTIL.".tbl_".$kategory."menu where menuheader='$idheader' order by id desc limit 1";
//echo $qry;
$menuorder=$this->fn_get_fieldvalue("menuorder",$qry);
$newmenuorder=$menuorder+1;
//$lastmenuorder=substr($menuorder,strlen($menuorder)-1,1);
//if($lastmenuorder==1){$newmenuorder=$menuorder."0";}else{$newmenuorder=$menuorder+1;}
}
echo $newmenuorder;
// $arrprop=array("style="=>"\"width:3%;height:17px;text-align:center;\"","maxlength="=>"\"3\"",
// "onKeyDown="=>"\"nextfocus('txtmenuorder','cbotarget')\"","value="=>"\"$newmenuorder\"");
// echo $this->CREATE_INPUT_OBJECT("text","txtmenuorder","cbomenugroup","",$arrprop);
}
public function fn_geticons()
{
$qry="select imgname,imgname imagename from ".DB_APORTIL.".tbl_menu_img where isdeleted=0 order by id asc";
if($this->fn_row_isexists($qry))
{
$rs=$this->selectquery($qry);
if($rs)
{
$imgjson=array();
while($rw=$this->data_row_array($rs))
{
array_push($imgjson,array("value"=>$rw[0],"text"=>$rw[1],"img"=>$rw[1]));
//echo("<option value=\"".$rw[0]."\" img_src=\"".$rw[1]."\">".$rw[1]."</option>");
//echo("<option value=\"".$rw[0]."\">".$rw[1]."</option>");
}
}
$this->clearrecordset($rs);
$arrresult=array("options"=>$imgjson);
print(json_encode($arrresult));
}
}
public function fn_loadheader()
{
header("Content-type:text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo "<option value=\"\"></option>";
$kategory=$_REQUEST['kategory'];
$idgroupproject=$_REQUEST['idgroupproject'];
$qry="select id,concat(id,' - ',menutext) menutext from ".DB_APORTIL.".tbl_".$kategory."menu where menutype<>'D' and menuactivated=1 and id_menu_groupproject='$idgroupproject' order by id asc";
$rs=$this->selectquery($qry);
if($rs)
{
while($rw=$this->data_row_object($rs))
{
echo "<option value=\"".$rw->id."\">".$rw->menutext."</option>";
}
}
$this->clearrecordset($rs);
echo("</complete>");
}
public function fn_getmenugroup()
{
header("Content-type:text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo "<option value=\"\"></option>";
$qry="select groupuser grp,groupuser from ".DB_APORTIL.".tbl_usergroup where isdeleted=0 order by id asc";
$rs=$this->selectquery($qry);
if($rs)
{
while($rw=$this->data_row_object($rs))
{
echo "<option value=\"".$rw->grp."\">".$rw->groupuser."</option>";
}
}
$this->clearrecordset($rs);
echo("</complete>");
}
public function fn_gettables()
{
header("Content-type:text/xml");
echo("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
echo("<complete>");
echo("<option value=\"\"></option>");
$qry="select distinct table_name from information_schema.columns where table_schema='".DB_APORTIL."'";
if($this->fn_row_isexists($qry))
{
$rs=$this->selectquery($qry);
if($rs)
{
while($rw=$this->data_row_array($rs))
{
echo("<option value=\"".$rw[0]."\">".$rw[0]."</option>");
}
}
$this->clearrecordset($rs);
}
echo("</complete>");
}
}
?>