function lib_bwcheck(){ //Browsercheck (needed)
        this.ver=navigator.appVersion; this.agent=navigator.userAgent
        this.dom=document.getElementById?1:0
        this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
        this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;
        this.ie4=(document.all && !this.dom)?1:0;
        this.ie=this.ie4||this.ie5||this.ie6
        this.mac=this.agent.indexOf("Mac")>-1
        this.opera5=this.agent.indexOf("Opera 5")>-1
        this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
        this.ns4=(document.layers && !this.dom)?1:0;
        this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5 || this.dom)
        return this
}
function check_by_ida(me, seccion) {
	var bw = new lib_bwcheck() ;
	var frm =  document.frmFlight ;
	var length = frm.length ;
	var flag = true ;
	
	req = bw.ie4?document.all["request"]:document.getElementById("request");
	subm = bw.ie4?document.all["sendrequest"]:document.getElementById("sendrequest");					
	available = bw.ie4?document.all["ida_available"+me]:document.getElementById("ida_available"+me);		
	
	for (var i = 0; i < length; i++) {
		if(frm.elements[i].type=="radio" && frm.elements[i].checked==true) {
			if(frm.elements[i].name=="vuelta" && !seccion) {
				vuelta_id = frm.elements[i].value ;
				elem = bw.ie4?document.all["vuelta_available"+vuelta_id]:document.getElementById("vuelta_available"+vuelta_id);	
				if(elem) { 
					if(elem.value==1) {
						subm.disabled = false ;
						req.disabled = true ;		
						flag = true ;
					}else {
						subm.disabled = true ;
						req.disabled = false ;			
						flag = false ;
					}
				}
			}
		}
	}
	if(available.value==1 && flag) {
		subm.disabled = false ;
		req.disabled = true ;						
	}else {
		subm.disabled = true ;
		req.disabled = false ;												
	}	
}
function check_by_vuelta(me, seccion) {
	var bw = new lib_bwcheck() ;
	var frm =  document.frmFlight ;
	var length = frm.length ;
	var flag = false ;
	
	req = bw.ie4?document.all["request"]:document.getElementById("request");
	subm = bw.ie4?document.all["sendrequest"]:document.getElementById("sendrequest");				
	available = bw.ie4?document.all["vuelta_available"+me]:document.getElementById("vuelta_available"+me);		
	
	for (var i = 0; i < length; i++) {
		if(frm.elements[i].type=="radio" && frm.elements[i].checked==true) {
			if(frm.elements[i].name=="ida" && seccion) {
				ida_id = frm.elements[i].value ;
				elem = bw.ie4?document.all["ida_available"+ida_id]:document.getElementById("ida_available"+ida_id);	
				if(elem) { 
					if(elem.value==1) {
						subm.disabled = false ;
						req.disabled = true ;
						flag = true ;
					}else {
						subm.disabled = true ;
						req.disabled = false ;												
					}
				}
			}
		}
	}
	if(available.value==1 && flag) {
		subm.disabled = false ;
		req.disabled = true ;						
	}else {
		subm.disabled = true ;
		req.disabled = false ;												
	}	
}
<!-- Check Info //-->
function isEmpty(inputVal) {
   inputStr = inputVal.length
   var contsps = 0    // contador de espacios en blanco
   for (var i = 0; i < inputStr ; i++) {
	  var oneChar = inputVal.charAt(i)
	  if (oneChar == " ") {
	    contsps = contsps + 1
	 }
}
if (contsps == inputStr) {
	return true
 }else {
        return false }
}
function IsNumeric(varNumero)
{
  var checkOK = "0123456789-., ";
  var checkStr = varNumero;
  var allValid = true;
  var decPoints = 0;
  var allNum = "";
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
    if (ch == ".")
    {
      allNum += ".";
      decPoints++;
    }
    else if (ch != ",")
      allNum += ch;
  }
  if (!allValid)
  {
      return (false);
  }

  if (decPoints > 1)
  {
   return (false);
  }
  return (true);
}

function cardIsNumber(varNumero)
{
	checkOK = "0123456789";
	for (i=0; i < varNumero.length; i++)
	{
		str = "" + varNumero.charAt(i);
		if (checkOK.indexOf(str) < 0 )
			return false;
	}
	return true;
}

// Verificar e-mail
function emailCheck (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("Dirección de e-mail no válida")
		return false
	}
	var user=matchArray[1]
	var domain=matchArray[2]
	
	if (user.match(userPat)==null) {
		alert("Dirección de e-mail no válida")
	    return false
	}
	
	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
		  for (var i=1;i<=4;i++) {
		    if (IPArray[i]>255) {
				alert("Dirección de e-mail no válida")
			return false
		    }
	    }
	    return true
}

var domainArray=domain.match(domainPat)
if (domainArray==null) {
		alert("Dirección de e-mail no válida")
    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) {
	alert("Dirección de e-mail no válida")
   return false
}

if (len<2) {
   var errStr="This address is missing a hostname!"
   alert("Dirección de e-mail no válida")
   return false
}

return true;
}
//Verificar numeros de telefono
function isTel(inputStr) {
	for (var i = 0; i < inputStr.length; i++) {
		var oneChar = inputStr.substring(i, i + 1);
		if (oneChar < "0" || oneChar > "9") {
			if(oneChar=="-" || oneChar=="(" || oneChar==")" ){ 
				continue;
			}				
			return false;
		}
	}
	return true;
}
function setRoundTrip() {
		var frm = document.frmDestinos
		frm.tipoviaje[1].checked = true ;
}
function checkFrmVendedores() {
		var frm = document.frmVendedores
		var passwd = frm.passwd.value
		var passwd2 = frm.passwd2.value 
		var username = frm.username.value 
		frm.mode.value = 'insert' ;
		flag = true ;
				
		if(isEmpty(username)) {			
			alert ("Falta el nombre de Usuario") ;
			frm.username.focus () ;
			flag = false ;			
		}		
		if(!isEmpty(passwd) || !isEmpty(passwd2)) {
				if(passwd!=passwd2) {
						alert ("Las Contraseñas no Cinciden") ;
						flag = false ;
				}
		}
		if(flag) 
			frm.submit()
}
function remove(id, label) {
	frm = document.frmVendedores;		
	string = "Realmente Desea Borrar El vendedor \""+ label +"\" \n\n *Si NO esta seguro de querer borrarlo precione Cancelar"  ;
	if (confirm(string)){
		frm.vendedor.value  = id;		
		frm.mode.value  = "del";
		frm.submit();
	}
}
function checkInfo (numerp) {		
	var bw = new lib_bwcheck() ;
	var num = 0;
	var frm = document.frmInfo ;
	haveninos = frm.haveninos.value
	for (var i = 0; i < parseFloat(numerp); i++) {
		num = i + 1
		efn = bw.ie4?document.all["nombre"+i]:document.getElementById("nombre"+i);	 			
		eln = bw.ie4?document.all["apellido"+i]:document.getElementById("apellido"+i);		
		elt = bw.ie4?document.all["tipop"+i]:document.getElementById("tipop"+i);				
		if (isEmpty(efn.value)) {
			alert ('Falta el Nombre del pasajero '+num) 
			efn.focus() 
			return false ;
		}else if (isEmpty(eln.value)) {
			alert ('Falta el Apellido del pasajero '+num) 
			eln.focus() 
			return false ;
		}else if(haveninos==0) {
			idx = elt.options[elt.selectedIndex].value ;
			if(idx==1) {
				alert ('La tarifa de Niños no Aplica se puede aplicar en el pasajero '+num) 
				elt.focus() 
				return false ;					
			}
		}
	}	
	if (isEmpty(frm.cnombre.value)) {
			alert ('Falta Nombre de la persona que hace la reservacion') ;
			frm.cnombre.focus() ;
			return false ;
	}else if(isEmpty(frm.capellido.value)) {
			alert ('Falta Apellido de la persona que hace la reservacion') ;		
			frm.capellido.focus() ;
			return false ;		
	}else if(isEmpty(frm.ctelefono.value) || !IsNumeric(frm.ctelefono)) {
			alert ('El número de Teléfono no es válido') ;		
			frm.ctelefono.focus() ;
			return false ;
	}else if(!emailCheck(frm.cemail.value)) {		
			frm.cemail.focus() ;
			return false ;
	}
	frm.submit();
}

//funcion change field to present
function hiddenfields(obj)
{
  var nombreTarjeta="";
  var objF = document.frmPurchase ;
  	if(obj.options[obj.selectedIndex].value=="Visa")
  	{
    	document.getElementById('payments2').style.display='block';
    	document.getElementById('payments1').style.display='none';
    	if (!isEmpty(objF.nombre.value)) 
		  {
		    	nombreTarjeta=objF.nombre.value;
	  	  }
	  	if (!isEmpty(objF.apellido.value)) 
		  {
		    	nombreTarjeta=nombreTarjeta+" "+objF.apellido.value;
	  	  }
	  	objF.tarjetahambiente.value= nombreTarjeta;
    	document.frmPurchase.action="senddataalignet.php";
	}else
	{
		document.getElementById('payments1').style.display='block';
    	document.getElementById('payments2').style.display='none';
    	document.frmPurchase.action="senddata.php";
	}
}

function checkPurchase_cards()
{
  var obj = document.frmPurchase ;
  
  	/*if(obj.tipot.options[obj.tipot.selectedIndex].value=="Visa")
	{	  	  
	  	checkPurchase_2 ()
  	}else
  	{
	    checkPurchase ()
	}*/
	checkPurchase_3();
}

function checkPurchase () {
	var frm = document.frmPurchase ;
	if(frm.func.value) {
		if (isEmpty(frm.nombre.value)) {
				alert ('Falta Nombre del dueño de la tarjeta') ;
				frm.nombre.focus() ;
				return false ;
		}else if(isEmpty(frm.apellido.value)) {
				alert ('Falta Apellido del dueño de la tarjeta') ;		
				frm.apellido.focus() ;
				return false ;		
		}else if(frm.cardnumber.value.length !=16 || !cardIsNumber(frm.cardnumber.value)) {
				title = "The number specified for your credit card ' " 
				title += frm.tipot.options[frm.tipot.selectedIndex].value
				title += " ' is not valid. Please, check that only contains numerical characters and that contains 16 digits"
				alert(title);			
				frm.cardnumber.focus() ;
				return false ;
		}else if(isEmpty(frm.code.value)) {
				alert ('Falta código de seguridad de la Tarjeta') ;		
				frm.code.focus() ;
				return false ;		
		}
	}
	frm.submit();	
}

function checkPurchase_2 () {
	var frm = document.frmPurchase ;
	if(frm.func.value) {
		if (isEmpty(frm.nombre.value)) {
				alert ('Falta Nombre del dueño de la tarjeta') ;
				frm.nombre.focus() ;
				return false ;
		}else if(isEmpty(frm.apellido.value)) {
				alert ('Falta Apellido del dueño de la tarjeta') ;		
				frm.apellido.focus() ;
				return false ;		
		}else if(frm.tipot.options[frm.tipot.selectedIndex].value=="Seleccione")
		{
		  alert ('Por favor seleccione el tipo de tarjeta a utilizar') ;
		return false ;
		}else if(frm.tipot.options[frm.tipot.selectedIndex].value=="MasterCard")
		{
			if(frm.cardnumber.value.length !=16 || !cardIsNumber(frm.cardnumber.value)) {
					title = "The number specified for your credit card ' " 
					title += frm.tipot.options[frm.tipot.selectedIndex].value
					title += " ' is not valid. Please, check that only contains numerical characters and that contains 16 digits"
					alert(title);			
					frm.cardnumber.focus() ;
					return false ;
			}else if(isEmpty(frm.code.value)) {
					alert ('Falta código de seguridad de la Tarjeta') ;		
					frm.code.focus() ;
					return false ;		
			}
		}else if (isEmpty(frm.tarjetahambiente.value)) {
				alert ('Falta Nombre del tarjeta hambiente') ;
				frm.tarjetahambiente.focus() ;
				return false ;
		}
	}
	frm.submit();	
}

function checkPurchase_3 () {
	var frm = document.frmPurchase ;
	if(frm.func.value) {
		if (isEmpty(frm.nombre.value)) {
				alert ('Falta Nombre del dueño de la tarjeta') ;
				frm.nombre.focus() ;
				return false ;
		}else if(isEmpty(frm.apellido.value)) {
				alert ('Falta Apellido del dueño de la tarjeta') ;		
				frm.apellido.focus() ;
				return false ;		
		}else if(frm.tipot.options[frm.tipot.selectedIndex].value=="Seleccione")
		{
		  alert ('Por favor seleccione el tipo de tarjeta a utilizar') ;
		return false ;
		}else if (isEmpty(frm.tarjetahambiente.value)) {
				alert ('Falta Nombre del tarjeta hambiente') ;
				frm.tarjetahambiente.focus() ;
				return false ;
		}else if(frm.cardnumber.value.length !=16 || !cardIsNumber(frm.cardnumber.value)) {
				title = "The number specified for your credit card ' " 
				title += frm.tipot.options[frm.tipot.selectedIndex].value
				title += " ' is not valid. Please, check that only contains numerical characters and that contains 16 digits"
				alert(title);			
				frm.cardnumber.focus() ;
				return false ;
		}else if(isEmpty(frm.code.value)) {
				alert ('Falta código de seguridad de la Tarjeta') ;		
				frm.code.focus() ;
				return false ;		
		}
	}
	document.frmPurchase.action="senddata.php";
	frm.submit();	
}
function chekRequest() {
	var frm = document.frmRequest
	
	if (isEmpty(frm.nombre.value)) {
			alert ('Falta Nombre') ;
			frm.nombre.focus() ;
			return false ;
	}else if(isEmpty(frm.apellido.value)) {
			alert ('Falta Apellido') ;		
			frm.apellido.focus() ;
			return false ;		
	}else if(!emailCheck(frm.email.value)) {		
			frm.email.focus() ;
			return false ;
	}		
}
function checkContactUs() {
	var frm = document.formContactUs
	
	if (isEmpty(frm.name.value)) {
			alert ('Falta su Nombre') ;
			frm.name.focus() ;
			return false ;
	}else if(isEmpty(frm.lastname.value)) {
			alert ('Falta su Apellido') ;		
			frm.lastname.focus() ;
			return false ;		
	}else if(!emailCheck(frm.email.value)) {		
			frm.email.focus() ;
			return false ;
	}else if(isEmpty(frm.comments.value)) {
			alert ('Faltan sus Comentarios') ;		
			frm.comments.focus() ;
			return false ;		
	}
}
function ticketsPrint(order) {
	var url = 'modelo-boleto.php?reservacion=' + order;
	var myWidth = screen.width ;
	var myHeight = screen.height ;
	var features = 'scrollbars=yes' ;	
/*	if(window.screen){
		var myLeft = (screen.width - myWidth) / 2;
		var myTop = (screen.height - myHeight) / 2;
		features+=(features!='')?',':'';
		features+=',left='+myLeft+',top='+myTop;
	}
	features += ((features!='')?',':'')+'width='+myWidth+',height='+myHeight		*/
	window.open (url, 'limites', features) ;	
}

function ticketsPrint2(order,comb) {
	var url = 'modelo-boleto.php?reservacion=' + order + '&comb='+comb;
	var myWidth = screen.width ;
	var myHeight = screen.height ;
	var features = 'scrollbars=yes' ;	
/*	if(window.screen){
		var myLeft = (screen.width - myWidth) / 2;
		var myTop = (screen.height - myHeight) / 2;
		features+=(features!='')?',':'';
		features+=',left='+myLeft+',top='+myTop;
	}
	features += ((features!='')?',':'')+'width='+myWidth+',height='+myHeight		*/
	window.open (url, 'limites', features) ;	
}