// Cinemark
// I N T E L E C T O R 
// v 1.0

// VARS, ARRAYS
// Cinemark Teatros y Paises

var arrPT = new Array(); 
var arrST = new Array(); 
arrPT[0] = '1| Metrocentro|2|';
arrPT[1] = '1| La Gran Vía|14|';
arrPT[2] = '1| San Miguel|4|';
arrPT[3] = '2| Albrook|5|';
arrPT[4] = '2| Los Pueblos 2000|16|';
arrPT[5] = '2| Multicentro |9|';
arrPT[6] = '3| Multiplaza del Este|12|';
arrPT[7] = '3| Multiplaza|10|';
arrPT[8] = '4| Metrocentro|7|';
arrPT[9] = '5| Multiplaza|8|';
arrPT[10] = '5| City Mall|15|';
arrPT[11] = '6| Eskala Roosevelt|6|';


// FUNCIONES
// carga los teatros al seleccionar un pais
function populateData( name ) { 
	select	= window.document.form.teatro_cartelera; 
	string	= ""; 
 	count	= 0; 
	select.options.length = count; 
	
	for( i = 0; i < arrPT.length; i++ ) { 
		string = arrPT[i].split( "|" ); 
		if( string[0] == name ) { 
			select.options[count++] = new Option( string[1], string[2] );
			//select.options[count++].value = "eses";	
		} 		
	} 
} 

// Carga los teatros al seleccionar un pais en el formulario de contacto
function ContactenosData( name ) { 
	select	= window.document.form[1].pais; 
	string	= ""; 
 	count	= 0; 
	select.options.length = count; 
	for( i = 0; i < arrPT.length; i++ ) { 
		string = arrPT[i].split( "|" ); 
		if( string[0] == name ) { 
			select.options[count++] = new Option( string[1], string[2] );
		} 		
	} 
} 



// Original:  Mike Welagen (welagenm@hotmail.com) 
// This script and many more are available free online at 
// The JavaScript Source!! http://javascript.internet.com 

function isEmail(str) {
  // are regular expressions supported?
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported) 
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

// I N T E L E C T O R
// comprueba el formato de la fecha
function checkdate(objName) {
var datefield = objName;
	if (chkdate(objName) == false ) {
		datefield.select();
		alert("Fecha invalida, ingrese otra en formato dd/mm/aaaa.");
		datefield.focus();
		return false;
	}	else {
		return true;
	}
}

//javascript.com
function chkdate(objName) {
var strDatestyle = "US"; //United States date style
//var strDatestyle = "EU";  //European date style
var strDate;
var strDateArray;
var strDay;
var strMonth;
var strYear;
var intday;
var intMonth;
var intYear;
var booFound = false;
var datefield = objName;
var strSeparatorArray = new Array("-"," ","/",".");
var intElementNr;
var err = 0;
var strMonthArray = new Array(12);
strMonthArray[0] = "Jan";
strMonthArray[1] = "Feb";
strMonthArray[2] = "Mar";
strMonthArray[3] = "Apr";
strMonthArray[4] = "May";
strMonthArray[5] = "Jun";
strMonthArray[6] = "Jul";
strMonthArray[7] = "Aug";
strMonthArray[8] = "Sep";
strMonthArray[9] = "Oct";
strMonthArray[10] = "Nov";
strMonthArray[11] = "Dec";
strDate = datefield.value;
	if (strDate.length < 1) {
		return true;
	}
	for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
		if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
			strDateArray = strDate.split(strSeparatorArray[intElementNr]);
		if (strDateArray.length != 3) {
			err = 1;
			return false;
		}
		else {
			strDay = strDateArray[0];
			strMonth = strDateArray[1];
			strYear = strDateArray[2];
		}
		booFound = true;
	}
}
if (booFound == false) {
	if (strDate.length>5) {
		strDay = strDate.substr(0, 2);
		strMonth = strDate.substr(2, 2);
		strYear = strDate.substr(4);
	}
}
if (strYear.length == 2) {
	strYear = '20' + strYear;
}
// US style
if (strDatestyle == "US") {
	//strTemp = strDay;
	//strDay = strMonth;
	//strMonth = strTemp;
}
intday = parseInt(strDay, 10);
if (isNaN(intday)) {
	err = 2;
	return false;
}
intMonth = parseInt(strMonth, 10);
if (isNaN(intMonth)) {
		for (i = 0;i<12;i++) {
			if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
				intMonth = i+1;
				strMonth = strMonthArray[i];
				i = 12;
			}
		}
		if (isNaN(intMonth)) {
			err = 3;
			return false;
   }
}
intYear = parseInt(strYear, 10);
if (isNaN(intYear)) {
	err = 4;
	return false;
}
if (intMonth>12 || intMonth<1) {
	err = 5;
	return false;
}
if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
err = 6;
return false;
}
if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
	err = 7;
	return false;
}
if (intMonth == 2) {
	if (intday < 1) {
		err = 8;
		return false;
	}
if (LeapYear(intYear) == true) {
	if (intday > 29) {
		err = 9;
		return false;
	}
}
else {
	if (intday > 28) {
		err = 10;
		return false;
	}
}
}
if (strDatestyle == "US") {
	datefield.value =  intday +"/" +intMonth+ "/" + strYear;
}
else {
	datefield.value = intday + " " + strMonthArray[intMonth-1] + " " + strYear;
}
return true;
}
function LeapYear(intYear) {
	if (intYear % 100 == 0) {
		if (intYear % 400 == 0) { return true; }
	}	else {
		if ((intYear % 4) == 0) { return true; }
	}

	return false;
}

//  I N T E L E C T O R
//  Validar formulario de inscripcion
function doInsChk(frm, login, lname, mail, born, city, code, recode) {
	var errMsg=''; 
	if (login.value == "" || lname.value == "" || mail.value == "" || born.value == "" || city.value == "" || code.value == "" || recode.value == "") {
		if (login.value=="") {
		errMsg='nombre';
		} 
		if (lname.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', apellidos';
			} else {
				errMsg= 'apellidos';
			} 
		}
		if (mail.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', correo electrónico';
			} else {
				errMsg= 'correo electrónico';
			}  
		}
		if (born.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', fecha de nacimiento';
			} else {
				errMsg= 'fecha de nacimiento';
			} 
		}
		if (city.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', ciudad';
			} else {
				errMsg= 'ciudad';
			} 
		}
		if (code.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', codigo de verficacion';
			} else {
				errMsg= 'codigo de verficacion';
			} 
		}
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s).");
	}	else if (!isEmail(mail.value)){
			alert("correo electrónico no valido");
	}	else if (!checkdate(born)){
			alert("fecha invalida");
	}	else if (code.value!=recode.value){
			alert("codigo de confirmacion no coincide con la imagen, recuerde digitar las letras en minusculas.");
	}else {
		//alert("OK");
		frm.submit();
	}
}

function chkB(str){
	if (str.value=="") {
		return true;
	} else {
		return false;
	}
}

function doDateCheck(frm, breve, nom, des, rutaimagen, inicio, fin, categoria, autor, autormail, estadoid) {
		var errMsg="";
		if (chkB(nom)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Nombre';
			} else {
				errMsg= 'Nombre';
			} 
		}
		if (chkB(breve)) {
		if (errMsg.length!=0){
				errMsg= errMsg + ', Resumen';
			} else {
				errMsg= 'Resumen';
			} 
		} 
	
		if (chkB(des)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Artículo';
			} else {
				errMsg= 'Artículo';
			} 
		}
		if (chkB(rutaimagen)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Nombre Imagen';
			} else {
				errMsg= 'Nombre Imagen';
			} 
		}
		if (!checkdate(inicio)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Fecha inicio en blanco o formato invalido';
			} else {
				errMsg= 'Fecha inicio en blanco o formato invalido ';
			} 
		}
		if (!checkdate(fin)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Fecha fin en blanco o formato invalido';
			} else {
				errMsg= 'Fecha fin en blanco o formato invalido ';
			} 
		}
		if (!isEmail(autormail.value) || chkB(autormail)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Correo invalido';
			} else {
				errMsg= 'Correo invalido';
			} 
		}
		if (chkB(categoria)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Categoria';
			} else {
				errMsg= 'Categoria';
			} 
		}
		if (chkB(autor)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Autor';
			} else {
				errMsg= 'Autor';
			} 
		}
		
		if (chkB(estadoid)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Estado';
			} else {
				errMsg= 'Estado';
			} 
		}
	if (errMsg.length!=0){
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s)");
	}	else {
		//alert(\"OK\");
		frm.submit();
	}
}

// verifica los datos de la cartelera
function doCarteleraChk(frm, desde, hasta, pais, teatro, f, fil) {
	if (f.value=='blanco') {
		valor="\\";
	} else {
		valor = f.value;		
	}
	//alert(valor.value);
	fil.value =f.value;
	var errMsg=''; 
	elem="\\";
//	var d = 
	if (desde.value == "" || hasta.value == "" || pais.value == "" || teatro.value == "" || teatro.value==0 ) {
		if (desde.value=="") {
		errMsg='desde';
		} 
		if (hasta.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', hasta';
			} else {
				errMsg= 'hasta';
			} 
		}
		if (pais.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', pais';
			} else {
				errMsg= 'pais';
			}  
		}
		if (teatro.value=="" ||teatro.value==0){ // que haya seleccionado algun teatro
			if (errMsg.length!=0){
				errMsg= errMsg + ', teatro';
			} else {
				errMsg= 'teatro';
			} 
		}
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s).");
	} else if (valor.indexOf(elem)==-1){
			alert("funciones, la ruta al archivo no esta bien");
	}	else if (!checkdate(desde)){
			alert("DESDE fecha invalida");
	}	else if (!checkdate(hasta)){
			alert("HASTA fecha invalida");
	}	else if (comparar(desde.value,hasta.value)==false){ // verifica que el periodo sea valido
			alert("El periodo no es valido.");
	}	else {
		//alert("ok");
		frm.submit();
	}
}


function doCarteleraChkG(frm, desde, hasta, f, fil) {
	if (f.value=='blanco') {
		valor="\\";
	} else {
		valor = f.value;		
	}
	fil.value =f.value;
	var errMsg=''; 
	elem="\\";
	if (desde.value == "" ) {
		if (desde.value=="") {
		errMsg='desde';
		} 
		if (hasta.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', hasta';
			} else {
				errMsg= 'hasta';
			} 
		}
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s).");
	} else if (valor.indexOf(elem)==-1){
			alert("funciones, la ruta al archivo no esta bien");
	}	else if (!checkdate(desde)){
			alert("DESDE fecha invalida");
	}	else if (!checkdate(hasta)){
			alert("HASTA fecha invalida");
	}	else if (comparar(desde.value,hasta.value)==false){ // verifica que el periodo sea valido
			alert("El periodo no es valido.");
	}	else {
		//alert("ok");
		frm.submit();
	}
}
function comparar (desde, hasta) {
	fin = hasta.split("/");
	ini = desde.split("/");
	if (ini[2]>fin[2]) { 
		return false;
	} else if (ini[2]==fin[2]) {
		if (Number(ini[1])>Number(fin[1])) {   //meses
			return false;
		} else if (Number(ini[1])<Number(fin[1])) {
			return true;
		} else {
			if (Number(ini[0])>=Number(fin[0])) { //dias
				return false;
			} else {
				return true;
			}
		}
	} 
 	return true;
}


// valida datos editados de los usuarios
function doUsuarioDataChk(frm, nom, apell, mail, fec, pass) {
		var errMsg="";
		if (chkB(nom)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Nombre';
			} else {
				errMsg= 'Nombre';
			} 
		}
		if (chkB(apell)) {
		if (errMsg.length!=0){
				errMsg= errMsg + ', apellidos';
			} else {
				errMsg= 'apellidos';
			} 
		} 
	
		if (!isEmail(mail.value) || chkB(mail)){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Correo invalido';
			} else {
				errMsg= 'Correo invalido';
			} 
		}
		if (pass.length>=5 && pass.length<=20) {
			if (errMsg.length!=0){
				errMsg= errMsg + ', La contrasena debe tener al menos 5';
			} else {
				errMsg= 'La contrasena debe tener al menos 5';
			} 
		}
		
		
	if (errMsg.length!=0){
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s)");
	}	else if (!checkdate(fec)){
		alert("fecha invalida");
	} 	else {
		//alert(\"OK\");
		frm.submit();
	}
}


//  I N T E L E C T O R
//  Validar formulario de inscripcion
function doDataUserChk(frm, login, lname, mail, born, city, actualcode, code, recode) {
	var errMsg=''; 
	if (login.value == "" || lname.value == "" || mail.value == "" || born.value == "" || city.value == "" ) {
		if (login.value=="") {
		errMsg='nombre';
		} 
		if (lname.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', apellidos';
			} else {
				errMsg= 'apellidos';
			} 
		}
		if (mail.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', correo electrónico';
			} else {
				errMsg= 'correo electrónico';
			}  
		}
		if (born.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', fecha de nacimiento';
			} else {
				errMsg= 'fecha de nacimiento';
			} 
		}
		if (city.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', ciudad';
			} else {
				errMsg= 'ciudad';
			} 
		}
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s).");
	}	else if (!isEmail(mail.value)){
			alert("correo electrónico no valido");
	}	else if (!checkdate(born)){
			alert("fecha invalida");
	}	else if ((actualcode.value != "" ) && (code.value== "" || recode.value=="")) {
			alert("debe proporcionar su nueva contrasena y confirmacion");					
	}	else if ((actualcode.value == "" ) && (code.value!= "" || recode.value!="")) {
			alert("debe proporcionar su contrasena actual");	
	}	else if ( (actualcode.value!="") && ((actualcode.value == code.value ) && (code.value == recode.value))) {
			alert("la contrasena nueva NO puede ser igual a la actual");	
	/*}	else if (code.value.length <5 || code.value.length >20) {
			alert("la contrasena NO puede tener menos de 5 o mas de 20 caracteres");*/	
	}	else if (code.value!=recode.value) {
			alert("la contrasena nueva no coincide con la contrasena de confirmacion.");	
	}	else {
		//alert("OK"+code.value.length );
		frm.submit();
	}
}

//  I N T E L E C T O R
//  Validar formulario de inscripcion
function doContactChk(frm, login, mail, country, city, motive, desc, code, recode) {
	var errMsg=''; 
	if (login.value == "" || mail.value == "" || motive.value == "" || desc.value == "" || code.value == "" || recode.value == "") {
		if (login.value=="") {
		errMsg='nombre';
		} 
		if (mail.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', correo electrónico';
			} else {
				errMsg= 'correo electrónico';
			}  
		}
		if (motive.value=="" || motive.value==0){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Motivo';
			} else {
				errMsg= 'Motivo';
			}  
		}
		if (desc.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', Descripcion';
			} else {
				errMsg= 'Descripcion';
			}  
		}
		if (code.value==""){
			if (errMsg.length!=0){
				errMsg= errMsg + ', codigo de verficacion';
			} else {
				errMsg= 'codigo de verficacion';
			} 
		}
		alert("No debe dejar en blanco "+errMsg+" por ser campo(s) requerido(s).");
	}	else if (!isEmail(mail.value)){
			alert("correo electrónico no valido");
	}	else if (code.value!=recode.value){
			alert("codigo de confirmacion no coincide con la imagen, recuerde digitar las letras en minusculas.");
	}else {
		//alert("OK");
		frm.submit();
	}
}