/*Add to Shoping*/
function shopAdd () {
	var frm = document.formGenerate
	
	frm.action = "add.php" ;
	frm.mode.value = "add" ;		
	frm.target = "_top" ;	
	frm.submit() ;		
}
function generate () {
	var frm = document.formGenerate
	
	frm.mode.value = "" ;	
	frm.submit() ;		
}
function searchTicket () {
	var frm = document.formGenerate
	
	frm.mode.value = "" ;	
	frm.submit() ;		
}
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;
}
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) {
   alert("Dirección de e-mail no válida")
   return false
}

return true;
}
/*Preview Tickets*/
function openWin(theURL, winName, features, myWidth, myHeight) { 	
	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(theURL, winName, features);  
}
function preview (ticket, actividad) {
	var url = "preview.php?ticket="+ticket+"&actividad="+actividad ;
	var features = "scrollbars=yes" ;
	
	openWin(url, 'preview', features, 640, 480) ;
}
/*Regulaciones*/
function regulaciones (module, actividad) {
	var features = "scrollbars=yes" ;
	var url = "regulaciones.php?module="+module+"&actividad="+actividad ;
	
	openWin(url, 'regulaciones', features, 450, 550) ;
}
/*Remove Tickets*/
function removeTicket (ticket) {
		var frm = document.formShopCart
		frm.ticket.value = ticket ;
		frm.submit () ;
}
/*Purchase Tickets*/
function purchaseTickets() {
		var frm = document.formShopCart
		frm.mode.value = 'purchase' ;
		frm.submit () ;
}
function checkPurchaseInfo() {
	var frm = document.formPurchase ;

	if(isEmpty(frm.nombre.value)) {
		alert ('Falta su Nombre') ;
		frm.nombre.focus() ;
		return false ;
	}else if(isEmpty(frm.apellido.value)) {
		alert ('Falta su Apellido') ;
		frm.apellido.focus() ;			
		return false ;
	}else if(!emailCheck(frm.email.value)) {
		frm.email.focus() ;			
		return false ;
	}else if(isEmpty(frm.telefono.value)) {
		alert ('Falta su Teléfono') ;
		frm.telefono.focus() ;			
		return false ;
	}else if(isEmpty(frm.direccion.value)) {
		alert ('Falta su Dirección') ;
		frm.direccion.focus() ;			
		return false ;
	}else if (isEmpty(frm.card_nombre.value)) {
		alert ('Falta Nombre del dueño de la tarjeta') ;
		frm.card_nombre.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) || !cardIsNumber(frm.code.value)) {
		alert ('El código de seguridad de la Tarjeta no es válido') ;		
		frm.code.focus() ;
		return false ;		
	}
	
//	alert ('Pasamos a BANISTMO') ;
//	return false ;
}