function colfocus(s)
{
  var td = s;
  td.className = "menuHover";
}

function colnfocus(s)
{
  var td = s;
  td.className = "menuNormal";
}

function cekEmail(emailStr) {
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
var matchArray=emailStr.match(emailPat)

if (matchArray==null) {
    //alert("Email Address not valid.")
	return false
}

var user=matchArray[1]
var domain=matchArray[2]
// See if "user" is valid 
if (user.match(userPat)==null) {
    //alert("The username doesn't seem to be valid.")
    return false
}

var IPArray=domain.match(ipDomainPat)
if (IPArray!=null) {
    // this is an IP address
	  for (var i=1;i<=4;i++) {
	    if (IPArray[i]>255) {
	    //alert("Destination IP address is invalid!")
		return false
	    }
    }
    return true
}

// Domain is symbolic name
var domainArray=domain.match(domainPat)
if (domainArray==null) {
	alert("The domain name doesn't seem to be valid.");
    return false
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length
if (domArr[domArr.length-1].length<2 || 
    domArr[domArr.length-1].length>3) {
   // the address must end in a two letter or three letter word.
   alert("The address must end in a three-letter domain, or two letter country.")
   return false
}

// Make sure there's a host name preceding the domain.
if (len<2) {
   var errStr="This address is missing a hostname!"
   alert(errStr)
   return false
   
}

// If we've gotten this far, everything's valid!
return true;
}

function cekGroup() {
	if ( cekEmail(document.fgroup.user.value)==false ) {
		alert("Alamat email tidak valid !");
		document.fgroup.user.value="";
		document.fgroup.user.focus();
		return false;
	}
}

function cekSaran() {
	var cek_mail1 = document.fsaran.txtemail.value.split("@");
	if (parseInt(cek_mail1.length)==2 && cek_mail1[1]!="") {
		var cek_mail2 = cek_mail1[1].split(".");
		if (parseInt(cek_mail2.length)>=2) {
			var m2 = parseInt(cek_mail2.length)-1;
		} else {
			var cek_mail2 = new Array();
			cek_mail2[1] = "";
			var m2 = 1;
		}
	} else {
		var cek_mail2 = new Array();
		cek_mail2[0] = "";
		var m2 = 0;
	}
	
	if ( trim(document.fsaran.txtnama.value, " ")=="" || trim(document.fsaran.txtnama.value.toLowerCase(), " ")=="nama anda" ) {
		alert("Silakan isikan nama anda dahulu !");
		document.fsaran.txtnama.focus();
		return false;
	} else if ( trim(document.fsaran.txtemail.value, " ")=="" || trim(document.fsaran.txtemail.value.toLowerCase(), " ")=="email anda" ) {
		alert("Silakan isikan alamat email anda dahulu !");
		document.fsaran.txtemail.focus();
		return false;
	} else if ( trim(document.fsaran.txtsaran.value, " ")=="" || trim(document.fsaran.txtsaran.value.toLowerCase(), " ")=="pesan" ) {
		alert("Silakan isikan pesan anda dahulu !");
		document.fsaran.txtsaran.focus();
		return false;
	} else if ( trim(document.fsaran.txtsaran.value, " ")=="" || cek_mail1[1]=="" || cek_mail2[m2]=="" ) {
		alert("Alamat email tidak valid !");
		document.fsaran.txtemail.value="";
		document.fsaran.txtemail.focus();
		return false;
	}
}

function cekLive() {
	/*var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;*/
	
	if ( (trim(document.flive.txtnama.value, " ")=="") || (document.flive.txtnama.value=="Nama Anda") ) {
		alert("Silakan isikan nama anda dahulu !");
		document.flive.txtnama.focus();
		return false;
	} else if ( (trim(document.flive.txtemail.value, " ")=="") || (document.flive.txtemail.value=="Email Anda") ) {
		alert("Silakan isikan alamat email anda dahulu !");
		document.flive.txtemail.focus();
		return false;
	} else if ( (trim(document.flive.txtsaran.value, " ")=="") || (document.flive.txtsaran.value=="Pesan") ) {
		alert("Silakan isikan pesan anda dahulu !");
		document.flive.txtsaran.focus();
		return false;
	} else if ( cekEmail(document.flive.txtemail.value)==false ) {
		alert("Alamat email tidak valid !");
		document.flive.txtemail.value="";
		document.flive.txtemail.focus();
		return false;
	}
}

function wintarip(url){
        var xMax = screen.availWidth;
        var yMax = screen.availHeight;
        var xOffset = (xMax - 700)/2, yOffset = (yMax - 405)/2;
        tarip = window.open(url,'tarip','width=700,height=405,screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+'');
        tarip.focus();
        return;
}

function winvagen(url){
        var xMax = screen.availWidth;
        var yMax = screen.availHeight;
        var xOffset = (xMax - 400)/2, yOffset = (yMax - 203)/2;
        vagen = window.open(url,'vagen','width=400,height=203,screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+'');
        vagen.focus();
        return;
}

function winjadwal(url){
        var xMax = screen.availWidth;
        var yMax = screen.availHeight;
        var xOffset = (xMax - 800)/2, yOffset = (yMax - 400)/2;
        jadwal = window.open(url,'jadwal','width=800,height=400,screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+'');
        jadwal.focus();
        return;
}

function winpopup(url){
        var xMax = screen.availWidth;
        var yMax = screen.availHeight;
        var xOffset = (xMax - 800)/2, yOffset = (yMax - yMax)/2;
        popup = window.open(url,'popup','width=810,height='+yMax+',scrollbars=yes,screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset);
        popup.focus();
        return;
}

/*fungsi form login*/
function cflogin() {
	if (document.flogin.txtnama.value=="") {
		alert("Data nama tidak boleh kosong !");
		document.flogin.txtnama.focus();
		return false;
	} else if (document.flogin.txtpass.value=="") {
		alert("Data password  tidak boleh kosong !");
		document.flogin.txtpass.focus();
		return false;
	} else {
		return true;
	}
}

/*fungsi mod_rpwd*/
function cfpass() {
	if (document.fsimpan.txtpwdl.value=="") {
		alert("Data password lama tidak boleh kosong !");
		document.fsimpan.txtpwdl.focus();
		return false;
	} else if (document.fsimpan.txtpwdb.value=="") {
		alert("Data password baru tidak boleh kosong !");
		document.fsimpan.txtpwdb.focus();
		return false;
	} else if (document.fsimpan.txtrepwdb.value=="") {
		alert("Data konfimasi password baru tidak boleh kosong !");
		document.fsimpan.txtrepwdb.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

/*fungsi mod_lokasi*/
function cariLokasi(){
    if ( (document.fcari.txtclokasid.value=="") &&
	     (document.fcari.txtcnama.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtclokasid.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function imporLokasi(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

function inputLokasi(){
    if (document.fsimpan.txtlokasid.value=="") {
		alert("Data kode lokasi tidak boleh kosong !");
		document.fsimpan.txtlokasid.focus();
		return false;
	} else if (document.fsimpan.txtnama.value=="") {
		alert("Data nama lokasi tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

/*fungsi mod_berita*/
function cariBerita(){
    if ( (document.fcari.txtcberitaid.value=="") &&
	     (document.fcari.txtcnama.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtcberitaid.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function inputBerita(){
    if (document.fsimpan.txtnama.value=="") {
		alert("Data judul berita tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

/*fungsi mod_cabang*/
function inputCabang(){
    if (document.fsimpan.txtcabangid.value=="") {
		alert("Data cabangid tidak boleh kosong !");
		document.fsimpan.txtcabangid.focus();
		return false;
	} else if (document.fsimpan.txtnama.value=="") {
		alert("Data nama tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else if (document.fsimpan.txtalamat.value=="") {
		alert("Data alamat dari tidak boleh kosong !");
		document.fsimpan.txtalamat.focus();
		return false;
	} else if (document.fsimpan.txttelepon.value=="") {
		alert("Data telepon tidak boleh kosong !");
		document.fsimpan.txttelepon.focus();
		return false;
	} else if (document.fsimpan.txtfax.value=="") {
		alert("Data fax tidak boleh kosong !");
		document.fsimpan.txtfax.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function cariCabang(){
    if ( (document.fcari.txtccabangid.value=="") && 
	     (document.fcari.txtcnama.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtccabangid.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function imporCabang(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

/*fungsi mod_kelas*/
function inputKelas(){
    if (document.fsimpan.txtkelasid.value=="") {
		alert("Data kode kelas tidak boleh kosong !");
		document.fsimpan.txtkelasid.focus();
		return false;
	} else if (document.fsimpan.txtnama.value=="") {
		alert("Data nama kelas tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function cariKelas(){
    if ( (document.fcari.txtckelasid.value=="") &&
	     (document.fcari.txtcnama.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtckelasid.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function imporKelas(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

/*fungsi mod_golongan*/
function inputGol(){
    if (document.fsimpan.txtgolonganid.value=="") {
		alert("Data kode golongan tidak boleh kosong !");
		document.fsimpan.txtgolonganid.focus();
		return false;
	} else if (document.fsimpan.txtnama.value=="") {
		alert("Data nama golongan tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else if (document.fsimpan.txtmaxusia.value=="") {
		alert("Data maksimum usia tidak boleh kosong !");
		document.fsimpan.txtmaxusia.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function cariGol(){
    if ( (document.fcari.txtcgolonganid.value=="") &&
	     (document.fcari.txtcnama.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtcgolonganid.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function imporGol(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

/*fungsi mod_agen*/
function inputAgen(){
    if (document.fsimpan.txtagenid.value=="") {
		alert("Data agenid tidak boleh kosong !");
		document.fsimpan.txtagenid.focus();
		return false;
	} else if (document.fsimpan.txtcabangid.value=="") {
		alert("Data cabang tidak boleh kosong !");
		document.fsimpan.txtcabangid.focus();
		return false;
	} else if (document.fsimpan.txtnama.value=="") {
		alert("Data nama tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else if (document.fsimpan.txtalamat.value=="") {
		alert("Data alamat dari tidak boleh kosong !");
		document.fsimpan.txtalamat.focus();
		return false;
	} else if (document.fsimpan.txttelepon.value=="") {
		alert("Data telepon tidak boleh kosong !");
		document.fsimpan.txttelepon.focus();
		return false;
	} else if (document.fsimpan.txtfax.value=="") {
		alert("Data fax tidak boleh kosong !");
		document.fsimpan.txtfax.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function imporAgen(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

/*fungsi mod_jadwal*/
function inputJadwal(){
    if (document.fsimpan.txtjadwalid.value=="") {
		alert("Data jadwalid tidak boleh kosong !");
		document.fsimpan.txtjadwalid.focus();
		return false;
	} else if (document.fsimpan.txtkapal.value=="") {
		alert("Data kapal tidak boleh kosong !");
		document.fsimpan.txtkapal.focus();
		return false;
	} else if (document.fsimpan.txtdari.value=="") {
		alert("Data lokasi dari tidak boleh kosong !");
		document.fsimpan.txtdari.focus();
		return false;
	} else if (document.fsimpan.txttujuan.value=="") {
		alert("Data lokasi tujuan tidak boleh kosong !");
		document.fsimpan.txttujuan.focus();
		return false;
	} else if (document.fsimpan.txttglsampai.value=="") {
		alert("Data tanggal sampai tidak boleh kosong !");
		document.fsimpan.txttglsampai.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function cariJadwal() {
    if ( (document.fcari.txtcdari.value=="") &&
		 (document.fcari.txtctujuan.value=="")) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtcdari.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function imporJadwal(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

/*fungsi mod_tarif*/
function inputTarip(){
    if (document.fsimpan.txtkelas.value=="") {
		alert("Data kelas tidak boleh kosong !");
		document.fsimpan.txtkelas.focus();
		return false;
	} else if (document.fsimpan.txtdari.value=="") {
		alert("Data lokasi dari tidak boleh kosong !");
		document.fsimpan.txtdari.focus();
		return false;
	} else if (document.fsimpan.txttujuan.value=="") {
		alert("Data lokasi tujuan tidak boleh kosong !");
		document.fsimpan.txttujuan.focus();
		return false;
	} else if (document.fsimpan.txtgolongan.value=="") {
		alert("Data golongan tidak boleh kosong !");
		document.fsimpan.txtgolongan.focus();
		return false;
	} else if (document.fsimpan.txtnominal.value=="") {
		alert("Data nominal tidak boleh kosong !");
		document.fsimpan.txtnominal.focus();
		return false;
	} else if (document.fsimpan.txttgl.value=="") {
		alert("Data tanggal tidak boleh kosong !");
		document.fsimpan.txttgl.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function cariTarip(){
    if ( (document.fcari.txtcdari.value=="") &&
		 (document.fcari.txtctujuan.value=="") && 
		 (document.fcari.txtctgl.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtcdari.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

function imporTarip(){
    if (document.fuplot.txtberkas.value=="") {
		alert("Data file tidak boleh kosong !");
		document.fuplot.txtberkas.focus();
		return false;
	} else {
		document.fuplot.submit();
		return true;
	}
}

/*fungsi mod_user*/
function inputUser(){
    if (document.fsimpan.txtuserid.value=="") {
		alert("Data kode user tidak boleh kosong !");
		document.fsimpan.txtuserid.focus();
		return false;
	} else if (document.fsimpan.txtnama.value=="") {
		alert("Data nama user tidak boleh kosong !");
		document.fsimpan.txtnama.focus();
		return false;
	} else if (document.fsimpan.txtlevel.value=="") {
		alert("Data level tidak boleh kosong !");
		document.fsimpan.txtlevel.focus();
		return false;
	} else if (document.fsimpan.txtaktif.value=="") {
		alert("Data user status tidak boleh kosong !");
		document.fsimpan.txtaktif.focus();
		return false;
	} else {
		document.fsimpan.submit();
		return true;
	}
}

function cariUser(){
    if ( (document.fcari.txtcuserid.value=="") && 
	     (document.fcari.txtcnama.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtcuserid.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

/*fungsi mod_saran*/
function winsaran(url){
        var xMax = screen.availWidth;
        var yMax = screen.availHeight;
        var xOffset = (xMax - 400)/2, yOffset = (yMax - 250)/2;
        info = window.open(url,'info','width=400,height=235,screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+'');
        info.focus();
        return;
}

function cariSaran(){
    if ( (document.fcari.txtcawal.value=="") && 
	     (document.fcari.txtcakhir.value=="") ) {
		alert("Data pencarian tidak boleh kosong !");
		document.fcari.txtcawal.focus();
		return false;
	} else {
		document.fcari.submit();
		return true;
	}
}

/* function trim */
function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function Clear(thefield){
	if(thefield.defaultValue==thefield.value) {
		thefield.value="";
	}
}

//disamble klik kanan
var message="";
///////////////////////////////////
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MOUSEDOWN);document. onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontext; menu=clickIE;}

document.oncontextmenu=new Function("return false")