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,27 @@
<?php
class BASE_USER extends MY_DHTMLX
{
public function fn_page_construct()
{
}
}
class USER_HTML extends BASE_USER
{
public function fn_page_home()
{
}
public function fn_url_home()
{
return "$('#uri').val('');$('#fm').prop('target','_self');$('#fm').submit();";
}
public function fn_url_user_new()
{
return "$('#uri').val('ajax=0&sec=1&option=a9c521d741298f11e29475fe218a140d&obj=77672a4bfee0e997f5a006db8d5b1ae5&task=de7eb57f52fc4d8a6fef759e7bb0844b');$('#fm').prop('target','_self');$('#fm').submit();";
}
}
?>

59
objectx/obj_user/user.php Normal file
View File

@ -0,0 +1,59 @@
<?php
require_once($pg.".html.php");
class USER extends USER_HTML
{
}
$cl=new USER();
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(file_exists(PATH_OBJECT."/$option/$obj.php"))
{
require_once("$obj.php");
$className=strtoupper($obj);
$clfile=new $className();
$fn_init_java=$className."_javainit";
$init_java=trim($_REQUEST['init_java']);if($init_java){$clfile->$fn_init_java();}
$case=$obj;
}
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 $case;
switch($case)
{
case "user_$modulename":
$clfile->$fn_module_init();
break;
case "contextmenu":
$cl->FN_DHTMLXGRIDCONTEXTMENU();
break;
case "addcombo":
$cl->FN_DHTMLXADDCOMBO();
break;
case "addcombohrm":
$cl->FN_DHTMLXADDCOMBO(DB_SIMASHRM);
break;
// case "pagehome":
// $cl->fn_page_home();
// break;
// default:
// $cl->fn_page_default();
// break;
}
?>

View File

@ -0,0 +1,330 @@
<?php
class USER_AUTH extends USER
{
public function user_auth_javainit()
{
}
public function fn_auth_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_auth();
break;
case $task:
$task="fn_".$task;
if(method_exists($this,$task)){$this->$task();}
break;
default:
$this->fn_default_auth();
break;
}
}
public function fn_default_auth()
{
echo $this->FN_CREATEHEADER();
// echo "<style>
// .besidepassword {margin-left:92px;margin-top:-5px;position:absolute;z-index:0}
// </style>";
echo "<script>
var myFormsearch;var dguserauth;
function initObject()
{";
// ===== FOrm Search
$formdata=array(
array("type"=>"settings","position"=>"label-left","labelWidth"=>"160","inputWidth"=>"120"),
array("type"=>"fieldset","width"=>"950","label"=>"User Authentifikasi",
"list"=>array(
array("type"=>"hidden","name"=>"txtmenuid"),
array("type"=>"combo","name"=>"cbonik","label"=>"Masukkan/Pilih Kode User","required"=>"true","info"=>"true","inputWidth"=>"180",
"tooltip"=>"Pilih Kode User terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"","className"=>"txtleft"),
array("type"=>"newcolumn"),
array("type"=>"combo","name"=>"cbotipemenu","required"=>"true","info"=>"true","offsetLeft"=>"10",
"tooltip"=>"Pilih Tipe Menu terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"","className"=>"txtleft"),
array("type"=>"newcolumn"),
array("type"=>"combo","name"=>"cbogroupproject","info"=>"true","offsetLeft"=>"10","width"=>"190",
"tooltip"=>"Pilih Group Project Menu terlebih dahulu. TERIMA KASIH","maxLength"=>"","className"=>"txtleft"),
array("type"=>"newcolumn"),
array("type"=>"button","name"=>"btnloadmenu","value"=>"Load Menu","className"=>"button_load","offsetLeft"=>"10","offsetTop"=>"0","disabled"=>"1"),
array("type"=>"newcolumn"),
array("type"=>"button","name"=>"btnupdatemenu","value"=>"Update","className"=>"button_update","offsetLeft"=>"10","offsetTop"=>"0","disabled"=>"1")
)
)
);
$this->FN_DHTMLXFORM("myFormsearch","divformsearch",$formdata);
$arrval=array(array(value=>"",text=>""),array(value=>"",text=>"Menu"),array(value=>"tree",text=>"TreeMenu"));
$this->FN_COMBOVALIDATIONVALUEARRAY("myFormsearch","cbotipemenu",$arrval);
$exp="&exp=nik|9999";
if($_SESSION['nik']=='9999'){$exp="";}
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_employee_accessibility|id,nik,employeename:nik,employeename".$exp."')";
$this->FN_COMBOVALIDATIONVALUENEW("myFormsearch","cbonik","tbl_employee_accessibility","$urlcbo","");
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_employee_accessibility|id,nik,employeename:nik,employeename".$exp."')";
$urlother="myFormsearch.getCombo('cbogroupproject').clearAll();myFormsearch.getCombo('cbogroupproject').setComboText('');";
$urlother.="var groupproject=ajaxuridhtmlx('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("getfieldvalue")."&tableobj=tbl_employee_accessibility&getfield=menuidgroupproject&swhere=id|'+val);";
$urlother.="var url=fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_menu_groupproject|id,groupname,groupdescription:id,groupname&in=id|'+groupproject+'&sort=id');";
$urlother.=$this->FN_COMBOVALIDATIONVALUE2("myFormsearch","cbogroupproject","tbl_menu_groupproject","url","",true);
$this->FN_COMBOVALIDATIONVALUENEW("myFormsearch","cbonik","tbl_employee_accessibility","$urlcbo","$urlother");
// === Form Event
$onchangecbotipemenu="myFormsearch.enableItem('btnloadmenu');";
$onchangecbotipemenu.="myFormsearch.setItemFocus('btnloadmenu');";
$onclickbtnloadmenu="var menuid=ajaxuridhtmlx('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=".$this->enc("getmenuid")."&tipemenu='+myFormsearch.getCombo('cbotipemenu').getSelectedValue()+'&idnik='+myFormsearch.getCombo('cbonik').getSelectedValue());";
$onclickbtnloadmenu.="myFormsearch.setItemValue('txtmenuid',menuid);";
$onclickbtnloadmenu.="url=fn_dhtmlxloadobject('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=".$this->enc("loadmenu")."&idnik='+myFormsearch.getCombo('cbonik').getSelectedValue()+'&tipemenu='+myFormsearch.getCombo('cbotipemenu').getSelectedValue()+'&idgroupproject='+myFormsearch.getItemValue('cbogroupproject'));";
//$onclickbtnloadmenu.="alert(url);";
$onclickbtnloadmenu.="dguserauth.clearAndLoad(url);";
$onclickbtnloadmenu.="myFormsearch.enableItem('btnupdatemenu');";
$eventupdatemenu="dhtmlx.confirm({";
$eventupdatemenu.=" title:'Konfirmasi',text:'Data sudah benar dan ingin diupdate?',type:'confirm',";
$eventupdatemenu.=" callback:function(result){";
$eventupdatemenu.=" if(result)";
$eventupdatemenu.=" {";
$eventupdatemenu.=" var res=ajaxuridhtmlx('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=".$this->enc("updatemenuid")."&idnik='+myFormsearch.getItemValue('cbonik')+'&menuid='+myFormsearch.getItemValue('txtmenuid')+'&tipemenu='+myFormsearch.getItemValue('cbotipemenu'));";
$eventupdatemenu.=" var spres=res.split('|');";
$eventupdatemenu.=" if(spres[0]=='ok'){fn_dhtmlxmessage('','Menu sudah berhasil diupdate.TERIMA KASIH');}";
$eventupdatemenu.=" else{fn_dhtmlxmessage('error','Error Found : '+spres[1]);}";
$eventupdatemenu.=" fn_myform_clear();dguserauth.clearAll();".$this->FN_DHTMLXWINDOWSHIDEPROGRESS();
$eventupdatemenu.=" }else{".$this->FN_DHTMLXWINDOWSHIDEPROGRESS()."}";
$eventupdatemenu.=" }";
$eventupdatemenu.="});";
$onclickbtnupdatemenu=$this->FN_DHTMLXWINDOWSHOWPROGESS($eventupdatemenu);
$arrevent=array(
array("eventname"=>"onbuttonclick","eventparam"=>"id,val",
"switch"=>array(
"btnloadmenu"=>"$onclickbtnloadmenu",
"btnupdatemenu"=>"$onclickbtnupdatemenu"
)
),
array("eventname"=>"onchange","eventparam"=>"id,val",
"switch"=>array(
"cbotipemenu"=>"$onchangecbotipemenu",
"cbogroupproject"=>"myFormsearch.setItemFocus('btnloadmenu')"
)
)
);
$this->FN_DHTMLXFORMEVENT("myFormsearch",$arrevent);
// === Form Event
//echo " dguserauth=new dhtmlXGridObject(\"divdgsearch\");
// dguserauth.setSkin(\"dhx_skyblue\");
// dguserauth.setImagePath(\"".PATH_THEME."/codebase/imgs/\");
// dguserauth.setHeader(\"C,Id,Tipe,Menu Text,Keterangan,Group Project\");
// dguserauth.setColTypes(\"ch,ro,ro,ro,ro,ro\"); // ro => Read Only, ed => Edit
// dguserauth.attachHeader(\"#rspan,#rspan,#combo_filter,#rspan,#rspan,#combo_filter\");
// dguserauth.setInitWidths(\"40,30,80,210,320,*\");
// dguserauth.setColAlign(\"center,left,center,left,left,left\");
// dguserauth.setColSorting(\"int,int,str,str,str,str\");
//
// dguserauth.setDateFormat(\"%Y-%m-%d %H:%i:%s\");
// dguserauth.enablePaging(true,".PAGE_LIMIT.",null,\"divdgsearchpaging\",true,\"recInfoArea\");
// dguserauth.setPagingSkin(\"toolbar\",\"dhx_skyblue\");
// dguserauth.setPagingSkin(\"bricks\");
// dguserauth.enableTooltips(\"false,false,false,false,false\");
// dguserauth.attachFooter(\"<a href='javascript:void(0)' style='color:blue' onClick='fn_checkall(1)'>Check All</a>&nbsp;&nbsp;<a href='javascript:void(0)' style='color:blue' onClick='fn_checkall(0)'>Uncheck all</a>,#cspan,#cspan,#cspan,#cspan,#cspan\",[\"text-align:left;\"]);
// dguserauth.init();";
$grdinit=array("gridname"=>"dguserauth","divtarget"=>"divdgsearch","divpaging"=>"divpagingarea","paginglimit"=>PAGE_LIMIT,"skin"=>"modern",
"showloader"=>"true","setcolumnhidden"=>"false,false,false,false,false,false",
"attachheader"=>"#rspan,#rspan,#combo_filter,#rspan,#rspan,#combo_filter",
"enableheadermenu"=>true);
$gridproperties=array("C"=>"center,ch,40,center,int,false",
"ID.&nbsp;"=>"left,ro,30,left,str,false",
"Menu Type"=>"left,ro,110,left,str,false",
"Menu Text"=>"left,ed,180,left,str,false",
"Menu Description"=>"left,ro,200,left,str,false",
"Group Project"=>"center,combo,110,center,str,false");
$this->FN_DHTMLXGRIDVIEW($grdinit,$gridproperties,"bricks",true,"");
// === data grid attach Event
//echo " dguserauth.attachEvent(\"onXLE\",function(){
// var rwcount=dguserauth.getRowsNum();
// var menuid=myFormsearch.getItemValue(\"txtmenuid\");
// if(menuid)
// {
// spmenuid=menuid.split(',');
// for(i=1;i<=rwcount;i++)
// {
// var id=dguserauth.cells(i,1).getValue();
// for(j=0;j<spmenuid.length;j++)
// {
// if(trim(spmenuid[j])==trim(id))
// {
// dguserauth.cells(i,0).setValue(1);
// }
// }
// }
// }
// });
//
// dguserauth.attachEvent(\"onEditCell\",function(stage,rowid,colid){
// stage 2 is edit closed
// if(colid==0&&stage==1){fn_getmenuid();}
//alert(colid);
// return true;
// });";
echo " }
function fn_checkall(chkvalue)
{
var rwcount=dguserauth.getRowsNum();
if(rwcount<=0){fn_dhtmlxmessage('error','Mohon maaf data tidak ada / belum query');return false;}
//alert(rwcount);
for(i=1;i<=rwcount;i++)
{
dguserauth.cells(i,0).setValue(chkvalue);
//alert(i+' '+dguserauth.cells(i,0).getValue(chkvalue));
}
if(chkvalue==1){fn_getmenuid();}
}
function fn_getmenuid()
{
var rwcount=dguserauth.getRowsNum();
var varmenuid='';
for(i=1;i<=rwcount;i++)
{
var id=dguserauth.cells(i,0).getValue();
if(id==1){varmenuid=varmenuid+dguserauth.cells(i,1).getValue()+',';}
}
varmenuid=varmenuid.substring(0,varmenuid.length-1);
myFormsearch.setItemValue(\"txtmenuid\",varmenuid);
//alert(myFormsearch.getItemValue(\"txtmenuid\"));
}
function fn_myform_clear()
{
myFormsearch.getCombo(\"cbonik\").setComboValue('');
myFormsearch.getCombo(\"cbonik\").setComboText('');
myFormsearch.getCombo(\"cbotipemenu\").setComboValue('');
myFormsearch.getCombo(\"cbotipemenu\").setComboText('');
myFormsearch.disableItem(\"btnloadmenu\");
myFormsearch.disableItem(\"btnupdatemenu\");
myFormsearch.setItemFocus(\"cbonik\");
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo " <table width=\"100%\" border=\"0\">
<tr>
<td valign=\"top\">
<div id=\"divformsearch\" style=\"width:100%\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divdgsearch\" style=\"height:420px;width:948px;overflow:hidden\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divdgsearchpaging\" style=\"width:830px;margin-top:1px\"></div>
</td>
</tr>
</table>";
echo $this->FN_CREATEFOOTER();
}
public function fn_updatemenuid()
{
$id=$_REQUEST['idnik'];
$menuid=$_REQUEST['menuid'];//echo $menutype;return true;
$tipemenu=$_REQUEST['tipemenu'];//echo $menutype;return true;
//return false;
$qry="update ".DB_APORTIL.".tbl_employee_accessibility
set ".$tipemenu."menuid='$menuid',uby='".$_SESSION['nik']."',udt=now()
where id='$id'";
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_loadmenu()
{
$id=$_REQUEST["idnik"];
$tipemenu=$_REQUEST["tipemenu"];
$idgroupproject=$_REQUEST["idgroupproject"];
$sp=$this->fn_get_fieldsvalues("menuidgroupproject,groupuser","select menuidgroupproject,groupuser from ".DB_APORTIL.".tbl_employee_accessibility where id='$id'");
//echo "select menuidgroupproject,groupuser from ".DB_APORTIL.".tbl_employee_accessibility where nik='$nik'";return false;
$menuidgroupproject=$sp[0];$groupuser=$sp[1];
//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\">";
//if(!$menuidgroupproject){$menuidgroupproject=0;}
if(!$menuidgroupproject){$menuidgroupproject=0;}
$swhere="and t.id_menu_groupproject in($menuidgroupproject)";
if($idgroupproject){$swhere="and t.id_menu_groupproject='$idgroupproject'";}
if($nik=='9999'||$nik=='9292'||$groupuser=='SU'&&!$idgroupproject){$swhere="";}
$qry="select t.id,t.menutype,t.menutext,t.menudesc,0 ischecked,m.groupname
from ".DB_APORTIL.".tbl_".$tipemenu."menu t inner join ".DB_APORTIL.".tbl_menu_groupproject m on m.id=t.id_menu_groupproject
where t.isdeleted=0 and t.menuactivated=1 $swhere
order by t.id asc limit ".TBL_PAGE_LIMIT;
//echo $qry;
$rs=$this->selectquery($qry);
if($rs)
{
$i=1;
while($row=$this->data_row_array($rs))
{
//create xml tag for grid's row
echo ("<row id='".$i."'>");
print("<cell><![CDATA[".$row["ischecked"]."]]></cell>");
print("<cell><![CDATA[".$row["id"]."]]></cell>");
print("<cell><![CDATA[".$row["menutype"]."]]></cell>");
print("<cell><![CDATA[".$row["menutext"]."]]></cell>");
print("<cell><![CDATA[".$row["menudesc"]."]]></cell>");
print("<cell><![CDATA[".$row["groupname"]."]]></cell>");
echo ("</row>");
$i+=1;
}
}
else
{
//error occurs
echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file<br>";
}
echo "</rows>";
}
public function fn_getnik()
{
$nik=$_REQUEST["nik"];
$getnik=$this->fn_get_fieldvalue("nik","select nik from ".DB_APORTIL.".tbl_employee_accessibility where nik='$nik' and isdeleted=0");
echo $getnik;
}
public function fn_getmenuid()
{
$id=$_REQUEST["idnik"];
$tipemenu=$_REQUEST["tipemenu"];
$menuid=$this->fn_get_fieldvalue($tipemenu."menuid","select ".$tipemenu."menuid from ".DB_APORTIL.".tbl_employee_accessibility where id='$id'");
echo $menuid;
}
}
?>

View File

@ -0,0 +1,28 @@
<?php
class USER_AUTH1 extends USER
{
public function user_auth1_javainit()
{
}
public function fn_auth1_init()
{
if(isset($_REQUEST['task'])){$task=trim(strtolower($_REQUEST['task']));}
if(isset($_POST['task'])){$task=trim(strtolower($_POST['task']));}
switch($task)
{
case "saveauth1":
break;
default:
$this->fn_default_auth1();
break;
}
}
public function fn_default_auth1()
{
}
}
?>

View File

@ -0,0 +1,320 @@
<?php
class USER_AUTH extends USER
{
public function user_auth_javainit()
{
}
public function fn_auth_init()
{
if(isset($_REQUEST['task'])){$task=trim(strtolower($_REQUEST['task']));}
if(isset($_POST['task'])){$task=trim(strtolower($_POST['task']));}
switch($task)
{
case "updatemenuid":
$this->fn_updatemenuid();
break;
case "loadmenu":
$this->fn_loadmenu();
break;
case "getmenuid":
$this->fn_getmenuid();
break;
case "getkduser":
$this->fn_getkduser();
break;
default:
$this->fn_default_auth();
break;
}
}
public function fn_default_auth()
{
echo $this->FN_CREATEHEADER();
// echo "<style>
// .besidepassword {margin-left:92px;margin-top:-5px;position:absolute;z-index:0}
// </style>";
echo "<script>
var myFormsearch;var dguserauth;
function initObject()
{
// ===== FOrm Search
formData = [
{type: \"settings\", position: \"label-left\", labelWidth: 160, inputWidth: 120},
{type:\"fieldset\",width:\"720\",label:\"Pencarian User\",list:[
{type:\"combo\", name:\"cbokduser\",label: \"Masukkan/Pilih Kode User\", inputWidth:160,info:true,tooltip:\"Masukkan/Pilih User\"},
{type: \"hidden\", name:\"txtmenuid\", value:\"\"},
{type:\"newcolumn\"},
{type:\"combo\",name:\"cbotipemenu\",required:true,info:true,inputWidth:120,readonly:1,options:";
$arrval=array(array(value=>"",text=>""),array(value=>"",text=>"Menu"),array(value=>"tree",text=>"TreeMenu"));
echo json_encode($arrval);
echo " },
{type:\"newcolumn\"},
{type:\"button\", name:\"btnloadmenu\",value: \"Load Menu\",offsetTop:0,offsetLeft:10,disabled:1},
{type:\"newcolumn\"},
{type:\"button\", name:\"btnupdatemenu\",value: \"Update\",offsetTop:0,offsetLeft:10,className:\"button_update\",disabled:1}
]}
];
myFormsearch = new dhtmlXForm(\"divformsearch\", formData);
myFormsearch.enableLiveValidation(true);
myFormsearch.setFocusOnFirstActive(true);
var cbokduser=myFormsearch.getCombo(\"cbokduser\");
url=fn_dhtmlxloadobject('".$this->enc("obj_user")."','obj=".$this->enc("-")."&task=".$this->enc("addcombo")."&tableobj=tbl_userlogin|kduser,kduser&exp=kduser|9999');
cbokduser.enableFilteringMode(true);
cbokduser.load(url);
cbokduser.attachEvent(\"onChange\",function(){
if(myFormsearch.getCombo(\"cbokduser\").getComboText()!==''&&myFormsearch.getCombo(\"cbokduser\").getComboText()!=='-')
{
var kduser=ajaxuridhtmlx('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=getkduser&kduser='+myFormsearch.getCombo(\"cbokduser\").getComboText());
if(!trim(kduser)){fn_dhtmlxmessage('error','Kode user '+myFormsearch.getCombo(\"cbokduser\").getComboText()+' Tidak terdaftar');fn_myform_clear();}
}
});
// ==== Attach Event Click
myFormsearch.attachEvent(\"onButtonClick\",function(id){
switch(id)
{
case 'btnloadmenu':
var menuid=ajaxuridhtmlx('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=getmenuid&tipemenu='+myFormsearch.getCombo(\"cbotipemenu\").getSelectedValue()+'&kduser='+myFormsearch.getCombo(\"cbokduser\").getSelectedValue());
//alert(menuid);
myFormsearch.setItemValue(\"txtmenuid\",menuid);
url=fn_dhtmlxloadobject('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=loadmenu&kduser='+myFormsearch.getCombo(\"cbokduser\").getSelectedValue()+'&tipemenu='+myFormsearch.getCombo(\"cbotipemenu\").getSelectedValue());
//alert(url);
//dguserauth.enableSmartRendering(true,50);
dguserauth.clearAndLoad(url);
myFormsearch.enableItem(\"btnupdatemenu\");
break;
case 'btnupdatemenu':
dhtmlx.confirm({
title:'Konfirmasi',text:'Data sudah benar dan ingin diupdate?',type:'confirm',
callback:function(result){
if(result)
{
//alert(myFormsearch.getItemValue(\"txtmenuid\"));
var res=ajaxuridhtmlx('".$this->enc("obj_user")."','obj=".$this->enc("user_auth")."&task=updatemenuid&kduser='+myFormsearch.getCombo(\"cbokduser\").getSelectedValue()+'&menuid='+myFormsearch.getItemValue(\"txtmenuid\")+'&tipemenu='+myFormsearch.getCombo(\"cbotipemenu\").getSelectedValue());
var spres=res.split('|');
if(spres[0]=='ok'){fn_dhtmlxmessage('','Menu sudah berhasil diupdate.TERIMA KASIH');}
else{fn_dhtmlxmessage('error','Error Found : '+spres[1]);}
fn_myform_clear();
dguserauth.clearAll();
}
}
});
break;
}
});
myFormsearch.attachEvent(\"onChange\",function(id,value){
switch(id)
{
case 'cbotipemenu':
myFormsearch.enableItem(\"btnloadmenu\");
myFormsearch.setItemFocus(\"btnloadmenu\");
break;
}
});
// === data grid attach
dguserauth=new dhtmlXGridObject(\"divdgsearch\");
dguserauth.setSkin(\"dhx_skyblue\");
dguserauth.setImagePath(\"".PATH_THEME."/codebase/imgs/\");
dguserauth.setHeader(\"chk,Id,Tipe,Menu Text,Keterangan\");
dguserauth.setColTypes(\"ch,ro,ro,ro,ro\"); // ro => Read Only, ed => Edit
dguserauth.attachHeader(\"#rspan,#rspan,#combo_filter,#rspan,#rspan\");
dguserauth.setInitWidths(\"40,30,60,140,*\");
dguserauth.setColAlign(\"center,left,center,left,left\");
dguserauth.setColSorting(\"int,int,str,str,str\");
//dguserauth.setDateFormat(\"%Y-%m-%d %H:%i:%s\");
dguserauth.enablePaging(true,".PAGE_LIMIT.",".PAGE_LIMIT_PART.",\"divdgsearchpaging\");
//dguserauth.setPagingSkin(\"toolbar\",\"dhx_skyblue\");
dguserauth.setPagingSkin(\"bricks\");
dguserauth.enableTooltips(\"false,false,false,false,false\");
dguserauth.attachFooter(\"<a href='javascript:void(0)' style='color:blue' onClick='fn_checkall(1)'>Check All</a>&nbsp;&nbsp;<a href='javascript:void(0)' style='color:blue' onClick='fn_checkall(0)'>Uncheck all</a>,#cspan,#cspan,#cspan,#cspan\",[\"text-align:left;\"]);
dguserauth.init();
// === data grid attach Event
dguserauth.attachEvent(\"onXLE\",function(){
var rwcount=dguserauth.getRowsNum();
var menuid=myFormsearch.getItemValue(\"txtmenuid\");
if(menuid)
{
spmenuid=menuid.split(',');
//dguserauth.cells(40,0).setValue(1);return false;
for(i=1;i<=rwcount;i++)
{
var id=dguserauth.cells(i,1).getValue();
// id=trim(id);
for(j=0;j<spmenuid.length;j++)
{
if(trim(spmenuid[j])==trim(id))
{
dguserauth.cells(i,0).setValue(1);
}
}
//var id=dguserauth.cells(i,1).getValue();
//var strmatch=spmenuid.indexOf(id);
//if(strmatch>=0){dguserauth.cells(i,0).setValue(1);}
}
}
});
dguserauth.attachEvent(\"onEditCell\",function(stage,rowid,colid){
// stage 2 is edit closed
if(colid==0&&stage==1){fn_getmenuid();}
//alert(colid);
return true;
});
}
function fn_checkall(chkvalue)
{
var rwcount=dguserauth.getRowsNum();
if(rwcount<=0){fn_dhtmlxmessage('error','Mohon maaf data tidak ada / belum query');return false;}
//alert(rwcount);
for(i=1;i<=rwcount;i++)
{
dguserauth.cells(i,0).setValue(chkvalue);
//alert(i+' '+dguserauth.cells(i,0).getValue(chkvalue));
}
if(chkvalue==1){fn_getmenuid();}
}
function fn_getmenuid()
{
var rwcount=dguserauth.getRowsNum();
var varmenuid='';
for(i=1;i<=rwcount;i++)
{
var id=dguserauth.cells(i,0).getValue();
if(id==1){varmenuid=varmenuid+dguserauth.cells(i,1).getValue()+',';}
}
varmenuid=varmenuid.substring(0,varmenuid.length-1);
myFormsearch.setItemValue(\"txtmenuid\",varmenuid);
//alert(myFormsearch.getItemValue(\"txtmenuid\"));
}
function fn_myform_clear()
{
myFormsearch.getCombo(\"cbokduser\").setComboValue('');
myFormsearch.getCombo(\"cbokduser\").setComboText('');
myFormsearch.getCombo(\"cbotipemenu\").setComboValue('');
myFormsearch.getCombo(\"cbotipemenu\").setComboText('');
myFormsearch.disableItem(\"btnloadmenu\");
myFormsearch.disableItem(\"btnupdatemenu\");
myFormsearch.setItemFocus(\"cbokduser\");
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY();
echo " <table width=\"100%\" border=\"0\">
<tr>
<td valign=\"top\">
<div id=\"divformsearch\" style=\"width:100%\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divdgsearch\" style=\"height:360px;width:720px;overflow:hidden\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"divdgsearchpaging\" style=\"width:720px;margin-top:0px\"></div>
</td>
</tr>
</table>";
echo $this->FN_CREATEFOOTER();
}
public function fn_updatemenuid()
{
$kduser=$_REQUEST['kduser'];
$menuid=$_REQUEST['menuid'];//echo $menutype;return true;
$tipemenu=$_REQUEST['tipemenu'];//echo $menutype;return true;
//return false;
$qry="update ".DB_APORTIL.".tbl_userlogin
set ".$tipemenu."menu_id='$menuid',uby='".$_SESSION['nik']."',udt=now()
where kduser='$kduser'";
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_loadmenu()
{
$kduser=$_REQUEST["kduser"];
$tipemenu=$_REQUEST["tipemenu"];
//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\">";
$swhere="and menugroup<>'SU'";
if($kduser=='9999'){$swhere="";}
//output data from DB as XML
// $qry="select id,kduser,nmuser,hp,pass,maskpass,groupuser,isactivated from ".DB_APORTIL.".tbl_userlogin
// where (nmuser like '%$keyword%' or kduser like '%$keyword%') and kduser<>'9999' and isdeleted=0
// order by id asc limit ".TBL_PAGE_LIMIT;
$qry="select id,menutype,menutext,menudesc,0 ischecked from ".DB_APORTIL.".tbl_".$tipemenu."menu
where isdeleted=0 and menuactivated=1 $swhere
order by id asc limit ".TBL_PAGE_LIMIT;
$rs=$this->selectquery($qry);
if($rs)
{
$i=1;
while($row=$this->data_row_array($rs))
{
//create xml tag for grid's row
echo ("<row id='".$i."'>");
print("<cell><![CDATA[".$row["ischecked"]."]]></cell>");
print("<cell><![CDATA[".$row["id"]."]]></cell>");
print("<cell><![CDATA[".$row["menutype"]."]]></cell>");
print("<cell><![CDATA[".$row["menutext"]."]]></cell>");
print("<cell><![CDATA[".$row["menudesc"]."]]></cell>");
echo ("</row>");
$i+=1;
}
}
else
{
//error occurs
echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file<br>";
}
echo "</rows>";
}
public function fn_getkduser()
{
$kduser=$_REQUEST["kduser"];
$getkduser=$this->fn_get_fieldvalue("kduser","select kduser from ".DB_APORTIL.".tbl_userlogin where kduser='$kduser'");
echo $getkduser;
}
public function fn_getmenuid()
{
$kduser=$_REQUEST["kduser"];
$tipemenu=$_REQUEST["tipemenu"];
$menuid=$this->fn_get_fieldvalue($tipemenu."menu_id","select ".$tipemenu."menu_id from ".DB_APORTIL.".tbl_userlogin where kduser='$kduser'");
echo $menuid;
}
}
?>

View File

@ -0,0 +1,435 @@
<?php
class USER_NEW extends USER
{
public function user_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);}}
switch($task)
{
case "default":
$this->fn_default_new();
break;
case $task:
$task="fn_".$task;
if(method_exists($this,$task)){$this->$task();}
break;
default:
$this->fn_default_new();
break;
}
}
public function fn_default_new()
{
echo $this->FN_CREATEHEADER();
echo "<style>
.besidebtnsave {margin-left:114px;margin-top:-7px;position:absolute;}
.besidebtnupdate {margin-left:220px;margin-top:-7px;position:absolute;}
.besidebtndelete {margin-left:322px;margin-top:-7px;position:absolute;}
.besidepassword {margin-left:290px;margin-top:-15px;position:absolute;}
</style>";
echo "<script>
var myForm,myFormsearch,dgnew;
function initObject()
{";
$formdata=array(
array("type"=>"settings","position"=>"label-left","labelWidth"=>"180","inputWidth"=>"120"),
array("type"=>"block","width"=>"500",
"list"=>array(
array("type"=>"hidden","name"=>"txt_id"),
array("type"=>"hidden","name"=>"txt_isactivated"),
array("type"=>"hidden","name"=>"txt_passmask"),
array("type"=>"input","name"=>"txt_nik","label"=>"NIK / User Login","required"=>"true","info"=>"true","inputWidth"=>"130",
"tooltip"=>"Masukkan NIK terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"20","className"=>"txtcenter"),
array("type"=>"input","name"=>"txt_namaemployee","label"=>"Nama Employee","required"=>"true","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan Nama Employee terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"80","className"=>"txtleft"),
array("type"=>"input","name"=>"txt_hp","label"=>"Nomor HP","required"=>"true","info"=>"true","inputWidth"=>"130",
"tooltip"=>"Masukkan Nomor HP terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"20","className"=>"txtcenter"),
array("type"=>"input","name"=>"txt_pass","label"=>"Password","required"=>"true","info"=>"true","inputWidth"=>"130",
"tooltip"=>"Masukkan Password terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"10","className"=>"txtcenter"),
array("type"=>"input","name"=>"txt_menuidgroupproject","label"=>"ID Groupproject","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan ID Groupproject terlebih dahulu. TERIMA KASIH","maxLength"=>"65535","className"=>"txtleft"),
array("type"=>"input","name"=>"txt_menuid","label"=>"Menu ID","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan Menu ID terlebih dahulu. TERIMA KASIH","maxLength"=>"65535","className"=>"txtleft"),
array("type"=>"input","name"=>"txt_treemenuid","label"=>"Treemenu ID","info"=>"true","inputWidth"=>"220",
"tooltip"=>"Masukkan Treemenu ID terlebih dahulu. TERIMA KASIH","maxLength"=>"65535","className"=>"txtleft"),
array("type"=>"combo","name"=>"cbo_idgroupuser","label"=>"Group User","required"=>"true","info"=>"true","inputWidth"=>"130",
"tooltip"=>"Pilih Group User terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"11","className"=>"txtleft"),
array("type"=>"combo","name"=>"cbo_idgroupunit","label"=>"Group Unit","required"=>"true","info"=>"true","inputWidth"=>"130",
"tooltip"=>"Pilih Group Unit terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"11","className"=>"txtleft"),
array("type"=>"checkbox","name"=>"chk_isactivated","label"=>"Aktifkan"),
array("type"=>"combo","name"=>"cbo_idlevel","label"=>"User Level","required"=>"true","info"=>"true","inputWidth"=>"160",
"tooltip"=>"Pilih User Level terlebih dahulu. TERIMA KASIH","validate"=>"NotEmpty","maxLength"=>"11","className"=>"txtleft"),
array("type"=>"button","name"=>"btnsave","value"=>"Save","className"=>"button_update","offsetLeft"=>"20","offsetTop"=>"15"),
array("type"=>"button","name"=>"btnupdate","value"=>"Update","className"=>"button_saveas besidebtnsave","offsetLeft"=>"0","disabled"=>"1"),
//array("type"=>"button","name"=>"btnsubmit","value"=>"Submit","className"=>"button_submit besidebtnupdate","offsetLeft"=>"0","disabled"=>"1"),
array("type"=>"button","name"=>"btndelete","value"=>"Delete","className"=>"button_delete besidebtnupdate","offsetLeft"=>"0","disabled"=>"1"),
array("type"=>"button","name"=>"btncancel","value"=>"Cancel","className"=>"button_cancel besidebtndelete","offsetLeft"=>"0","disabled"=>"0")
)
)
);
$this->FN_DHTMLXFORM("myForm","divnewnew",$formdata);
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_usergroup|id,groupuser')";
$this->FN_COMBOVALIDATIONVALUENEW("myForm","cbo_idgroupuser","tbl_usergroup","$urlcbo","");
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_usergroupunit|id,groupunit')";
$this->FN_COMBOVALIDATIONVALUENEW("myForm","cbo_idgroupunit","tbl_usergroupunit","$urlcbo","");
$urlcbo="fn_dhtmlxloadobject('".$this->enc("obj_controller")."','obj=".$this->enc("-")."&task=".$this->enc("dhtmlxaddcombo")."&tableobj=tbl_userlevel|id,userlevel')";
$this->FN_COMBOVALIDATIONVALUENEW("myForm","cbo_idlevel","tbl_userlevel","$urlcbo","");
$arrerror=array("txt_nik"=>"Error Found : Harap Isikan <b>NIK</b> terlebih dahulu.TERIMA KASIH",
"txt_namaemployee"=>"Error Found : Harap Isikan <b>Nama Employee</b> terlebih dahulu.TERIMA KASIH",
"txt_hp"=>"Error Found : Harap Isikan <b>Nomor HP</b> terlebih dahulu.TERIMA KASIH",
"txt_pass"=>"Error Found : Harap Isikan <b>Password</b> terlebih dahulu.TERIMA KASIH",
"txt_menuidgroupproject"=>"Error Found : Harap Isikan <b>ID Groupproject</b> terlebih dahulu.TERIMA KASIH",
"txt_menuid"=>"Error Found : Harap Isikan <b>Menu ID</b> terlebih dahulu.TERIMA KASIH",
"txt_treemenuid"=>"Error Found : Harap Isikan <b>Treemenu ID</b> terlebih dahulu.TERIMA KASIH",
"cbo_idgroupuser"=>"Error Found : Harap Isikan <b>Group User</b> terlebih dahulu.TERIMA KASIH",
"cbo_idgroupunit"=>"Error Found : Harap Isikan <b>Group Unit</b> terlebih dahulu.TERIMA KASIH",
"cbo_idlevel"=>"Error Found : Harap Isikan <b>User Level</b> terlebih dahulu.TERIMA KASIH"
);
$this->FN_DHTMLXFORMVALIDATIONERROR("myForm",$arrerror);
$arrayControls=array("txt_id"=>"","txt_nik"=>"","txt_namaemployee"=>"","txt_hp"=>"",
"txt_pass"=>"","txt_menuidgroupproject"=>"","txt_menuid"=>"",
"txt_treemenuid"=>"","cbo_idgroupuser"=>"","cbo_idgroupunit"=>"",
"chk_isactivated"=>"","cbo_idlevel"=>""
);
// === Form Event
$onobjkeydown="if(ev.keyCode==13){ev.stopPropagation();ev.preventDefault();if(myForm.isItemEnabled('btnupdate')){myForm.setItemFocus('btnupdate');dhtmlXclickButton('btnupdate');}else{myForm.setItemFocus('btnsave');}return false;}";
$onchangechkisactivated="myForm.setItemValue('txt_isactivated',0);";
$onchangechkisactivated.="if(checked){myForm.setItemValue('txt_isactivated',1);}";
$onbuttonclickbtnsave="if(myForm.validate())
{
dhtmlx.confirm({
title:'Confirmation',text:'Are you will be saved and data is correctly?',type:'confirm',
callback:function(result){
if(result)
{";
$params="'obj=".$this->enc("user_new")."&task=".$this->enc("saverecord")."'";
$onformsenddata="url=fn_dhtmlxsenddata('".$this->enc("obj_user")."',$params);
myForm.send(url,\"get\",function(loader, response){";
$onformsenddata.=$this->FN_DHTMLXWINDOWSHIDEPROGRESS();
$onformsenddata.="var sp=trim(response).split('|');
//alert(response);
if(sp[0]=='ok')
{
fn_dhtmlxmessage('','Data <b>'+myForm.getItemValue('txt_nik')+'</b> has been saved');";
$onformsenddata.=$this->FN_DHTMLXFORMCLEAR2("myForm",$arrayControls,"txt_nik");
$onformsenddata.="fn_grid_loaddata();
}
else if(sp[0]=='failed')
{fn_dhtmlxmessage('error','Error Found : '+sp[1]);}
else
{fn_dhtmlxmessage('error','Error Found : '+response);}
});";
$onbuttonclickbtnsave.=$this->FN_DHTMLXWINDOWSHOWPROGESS($onformsenddata);
$onbuttonclickbtnsave.=" }
}
});
}";
$onbuttonclickbtnupdt="if(myForm.validate())
{
dhtmlx.confirm({
title:'Confirmation',text:'Are you will be updated and data is correctly?',type:'confirm',
callback:function(result){
if(result)
{";
$params="'obj=".$this->enc("user_new")."&task=".$this->enc("updrecord")."'";
$onformsenddata="url=fn_dhtmlxsenddata('".$this->enc("obj_user")."',$params);
myForm.send(url,\"get\",function(loader, response){";
$onformsenddata.=$this->FN_DHTMLXWINDOWSHIDEPROGRESS();
$onformsenddata.="var sp=trim(response).split('|');
//alert(response);
if(sp[0]=='ok')
{
fn_dhtmlxmessage('','Data <b>'+myForm.getItemValue('txt_nik')+'</b> has been update');";
$onformsenddata.=$this->FN_DHTMLXFORMCLEAR2("myForm",$arrayControls,"txt_nik");
$onformsenddata.="myForm.enableItem('btnsave');";
$onformsenddata.="myForm.disableItem('btnupdate');";
$onformsenddata.="myForm.disableItem('btndelete');";
$onformsenddata.="fn_grid_loaddata();
}
else if(sp[0]=='failed')
{fn_dhtmlxmessage('error','Error Found : '+sp[1]);}
else
{fn_dhtmlxmessage('error','Error Found : '+response);}
});";
$onbuttonclickbtnupdt.=$this->FN_DHTMLXWINDOWSHOWPROGESS($onformsenddata);
$onbuttonclickbtnupdt.=" }
}
});
}";
$eventafterdeleted=$this->FN_DHTMLXFORMCLEAR2("myForm",$arrayControls,"txt_nik");
$eventafterdeleted.="myForm.enableItem('btnsave');";
$eventafterdeleted.="myForm.disableItem('btnupdate');";
$eventafterdeleted.="myForm.disableItem('btndelete');";
$eventafterdeleted.="fn_grid_loaddata();";
$onbuttonclickbtndeleted=$this->FN_DHTMLXREMARKFORDELETED("obj_user","user_new","myForm.getItemValue('txt_id')","txt_nik",$eventafterdeleted);
$onbuttonclickbtncancel=$this->FN_DHTMLXFORMCLEAR2("myForm",$arrayControls);
$onbuttonclickbtncancel.="myForm.enableItem('btnsave');";
$onbuttonclickbtncancel.="myForm.disableItem('btnupdate');";
$onbuttonclickbtncancel.="myForm.disableItem('btndelete');";
$onbuttonclickbtncancel.="myForm.setItemFocus('txt_nik');";
$onbuttonclickbtncancel.="fn_grid_loaddata();";
$arrevent=array(
array("eventname"=>"onbuttonclick","eventparam"=>"id,val",
"switch"=>array(
"btnsave"=>"$onbuttonclickbtnsave",
"btnupdate"=>"$onbuttonclickbtnupdt",
"btndelete"=>"$onbuttonclickbtndeleted",
"btncancel"=>"$onbuttonclickbtncancel"
)
),
array("eventname"=>"onkeydown","eventparam"=>"inp,ev,id,val",
"switch"=>array(
"cbo_idlevel"=>"$onobjkeydown"
)
),
array("eventname"=>"onChange","eventparam"=>"id,val,checked",
"switch"=>array(
"chk_isactivated"=>"$onchangechkisactivated"
)
)
);
$this->FN_DHTMLXFORMEVENT("myForm",$arrevent);
// === FORM SEARCH AND GRID
$formdata=array(
array("type"=>"settings","position"=>"label-left","labelWidth"=>"180","inputWidth"=>"120"),
array("type"=>"fieldset","width"=>"580","label"=>"Pencarian",
"list"=>array(
array("type"=>"input","name"=>"txtsearch","label"=>"Masukkan Kata Yang Ingin Dicari","info"=>"true","inputWidth"=>"240",
"tooltip"=>"Insert Your Keyword","maxLength"=>"","className"=>"txtleft","labelWidth"=>"210"),
array("type"=>"newcolumn"),
array("type"=>"button","name"=>"btnfind","value"=>"","className"=>"button_find","offsetLeft"=>"10","offsetTop"=>"0")
)
)
);
$this->FN_DHTMLXFORM("myFormsearch","divnewsearch",$formdata,true);
$ontxtsearchkeydown="if(ev.keyCode==13){ev.stopPropagation();ev.preventDefault();myFormsearch.setItemFocus('btnfind');}";
$arrevent=array(
array("eventname"=>"onbuttonclick","eventparam"=>"id,val",
"switch"=>array(
"btnfind"=>"fn_grid_loaddata()"
)
),
array("eventname"=>"onkeydown","eventparam"=>"inp,ev,id,val",
"switch"=>array(
"txtsearch"=>"$ontxtsearchkeydown"
)
)
);
$this->FN_DHTMLXFORMEVENT("myFormsearch",$arrevent);
$grdinit=array("gridname"=>"dgnew","divtarget"=>"div_dgnew","divpaging"=>"div_dgnewpaging","paginglimit"=>PAGE_LIMIT,
"showloader"=>"true","setcolumnhidden"=>"true,false,false,false,false,false,false,false,false,false,false,false,false,false,false");
$gridproperties=array("id"=>"right,ro,96,right,int,false,true",
"No.&nbsp;"=>"right,ro,35,center,int,false",
"Nik"=>"left,ro,94,left,str,false",
"Nama Employee"=>"left,ro,234,left,str,false",
"Nomor HP"=>"left,ro,134,left,str,false",
"Password"=>"left,ro,126,left,str,false",
"ID Groupproject"=>"left,ro,250,left,str,false",
"Menu ID"=>"left,ro,250,left,str,false",
"Treemenu ID"=>"left,ro,250,left,str,false",
"Group User"=>"center,ro,110,center,str,false",
"Group Unit"=>"center,ro,110,center,str,false",
"Aktifkan"=>"center,ch,110,center,int,false",
"User Level"=>"center,ro,110,center,str,false");
$this->FN_DHTMLXGRIDVIEW($grdinit,$gridproperties,"bricks","","fn_grid_loaddata()");
$arrfields=array("txt_id"=>"","txt_nik"=>"","txt_namaemployee"=>"","txt_hp"=>"","txt_passmask"=>"pass",
"txt_menuidgroupproject"=>"","txt_menuid"=>"","txt_treemenuid"=>"","txt_isactivated"=>"",
"cbo_idgroupuser"=>"idgroupuser|groupuser","cbo_idgroupunit"=>"idgroupunit|groupunit","cbo_idlevel"=>"idlevel|userlevel");
$otherevent="var pass=ajaxuridhtmlx('".$this->enc("obj_user")."','obj=".$this->enc("user_new")."&task=".$this->enc("getdecrypt")."&pass='+spres[4]);";
$otherevent.="myForm.setItemValue('txt_pass',pass);";
$otherevent.="myForm.uncheckItem('chk_isactivated');";
$otherevent.="if(spres[8]=='1'){myForm.checkItem('chk_isactivated');}";
$this->FN_DHTMLXGRIDVIEWTOFORMNEW("dgnew","myForm","tbl_userlogin",0,$arrfields,"",$otherevent);
echo " }
function fn_grid_loaddata()
{
var keyword=myFormsearch.getItemValue('txtsearch');
url=fn_dhtmlxloadobject('".$this->enc("obj_user")."','obj=".$this->enc("user_new")."&task=".$this->enc("grdrecord")."&keyword='+keyword);
//alert(url);
dgnew.clearAndLoad(url);";
echo " }
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo "<table width=\"98%\" border=\"0\">
<tr>
<td>";
$url="location.reload();";
$myuri=array("<b>INFORMASI USER LOGIN</b>"=>"$url|id='a_new'");
echo $this->MULTIPLE_LINK($myuri);
echo " </td>
</tr>
<tr>
<td>
<div id=\"divnewcontent\" style=\"margin-left:0px;\">
<table width=\"98%\" border=\"0\">
<tr>
<td width=\"45%\" valign=\"top\">
<div id=\"divnewnew\" style=\"\"></div>
</td>
<td valign=\"top\">
<table width=\"98%\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td valign=\"top\">
<div id=\"divnewsearch\" style=\"width:560px;margin-top:-6px;\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"div_dgnew\" style=\"height:380px;width:580px;overflow:hidden\"></div>
</td>
</tr>
<tr>
<td>
<div id=\"div_dgnewpaging\" style=\"width:598px;margin-top:1px\"></div>
</td>
</tr>
<tr><td valign=\"top\"><div id=\"loadergrid\" style=\"z-index:100;position:absolute;margin-top:-220px;margin-left:287px;display:visibility;\">".$this->CREATE_IMAGE("loadergrid.gif")."</div></td></tr>
</table>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>";
echo $this->FN_CREATEFOOTER();
}
public function fn_getdecrypt()
{
$pass=$_REQUEST['pass'];
echo $this->dec($pass);
}
public function fn_grdrecord()
{
$keyword=$_REQUEST["keyword"];
header("Content-type: text/xml");
echo('<?xml version="1.0" encoding="utf-8"?>');
echo "<rows id='0'>";
$nikexception="and nik<>'82010'";
if($_SESSION['nik']=='82010'){$nikexception="";}
$qry="select id,nik,namaemployee,hp,maskpass,pass,menuidgroupproject,menuid,treemenuid,idgroupuser,
groupuser,idgroupunit,groupunit,isactivated,idlevel,userlevel
from ".DB_APORTIL.".tbl_userlogin
where (nik like '%$keyword%' and isdeleted=0) $nikexception
order by id asc limit ".TBL_PAGE_LIMIT;
$rs=$this->selectquery($qry);
if($rs)
{
$i=1;
while($row=$this->data_row_array($rs))
{
echo ("<row id='".$row["id"]."'>");
print("<cell><![CDATA[".$row["id"]."]]></cell>");
print("<cell><![CDATA[".$i."]]></cell>");
print("<cell><![CDATA[".$row["nik"]."]]></cell>");
print("<cell><![CDATA[".$row["namaemployee"]."]]></cell>");
print("<cell><![CDATA[".$row["hp"]."]]></cell>");
print("<cell><![CDATA[".$row["maskpass"]."]]></cell>");
print("<cell><![CDATA[".$row["menuidgroupproject"]."]]></cell>");
print("<cell><![CDATA[".$row["menuid"]."]]></cell>");
print("<cell><![CDATA[".$row["treemenuid"]."]]></cell>");
print("<cell><![CDATA[".$row["groupuser"]."]]></cell>");
print("<cell><![CDATA[".$row["groupunit"]."]]></cell>");
print("<cell><![CDATA[".$row["isactivated"]."]]></cell>");
print("<cell><![CDATA[".$row["userlevel"]."]]></cell>");
echo ("</row>");
$i+=1;
}
}
else
{
echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file<br>";
}
echo "</rows>";
}
public function fn_saverecord($isupdate=null)
{
if($isupdate){$id=$_REQUEST['txt_id'];}
$nik=$_REQUEST['txt_nik'];
$namaemployee=$_REQUEST['txt_namaemployee'];
$hp=$_REQUEST['txt_hp'];
$pass=$this->enc(trim($_REQUEST['txt_pass']));
$menuidgroupproject=$_REQUEST['txt_menuidgroupproject'];
$menuid=$_REQUEST['txt_menuid'];
$treemenuid=$_REQUEST['txt_treemenuid'];
$idgroupuser=$_REQUEST['cbo_idgroupuser'];
$groupuser=$this->fn_get_fieldvalue("groupuser","select groupuser from ".DB_APORTIL.".tbl_usergroup where id='".$idgroupuser."'");
$idgroupunit=$_REQUEST['cbo_idgroupunit'];
$groupunit=$this->fn_get_fieldvalue("groupunit","select groupunit from ".DB_APORTIL.".tbl_usergroupunit where id='".$idgroupunit."'");
$isactivated=$_REQUEST['txt_isactivated'];
$idlevel=$_REQUEST['cbo_idlevel'];
$userlevel=$this->fn_get_fieldvalue("userlevel","select userlevel from ".DB_APORTIL.".tbl_userlevel where id='$idlevel'");
$qry="insert into ".DB_APORTIL.".tbl_userlogin
set nik='$nik',namaemployee='$namaemployee',hp='$hp',pass='$pass',menuidgroupproject='$menuidgroupproject',menuid='$menuid',
treemenuid='$treemenuid',idgroupuser='$idgroupuser',groupuser='$groupuser',idgroupunit='$idgroupunit',groupunit='$groupunit',isactivated='$isactivated',
idlevel='$idlevel',userlevel='$userlevel',iby='".$_SESSION['nik']."',idt=now()";
if($isupdate)
{
$qry="update ".DB_APORTIL.".tbl_userlogin
set nik='$nik',namaemployee='$namaemployee',hp='$hp',pass='$pass',menuidgroupproject='$menuidgroupproject',menuid='$menuid',
treemenuid='$treemenuid',idgroupuser='$idgroupuser',groupuser='$groupuser',idgroupunit='$idgroupunit',groupunit='$groupunit',
isactivated='$isactivated',idlevel='$idlevel',uby='".$_SESSION['nik']."',udt=now()
where id='$id'";
}
if($this->executequery($qry)){echo "ok|";return true;}
}
public function fn_updrecord(){$this->fn_saverecord(true);}
public function fn_delrecord()
{
$id=$_REQUEST['txt_id'];
$remark=$_REQUEST['txtremark'];
$qry="update ".DB_APORTIL.".tbl_userlogin
set isdeleted=1,remark='$remark',dby='".$_SESSION['nik']."',ddt=now()
where id='$id'";
if($this->executequery($qry)){echo "ok|";return true;}
else
{
echo "failed|".$this->getErrorQuery();
}
}
}
?>

View File

@ -0,0 +1,184 @@
<?php
class USER_PASS extends USER
{
public function user_pass_javainit()
{
}
public function fn_pass_init()
{
if(isset($_REQUEST['task'])){$task=trim(strtolower($_REQUEST['task']));}
if(isset($_POST['task'])){$task=trim(strtolower($_POST['task']));}
switch($task)
{
case "updatepassword":
$this->fn_updatepassword();
break;
default:
$this->fn_default_pass();
break;
}
}
public function fn_default_pass()
{
echo $this->FN_CREATEHEADER();
echo "<style>
.besidepassword {margin-left:6px;margin-top:-5px;position:absolute;z-index:0}
</style>";
echo "<script>
var myForm;var myFormsearch;var dguser;
function initObject()
{
var formData = [
{type: \"settings\", position: \"label-left\", labelWidth: 160, inputWidth: 120},
{type: \"block\", width:430, list:[
{type: \"label\", label:\"<u>Perubahan Password</u>\"},
{type: \"password\", name:\"txtpassold\",label: \"Password Old\", inputWidth: 110,info:true, readonly:false,className:\"txtcenter\",maxLength:8,value:\"".$_SESSION['pass']."\"},
{type: \"checkbox\", name:\"chkshowpassold\",label: \"\",className:\"besidepassword\"},
{type: \"password\", name:\"txtpassnew\",label: \"New Password\", inputWidth: 110,info:true, tooltip:\"Masukkan Password Anda yang baru\",validate:\"NotEmpty\",className:\"txtcenter\",maxLength:10,value:\"\"},
{type: \"checkbox\", name:\"chkshowpassnew\",label: \"\",className:\"besidepassword\"},
{type: \"password\", name:\"txtpassreenter\",label: \"Reenter New Password\", inputWidth: 110,info:true, tooltip:\"Masukkan Kembali password anda yang baru\",validate:\"NotEmpty\",className:\"txtcenter\",maxLength:10,value:\"\"},
{type: \"checkbox\", name:\"chkshowpassreenter\",label: \"\",className:\"besidepassword\"},
{type: \"checkbox\", label: \"Ya, Yakin ingin disimpan?\", position:\"label-right\",offsetLeft:20, offsetTop: 10, checked: 1, labelWidth:330, list:[
{type: \"button\", name:\"btnsave\",value: \"Save\", offsetLeft: 50, offsetTop: 10, inputWidth: 50,className:\"button_update\"},
{type: \"newcolumn\"},
{type: \"button\", name:\"btncancel\",value: \"Cancel\", offsetLeft: 8, offsetTop: 10,className:\"button_cancel\"}
]}
]}
];
myForm = new dhtmlXForm(\"divformpass\", formData);
myForm.enableLiveValidation(true);
myForm.setFocusOnFirstActive(true);
// === Event MyForm
myForm.attachEvent(\"onButtonClick\",function(id){
switch(id)
{
case 'btnsave':
if(myForm.validate())
{";
$params="'obj=".$this->enc("user_pass")."&task=updatepassword'";
echo "url=fn_dhtmlxsenddata('".$this->enc("obj_user")."',$params);
myForm.send(url,\"get\",function(loader, response){
var sp=trim(response).split('|');
//alert(response);
if(sp[0]=='ok')
{
fn_dhtmlxmessage('','Password sudah berhasil diupdate. TERIMA KASIH');
myform_clear();
fn_grid_loaddata();
}
else if(sp[0]=='failed')
{fn_dhtmlxmessage('error','Error Found : '+sp[1]);}
else
{fn_dhtmlxmessage('error','Error Found : '+response);}
});
}
break;
case 'btncancel':
myform_clear();
break;
}
});
myPop = new dhtmlXPopup({mode:\"right\"});
myForm.attachEvent(\"onChange\",function(id,value,state){
if(id=='chkshowpassold')
{
var passwordtext=myForm.getItemValue(\"txtpassold\");
var x = getAbsoluteLeft(myForm.getInput(\"txtpassold\"));
var y = getAbsoluteTop(myForm.getInput(\"txtpassold\"));
var w = myForm.getInput(\"txtpassold\").offsetWidth;
var h = myForm.getInput(\"txtpassold\").offsetHeight;
myPop.attachHTML(\"Your Password :\"+passwordtext);
if(state){myPop.show(x,y,w,h);}
else{myPop.hide();}
}
if(id=='chkshowpassnew')
{
var passwordtext=myForm.getItemValue(\"txtpassnew\");
var x = getAbsoluteLeft(myForm.getInput(\"txtpassnew\"));
var y = getAbsoluteTop(myForm.getInput(\"txtpassnew\"));
var w = myForm.getInput(\"txtpassnew\").offsetWidth;
var h = myForm.getInput(\"txtpassold\").offsetHeight;
myPop.attachHTML(\"Your Password :\"+passwordtext);
if(state){myPop.show(x,y,w,h);}
else{myPop.hide();}
}
if(id=='chkshowpassreenter')
{
var passwordtext=myForm.getItemValue(\"txtpassreenter\");
var x = getAbsoluteLeft(myForm.getInput(\"txtpassreenter\"));
var y = getAbsoluteTop(myForm.getInput(\"txtpassreenter\"));
var w = myForm.getInput(\"txtpassreenter\").offsetWidth;
var h = myForm.getInput(\"txtpassold\").offsetHeight;
myPop.attachHTML(\"Your Password :\"+passwordtext);
if(state){myPop.show(x,y,w,h);}
else{myPop.hide();}
}
});
//myForm.attachEvent(\"onValidateError\",function(id,value,result){
//fn_dhtmlxmessage('error','Error Found : Harap Isikan Kolom - kolom yang berlabel merah.TERIMA KASIH');
//myForm.setItemFocus(id);
//result=false;
//});
}
function myform_clear()
{
myForm.setItemValue(\"txtpassold\",myForm.getItemValue(\"txtpassnew\"));
myForm.setItemValue(\"txtpassnew\",'');
myForm.setItemValue(\"txtpassreenter\",'');
myForm.setItemFocus(\"txtpassnew\");
}
</script>";
echo $this->FN_CLOSEHEADER();
echo $this->FN_CREATEBODY("e8f1ff");
echo " <table width=\"98%\" border=\"0\">
<tr>
<td width=\"40%\" valign=\"top\">
<div id=\"divformpass\"></div>
</td>
</tr>
</table>";
echo $this->FN_CREATEFOOTER();
}
public function fn_updatepassword()
{
$oldpass=$_REQUEST['txtpassold'];
$passnew=$_REQUEST['txtpassnew'];
// echo "failed|$oldpass";return false;
//return false;
$qry="update ".DB_APORTIL.".tbl_employee_accessibility
set pass='".$this->enc($passnew)."',maskpass='1234',uby='".$_SESSION['nik']."',udt=now()
where nik='".$_SESSION['nik']."'";
if(!$this->fn_row_isexists("select nik from ".DB_APORTIL.".tbl_employee_accessibility where nik='".$_SESSION['nik']."' and pass='".$this->enc($oldpass)."' and isdeleted=0"))
{
echo "failed|Password Lama anda tidak Match.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();}
}
}
?>