function getHTTPObject() {
  var xmlhttp;

  if(window.XMLHttpRequest){
      xmlhttp = new XMLHttpRequest();
  }else if (window.ActiveXObject){
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      if (!xmlhttp){
          xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
  }else alert("Browser tidak mendukung ajax!");
  return xmlhttp;
}

var http = getHTTPObject(); // We create the HTTP Object
var image2="<div style='text-align:center'><img src='images/loading2.gif' border=0></div>";

function emptyValidation(fieldList) {
    var field=new Array();
    var field2=new Array();
    field=fieldList.split("~");
    var counter=0;
    for(i=0;i<field.length;i++) {
        if(document.getElementById(field[i]).value=="") {
            document.getElementById(field[i]).style.backgroundColor="#FF0000";
            field2[i]=field[i];
            counter++;
        } else {
            document.getElementById(field[i]).style.backgroundColor="#FFFFFF";
        }
    }
    
    for(i=0;i<field.length;i++) {
        if(document.getElementById(field[i]).value=="-" || field2[i]==field[i]) {
            document.getElementById(field[i]).style.backgroundColor="#FF0000";
            counter++;
        } else {
            document.getElementById(field[i]).style.backgroundColor="#FFFFFF";
        }
    }

    if(counter>0) {
        alert("Field dengan warna merah tidak boleh kosong!");
        return false;
    }  else {
        return true;
    }
}

function checkAll(string,chkid) {
    var field=new Array();
    field=chkid.split("~");
    for(i=0;i<field.length;i++) {
        if(string=="true") document.getElementById(field[i]).checked=true;
        else document.getElementById(field[i]).checked=false;
    }
}

function MultipleActions(theLink,chkid,div,divout) {
    var field=new Array();
    var nilai=new Array();
    var jml=0;
    var lnk="";
    field=chkid.split("~");
    for(i=0;i<field.length;i++) {
        if(document.getElementById(field[i]).checked==true){
            jml=jml+1;
            nilai[jml]=document.getElementById(field[i]).value;
            lnk=lnk+'&'+field[i]+'='+nilai[jml];
        }
    }
    if(jml==0) alert('Tidak ada data yang dicheklist!');
    else requestURL2(theLink,lnk+'&jml='+field.length,div,divout);
}

function requestURL(theLink,search,div){
    var url=theLink+search;
    var ajaxDisplay = document.getElementById(div);
    ajaxDisplay.style.visibility='visible';
    http.open("GET",url,true);
    http.onreadystatechange=function(){
        //document.getElementById(div).innerHTML = "";
        if(http.readyState==4){
            if(http.responseText) ajaxDisplay.innerHTML=http.responseText;
        }
    }
    http.send(null);
}

function requestURL2(theLink,search,div,out){
    var url=theLink+search;
    var divout = "<div>"+out+"</div>";
    var ajaxDisplay = document.getElementById(div);
    ajaxDisplay.style.visibility='visible';
    http.open("GET",url,true);
    http.onreadystatechange=function(){
        //document.getElementById(div).innerHTML = divout;
        if(http.readyState==4){
            if(http.responseText) ajaxDisplay.innerHTML=http.responseText;
        }
    }
    http.send(null);
}

function selectChange(theLink,search,div){
    var url=theLink+search;
    http.open("GET",url,true);
    http.onreadystatechange=function(){
        document.getElementById(div).innerHTML = "";
        if(http.readyState==4){
            var ajaxDisplay = document.getElementById(div);
            if(http.responseText) ajaxDisplay.innerHTML=http.responseText;
        }
    }
    http.send(null);
}

function show(id) {
    var div=document.getElementById(id);
    div.style.visibility='visible';
}

function hide(id) {
    var div = document.getElementById(id);
    div.style.visibility='hidden';
    div.style.innerHTML='';
}

function log(){
    var url='login';
    var ajaxDisplay = document.getElementById('maindiv');
    ajaxDisplay.style.visibility='visible';
    http.open("GET",url,true);
    http.onreadystatechange=function(){
        document.getElementById('maindiv').style.innerHTML = "<div style='text-align:center'><img src='images/loading6.gif' border=0> Proses...</div>";
        if(http.readyState==4){
            if(http.responseText) ajaxDisplay.innerHTML=http.responseText;
        }
    }
    http.send(null);
}

function iData(theLink,field,div) {
    var nama=new Array();
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");
    var jfld=document.getElementsByName(fld[0]).length;

    var jml=0;
    var lnk="";
    var fltr="";
    for(a=0;a<fld.length;a++){
        for(i=0;i<jfld;i++) {
            if(document.getElementById(fld[a]+i).value!=""){
                jml=jml+1;
                nilai[jml]=document.getElementById(fld[a]+i).value;
                w[jml]=nilai[jml].replace(/&/g,"%26");
                lnk=lnk+'&'+fld[a]+i+'='+w[jml];
            }
            fltr=fltr+fld[a]+i;
            if(fld[fld.length-1]+(jfld-1)!=fld[a]+i) fltr=fltr+"~";
        }
    }

    var checkValidation=emptyValidation(fltr);
    //alert(fltr);
    if(checkValidation==true) {
        requestURL(theLink,lnk+"&field="+field+"&jml="+jfld,div);
    }
}

function iData2(theLink,field,fieldr,div) {
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");
    var fldr=fieldr.split("~");
    var jfldr=document.getElementsByName(fldr[0]).length;

    var jml=0;
    var lnk="";
    var fltr="";

    for(a=0;a<fld.length;a++){
        if(document.getElementById(fld[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fld[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");
            lnk=lnk+'&'+fld[a]+'='+w[jml];
        }
    }

    for(a=0;a<fldr.length;a++){
        for(i=0;i<jfldr;i++) {
            if(document.getElementById(fldr[a]+i).value!=""){
                jml=jml+1;
                nilai[jml]=document.getElementById(fldr[a]+i).value;
                w[jml]=nilai[jml].replace(/&/g,"%26");
                lnk=lnk+'&'+fldr[a]+i+'='+w[jml];
            }
            fltr=fltr+fldr[a]+i;
            if(fldr[fldr.length-1]+(jfldr-1)!=fldr[a]+i) fltr=fltr+"~";
        }
    }
    var checkValidation=emptyValidation(field+"~"+fltr);
    if(checkValidation==true) {
        //alert(lnk);
        requestURL(theLink,lnk+"&field="+fieldr+"&jml="+jfldr,div);
    }
}

function iData3(theLink,field,div) {
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");

    var jml=0;
    var lnk="";


    for(a=0;a<fld.length;a++){
        if(document.getElementById(fld[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fld[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");

            if(a==0) lnk=lnk+'?';
            else lnk=lnk+'&';

            lnk=lnk+fld[a]+'='+w[jml];
        }
    }

    var checkValidation=emptyValidation(field);
    if(checkValidation==true) {
        //alert(lnk);
        requestURL(theLink,lnk+"&jml="+jml,div);
    }
}

function iData4(theLink,field,div,dur) {
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");

    var jml=0;
    var lnk="";


    for(a=0;a<fld.length;a++){
        if(document.getElementById(fld[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fld[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");
            if(a==0) lnk=lnk+'?';
            else lnk=lnk+'&';

            lnk=lnk+fld[a]+'='+w[jml];
        }
    }

    if(hit>dur) hit=0;
    hit=hit+1;

    var checkValidation=emptyValidation(field);
    if(hit>dur && checkValidation==true) {
        requestURL(theLink,lnk+"&jml="+jml,div);
    }

    t=setTimeout("iData4('"+theLink+"','"+field+"','"+div+"',"+dur+")",1000);
}

function iData5(theLink,field,div,dur) {
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");

    var jml=0;
    var lnk="";


    for(a=0;a<fld.length;a++){
        if(document.getElementById(fld[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fld[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");

            if(a==0) lnk=lnk+'?';
            else lnk=lnk+'&';

            lnk=lnk+fld[a]+'='+w[jml];
        }
    }

    if(hit2>dur) hit2=0;
    hit2=hit2+1;

    var checkValidation=emptyValidation(field);
    if(hit2>dur && checkValidation==true) {
        location.href=theLink+lnk;
    }

    t=setTimeout("iData5('"+theLink+"','"+field+"','"+div+"',"+dur+")",1000);
}

function iData6(theLink,field,div,s1,s2) {
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");

    var jml=0;
    var lnk="";


    for(a=0;a<fld.length;a++){
        if(document.getElementById(fld[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fld[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");
            if(a==0 && s1!=0) lnk=lnk+'?';
            else lnk=lnk+'&';

            lnk=lnk+fld[a]+'='+w[jml];
        }
    }

    var checkValidation=emptyValidation(field);
    if(checkValidation==true) {
        if(s2!=0) requestURL(theLink,lnk+"&jml="+jml,div);
        else location.href=theLink+lnk;
    }
}

function iData7(theLink,field,fieldr,div) {
    var nilai=new Array();
    var w=new Array();
    var fld=field.split("~");
    var fldr=fieldr.split("~");

    var jml=0;
    var lnk="";
    var fltr="";

    for(a=0;a<fld.length;a++){
        if(document.getElementById(fld[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fld[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");
            lnk=lnk+'&'+fld[a]+'='+w[jml];
        }
    }

    for(a=0;a<fldr.length;a++){
        if(document.getElementById(fldr[a]).value!=""){
            jml=jml+1;
            nilai[jml]=document.getElementById(fldr[a]).value;
            w[jml]=nilai[jml].replace(/&/g,"%26");
            lnk=lnk+'&'+fldr[a]+'='+w[jml];
        }
    }
    var checkValidation=emptyValidation(field);
    if(checkValidation==true) {
        //alert(lnk);
        requestURL(theLink,lnk,div);
    }
}

function data_user(theLink) {
    var id=document.getElementById("id").value;
    var username=document.getElementById("username").value;
    var akses=document.getElementById("akses").value;
    var lnk="";
    var xa=document.getElementById("xa"); if(xa.checked){ var xa=xa.value; var lnk=lnk+'&xa='+xa; }
    var xb=document.getElementById("xb"); if(xb.checked){ var xb=xb.value; var lnk=lnk+'&xb='+xb; }
    var xc=document.getElementById("xc"); if(xc.checked){ var xc=xc.value; var lnk=lnk+'&xc='+xc; }
    var xd=document.getElementById("xd"); if(xd.checked){ var xd=xd.value; var lnk=lnk+'&xd='+xd; }
    var xe=document.getElementById("xe"); if(xe.checked){ var xe=xe.value; var lnk=lnk+'&xe='+xe; }
    var xf=document.getElementById("xf"); if(xf.checked){ var xf=xf.value; var lnk=lnk+'&xf='+xf; }
    var xg=document.getElementById("xg"); if(xg.checked){ var xg=xg.value; var lnk=lnk+'&xg='+xg; }
    var xh=document.getElementById("xh"); if(xh.checked){ var xh=xh.value; var lnk=lnk+'&xh='+xh; }
    var xi=document.getElementById("xi"); if(xi.checked){ var xi=xi.value; var lnk=lnk+'&xi='+xi; }
    var xj=document.getElementById("xj"); if(xj.checked){ var xj=xj.value; var lnk=lnk+'&xj='+xj; }

    var checkValidation=emptyValidation('username~akses');
    if(checkValidation==true) {
        requestURL2(theLink,'&id='+id+'&username='+username+'&akses='+akses+lnk,'content',image2);
    }
}

function pass(theLink,div,divout) {
    var pass1=document.getElementById("pass1").value;
    var pass2=document.getElementById("pass2").value;
    var pass3=document.getElementById("pass3").value;
    var checkValidation=emptyValidation('pass1~pass2~pass3');
    if(checkValidation==true) {
        if(pass2!=pass3) alert('Password baru tidak sama!');
        else requestURL2(theLink,'&pass1='+pass1+'&pass2='+pass2+'&pass3='+pass3,div,divout);
    }
}

function execute_search(theLink) {
    var search=document.getElementById("search").value;
    var filter=document.getElementById("filter").value;
    var checkValidation=emptyValidation('search~filter');
    if(checkValidation==true) {
        requestURL(theLink+'&search='+search+'&filter='+filter,'','rightdiv');
    }
}

function confirmLink(theLink){
    var is_confirmed = confirm('Are you sure to delete this record?\n\nThis will permanently delete the Record!');
    if (is_confirmed) {
        theLink.href += '';
    }

    return is_confirmed;
}

var popUpWin=0;
function loadpopUp(txtid,filter,url,width,height){
    if(popUpWin){
        if(!popUpWin.closed) popUpWin.close();
    }
    var uri=document.getElementById(filter).value;
    var submit=document.getElementById(txtid).disabled=true;
    var href = url+uri;
    if(uri!="" && uri!="-") popUpWin = open(href, 'popUpWin', 'toolbar=no,menubar=no,status=no,scrollbars=yes,resizable=yes,width='+width+',height='+height);
    else alert('Filter belum dipilih!');
}

function loadpopUp2(txtid,url,width,height){
    if(popUpWin){
        if(!popUpWin.closed) popUpWin.close();
    }
    var href = url;
    popUpWin = open(href, 'popUpWin', 'toolbar=no,menubar=no,status=no,scrollbars=yes,resizable=yes,width='+width+',height='+height);

}

