// fungsi cek isian form
function cek(form,nfield,desfield){
        var i=0;
        str=nfield.value;
        while ((i<str.length)&&(str.charAt(i)==' ')){
                i++;
        }
        str=str.substring(i,str.length);
        if ((nfield.value == '')||(str.length==0)){
                alert (desfield + ' tidak boleh kosong!');
                nfield.value='';
                nfield.focus();
                return (false);}
        else{
                return (true);}
}

// fungsi untuk memeriksa angka positif
function cekint(form,nfield,desfield){
        if ((isNaN(nfield.value))||(nfield.value<0)){
                alert ( desfield + " harus angka!");
                nfield.value="";
                nfield.focus();
                return (false);}
        else{
                return (true);}
}

// fungsi cek panjang karakter masukan
function ceklen(nfield,ln,desfield){
        if (nfield.value.length != ln){
                alert ('Panjang ' + desfield +' harus ' + ln + ' digit!');
                nfield.focus();
                return (false);}
        else{
                return (true);}
}

// fungsi cek jumlah hari
function jmlhari(bln,thn){
        if (bln==4 || bln==6 || bln==9 || bln==11) return 30;
         else if ((bln==2) && kabisat(thn)) return 29;
         else if (bln==2) return 28;
        else return 31;
}

// fungsi cek tahun kabisat
function kabisat(thn){
        if (((thn % 4 == 0) && thn % 100 != 0) || thn % 400 == 0)
                  return true;
         else
                  return false;
}

// fungsi cek tanggal
function cektgl(tgl,bln,thn,desfield){
           jmlhr=jmlhari(bln.value,thn.value);
        if (tgl.value<=jmlhr){
                return true;}
        else{
                alert (desfield + " tidak valid!");
            tgl.focus();
                return false;}
}

// fungsi popup windows
function NewWindow(mypage, myname, w, h, scroll) {
        var winl = (screen.width - w) / 2;
        var wint = (screen.height - h) / 2;
        winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable'
        win = window.open(mypage, myname, winprops)
        if (parseInt(navigator.appVersion) >= 4) {
                win.window.focus();
        }
}

// fungsi check karakter
function cekchar(form,nfield,desfield){
        var charpos = nfield.value.search("[\']");
        if(nfield.value.length > 0 &&  charpos >= 0){
                alert (desfield + " tidak boleh mengandung karakter petik satu (')!");
                nfield.value="";
                nfield.focus();
                return (false);}
        else{
                return (true);}
}

// fungsi check mail
function cekmail(form,nfield,desfield){
        var splitted = nfield.value.match("^(.+)@(.+)$");
  if(splitted == null){
                alert (desfield + " tidak valid!");
                nfield.value="";
                nfield.focus();
                return false;
        }

  if(splitted[1] != null ){
          var regexp_user=/^\"?[\w-_\.]*\"?$/;
                if(splitted[1].match(regexp_user) == null) {
                        alert (desfield + " tidak valid!");
                        nfield.value="";
                        nfield.focus();
                        return false;
                }
  }

  if(splitted[2] != null){
    var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
                if(splitted[2].match(regexp_domain) == null){
                        var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
                   if(splitted[2].match(regexp_ip) == null){
                                alert (desfield + " tidak valid!");
                                nfield.value="";
                                nfield.focus();
                                return false;
                        }
          }
          return true;
  }
}
//fungsi untuk focused
function focusku(obj)
{
  obj.focus();
}

//fungsi untuk membandingkan periode tanggal
function validperiode(tgl1,mon1,yy1,tgl2,mon2,yy2,pesan){
  if ((yy1.value) > (yy2.value))
  {
     alert(pesan);
     yy1.focus();
     return false;
  } else
  if ((yy1.value) == (yy2.value))
    if (mon1.value > mon2.value)
    {
         alert(pesan);
           mon1.focus();
          return false;
    }  else
    if ((mon1.value) == (mon2.value))
    if (tgl1.value > tgl2.value)
    {
         alert(pesan);
           tgl1.focus();
          return false;
    }  else

   return true;
}

//fungsi untuk membandingkan periode bulan
function validperiodebulan(mon1,yy1,mon2,yy2,pesan){
  if ((yy1.value) > (yy2.value))
  {
     alert(pesan);
     yy1.focus();
     return false;
  } else
  if ((yy1.value) == (yy2.value))
    if (mon1.value > mon2.value)
    {
         alert(pesan);
           mon1.focus();
          return false;
    }  else
   return true;
}

function showhide_obj(theTable)
{
     if (document.getElementById(theTable).style.display == 'none')
     {
          document.getElementById(theTable).style.display = 'block';
     }  else
     {
         document.getElementById(theTable).style.display = 'none';
     }
}
