//Funcion para las imágenes sobrepuestas
EdicionImpresaA=new Image()
EdicionImpresaA.src="images/EdicionImpresaA.gif"
EdicionImpresaB=new Image()
EdicionImpresaB.src="images/EdicionImpresaB.gif"
NoticiasA=new Image()
NoticiasA.src="images/NoticiasA.gif"
NoticiasB=new Image()
NoticiasB.src="images/NoticiasB.gif"
EspecialesA=new Image()
EspecialesA.src="images/EspecialesA.gif"
EspecialesB=new Image()
EspecialesB.src="images/EspecialesB.gif"
PublicidadA=new Image()
PublicidadA.src="images/PublicidadA.gif"
PublicidadB=new Image()
PublicidadB.src="images/PublicidadB.gif"
ServiciosA=new Image()
ServiciosA.src="images/ServiciosA.gif"
ServiciosB=new Image()
ServiciosB.src="images/ServiciosB.gif"

//de momento valida select-one, select-multiple y text
//en base al validationmsg, si es 0 o sin definir no es obligatorio,
	function ValidoAcceso(NombreForm){
		var sFormulario=document.forms[NombreForm];
		var validado = true
								
		for (i=0; i<= sFormulario.length-1; i++)
		{
			if (sFormulario.elements[i].validationmsg)
			{
				switch (sFormulario.elements[i].type )
				{
					case "select-multiple" :  
						if (sFormulario.elements[i].options.length =="0"){
							alert(sFormulario.elements[i].validationmsg)
							sFormulario.elements[i].focus()
							return false
						}
						break;
				 	
					case "textarea" :  
						if (sFormulario.elements[i].value.length >= sFormulario.elements[i].maxlength){
							validado=false
							respuesta=1
						}
						if (sFormulario.elements[i].value.length == "0" ){
							validado=false
							respuesta=2
						}
						if (validado==false){
							if (respuesta ==2){
								alert(sFormulario.elements[i].validationmsg)
							}else{
								alert("Hay demasiados texto en el campo comentarios, por favor, borra algún párrafo")
							}
							//esta función edita nuestro textarea para poner el foco
//							editor_setmode(sFormulario.elements[i].name)
//							sFormulario.elements[i].focus()
							return false
//							editor_setmode(sFormulario.elements[i].name)
						}
						break;
						
					
					default :  
						if (sFormulario.elements[i].type !="image" && sFormulario.elements[i].type !="select-multiple" &&
						 sFormulario.elements[i].type !="textarea" && sFormulario.elements[i].type !="checkbox" && 
						 sFormulario.elements[i].type !="radio" && sFormulario.elements[i].validationmsg != "0" && 
						 sFormulario.elements[i].validationmsg != "undefined" && sFormulario.elements[i].disabled == false && 
						 (sFormulario.elements[i].value =="" || sFormulario.elements[i].value =="0" )){
							alert(sFormulario.elements[i].validationmsg)
							sFormulario.elements[i].focus()
							return false
						}
						break;
				}  
				if (validado==false){
					alert(sFormulario.elements[i].validationmsg)
					sFormulario.elements[i].focus()
					return false
				}
			}
			
			
		}
		return true
	}



//Funciones para validar la entrada de un Email Válido a un textbox

function RevisaEmail (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)
	{
	return false
	 }	
	
	var user=matchArray[1]	
	var domain=matchArray[2]	
	
	if (user.match(userPat)==null) 
	{
		return false
	}	

	var IPArray=domain.match(ipDomainPat)	
	if (IPArray!=null) 
	{
		for (var i=1;i<=4;i++) 
		{
			if (IPArray>255)
			{
				return false
			}
		}		
		return true
	}	

	var domainArray=domain.match(domainPat)	
	
	if (domainArray==null) 
	{
		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) 
	{
	return false
	 }	
	
	if (len<2) 
	{
		return false
	}
	
	return true;
}

function ValidaEmail(form,url,target,alto,ancho) 
{
	if (form.TxtEmail.value == "") 
	{
		alert("Necesita introducir su Email");
		form.TxtEmail.focus();	
		return false;
	}
	if (RevisaEmail(form.TxtEmail.value) == false) 
	{
		alert("El Email no es válido");
		form.TxtEmail.focus();
		return false;
	}
	else
	{
	url=url+'?TxtEmail='+form.TxtEmail.value;
	PopUpBoletin(url,target,alto,ancho);
	}
}


function ValidaSuscripcion(form) 
{
	if (form.TxtNombre.value == "") 
	{
		alert("Por favor introduzca su nombre");
		form.TxtNombre.focus();	
		return false;
	}
	else
	{
		if (form.TxtLada.value == "") 
		{
			alert("Por favor introduzca la calve lada");
			form.TxtLada.focus();
			return false;
		}
		else
		{
			if (form.TxtTelefono.value == "")
			{
				alert("Por favor introduzca el teléfono");
				form.TxtTelefono.focus();	
				return false;	
			}
			else
			{
				if (form.TxtEmail.value != "")
				{
					if (RevisaEmail(form.TxtEmail.value) == false) 
					{
						alert("El Email no es válido");
						form.TxtEmail.focus();
						return false;
					}
				}
			}
		}
			
	}
}



function ValidaEmailRecPass(form) 
{
	if (form.TxtEmail.value == "") 
	{
		alert("Necesita introducir su Email");
		form.TxtEmail.focus();	
		return false;
	}
	if (RevisaEmail(form.TxtEmail.value) == false) 
	{
		alert("El Email no es válido");
		form.TxtEmail.focus();
		return false;
	}

}

function PopUpBoletin(url,target,alto,ancho,barra) 
{
var izquierda = (screen.availWidth - ancho) / 2;
var arriba = (screen.availHeight - alto) / 2;
window.open(url,target,'top='+arriba+',left='+izquierda +',height='+alto+',width='+ancho+',resizable='+barra+',scrollbars='+barra+'');

}


function ChkTodasLasNoticias_OnClick()
{
	if (document.FrmBsqAvanzada.ChkTodasLasNoticias[0].checked==true)
		{
			document.FrmBsqAvanzada.TxtTexto.value="";
			document.FrmBsqAvanzada.TxtTexto.style.display="none";
		}
	else
		{
			FrmBsqAvanzada.TxtTexto.style.display="";
					
		}
}

		
function ValidaBqdAvanzada(sFormu)
{
	
	
		if (document.FrmBsqAvanzada.ChkTodasLasNoticias[1].checked==true)
		{
			if (document.FrmBsqAvanzada.TxtTexto.value=="")
			{
				alert("Indique las palabras a buscar \n ¡No se permiten campos en blanco!");
				document.FrmBsqAvanzada.TxtTexto.focus();
				return false;
			}
	
		}
		if (document.FrmBsqAvanzada.cFch1.value=="")
		{
			alert("Indique la fecha inicial de la búsqueda")
			document.FrmBsqAvanzada.cFch1.focus();
			return false;
		}
		else
		{
			if (document.FrmBsqAvanzada.cFch2.value=="")
			{
			alert("Indique la fecha final de la búsqueda")
			document.FrmBsqAvanzada.cFch2.focus();
			return false;
			}
		}
		if (document.FrmBsqAvanzada.cFch1.value>document.FrmBsqAvanzada.cFch2.value)
		{
			alert("La fecha inicial no puede ser mayor que la fecha final. \n ¡Seleccione una nueva fecha inicial!");
			return false;
		}
	
				
}	


function mOvr(src,clrOver) {
if (!src.contains(event.fromElement)) {
src.style.cursor = 'hand';
src.bgColor = clrOver;
}
}
function mOut(src,clrIn) {
if (!src.contains(event.toElement)) {
src.style.cursor = 'default';
src.bgColor = clrIn;
}
}
function mClk(src) {
if(event.srcElement.tagName=='TD'){
src.children.tags('A')[0].click();
}
}

function ValidaRegistroDeUsuarios(sFormu)
{
	if (!ValidoAcceso(sFormu))
	{ 
		return false;
	}
	else
	{
			if (document.FrmRegistroDeUsuarios.TxtUsuario.value=="")
				{
					alert("Proporcione un nombre de usuario válido, por favor...");
					document.FrmRegistroDeUsuarios.TxtUsuario.focus();
					return false;
				}
			
			if (document.FrmRegistroDeUsuarios.TxtEmail.value=="")
				{
					alert("Proporcione una cuenta de correo válida, por favor...");
					document.FrmRegistroDeUsuarios.TxtEmail.focus();
					return false;
				}
			else
				{
				if (RevisaEmail(document.FrmRegistroDeUsuarios.TxtEmail.value) == false) 
					{
						alert("¡La cuenta de correo que ha proporcionado no es válida!");
						FrmRegistroDeUsuarios.TxtEmail.focus();
						return false;
					}
				}
			if (document.FrmRegistroDeUsuarios.TxtPassword.value=="")
				{
					alert("Por seguridad su password no puedes ser blanco...");
					document.FrmRegistroDeUsuarios.TxtPassword.focus();
					return false;
				}
			if (document.FrmRegistroDeUsuarios.TxtRepitePassword.value=="")
				{
					alert("Por seguridad su password no puedes ser blanco...");
					document.FrmRegistroDeUsuarios.TxtRepitePassword.focus();
					return false;
				}
						
			
		}
		
}	

function LimpiaCamposRegistroDeUsuarios()
{
alert("Proporcione una cuenta de correo válida, por favor...");
document.FrmRegistroDeUsuarios.TxtNombre.value=="";
return true;
}

function sinEspacios()
{
//Propósito:	Evitar que se escriban letras en los campos numéricos.
//Efectos:		Si se pulsa una tecla de texto no ocurrirá nada.
	if (event.keyCode==32){
		event.keyCode=0;
		alert("No se pueden introducir espacios");
		}
}

function validaContraIgual(){
			var sFormulario=document.forms["FrmRegistroDeUsuarios"];
			if (sFormulario.elements["TxtPassword"].value!=sFormulario.elements["TxtRepitePassword"].value){
				alert("No coinciden las dos contraseñas");
				document.FrmRegistroDeUsuarios.TxtRepitePassword.focus();
				return false;
			}
	}
function validaEmailIgual(){
		var sFormulario=document.forms["formDatos"];
		if (sFormulario.elements["txtEmail"].value!=sFormulario.elements["txtRepiteEmail"].value){
			alert("No coinciden las dos direcciones de correo-electrónico");
			return false;
		}
}


function detectKey(e) {
	
	var characterCode;
	if(e && e.which){ //if which property of event object is supported (NN4)
	e = e;
	characterCode = e.which //character code is contained in NN4's which property
	//alert("-" + characterCode + "-");
	}
	else{
	e = event;
	characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}
	
	if(characterCode == 13){ //if enter key pressed
		//alert("Enter key has been pressed !");
		return true;
	}
	else {
		return false;
	}	

}

function chequeaCaracteres (cajadeTexto,form)
{
	var i;
	var rExp1 = /\*/gi;
	var rExp2 = /\?/gi;

	var caracteresProhibidos = new Array(",","&","{","}","\"","'","(",")","[","]","-",";","~","|","$","¡","!",">","<","+","=");
	var valor = new String(cajadeTexto.value);
	var valorEnLowerCase = new String();
	
	if (cajadeTexto.value=="")
	{
		alert("Introduzca una palabra \n ¡No se permiten campos en blanco!");
		window.document.buscador.TxtTexto.focus();
		//form.getElementById[0].focus();
		return false;
	}
	else
	{
		valor=valor.replace(rExp1, "%");//cambia asteriscos por porcentajes
		valor=valor.replace(rExp2, "_");//cambia interrogaciones por guiones bajos

		//valorEnLowerCase = valor;
		valorEnLowerCase = valor.toLowerCase( );
	
		//alert (valor);
		//alert (valorEnLowerCase);
	

		for (i=0 ; i < caracteresProhibidos.length; i++) {
			if (valorEnLowerCase.indexOf(caracteresProhibidos[i])!= -1) {
				alert ("El carácter o expresión '" + caracteresProhibidos[i] + "' no es válido para el Buscador" );		
				return false;		
			}
		}
		cajadeTexto.value=valor;//reemplaza el valor de la caja de texto para mandarlo
		form.submit();
		return true;
	}
}

//Valida el formulario de actualizar los datos del usuario y muestra y oculta divs

			function switchear(iddiv)
			{ 
    			if (document.FrmActualizarDatos.ChkFac.checked)
					{iddiv.style.display="block"} 					
	    		else
					{iddiv.style.display="none"}
			}
			function ValidoCampos()
			{
				if (document.FrmActualizarDatos.Txtdireccion.value.length==0)
				{
					alert(document.FrmActualizarDatos.Txtdireccion.validationmsg)
					document.FrmActualizarDatos.Txtdireccion.focus()
					return false;
				}
				if (document.FrmActualizarDatos.TxtCiudad.value.length==0)
				{
					alert(document.FrmActualizarDatos.TxtCiudad.validationmsg)
					document.FrmActualizarDatos.TxtCiudad.focus()
					return false;
				}
				if (document.FrmActualizarDatos.TxtEstado.value.length==0)
				{
					alert(document.FrmActualizarDatos.TxtEstado.validationmsg)
					document.FrmActualizarDatos.TxtEstado.focus()
					return false;
				}
				if (document.FrmActualizarDatos.TxtPais.value.length==0)
				{
					alert(document.FrmActualizarDatos.TxtPais.validationmsg)
					document.FrmActualizarDatos.TxtPais.focus()
					return false;
				}
				if (document.FrmActualizarDatos.TxtCp.value.length==0)
				{
					alert(document.FrmActualizarDatos.TxtCp.validationmsg)
					document.FrmActualizarDatos.TxtCp.focus()
					return false;
				}
				if (document.FrmActualizarDatos.TxtTelCasa.value.length==0)
				{
					alert(document.FrmActualizarDatos.TxtTelCasa.validationmsg)
					document.FrmActualizarDatos.TxtTelCasa.focus()
					return false;
				}
				if (document.FrmActualizarDatos.CboOcupacion.value.length==0)
				{
					alert(document.FrmActualizarDatos.CboOcupacion.validationmsg)
					return false;
				}
				if (document.FrmActualizarDatos.CboEstadoCivil.value.length==0)
				{
					alert(document.FrmActualizarDatos.CboEstadoCivil.validationmsg)
					return false;
				}
				if (document.FrmActualizarDatos.ChkFac.checked)
				{
					if (document.FrmActualizarDatos.TxtRazon.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtRazon.validationmsg)
						document.FrmActualizarDatos.TxtRazon.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtDireccionFiscal.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtDireccionFiscal.validationmsg)
						document.FrmActualizarDatos.TxtDireccionFiscal.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtCiudadFiscal.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtCiudadFiscal.validationmsg)
						document.FrmActualizarDatos.TxtCiudadFiscal.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtEstadoFiscal.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtEstadoFiscal.validationmsg)
						document.FrmActualizarDatos.TxtEstadoFiscal.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtPaisFiscal.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtPaisFiscal.validationmsg)
						document.FrmActualizarDatos.TxtPaisFiscal.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtCpFiscal.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtCpFiscal.validationmsg)
						document.FrmActualizarDatos.TxtCpFiscal.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtRfc.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtRfc.validationmsg)
						document.FrmActualizarDatos.TxtRfc.focus()
						return false;
					}
					if (document.FrmActualizarDatos.TxtTelFiscal.value.length==0)
					{
						alert(document.FrmActualizarDatos.TxtTelFiscal.validationmsg)
						document.FrmActualizarDatos.TxtTelFiscal.focus()
						return false;
					}
				}
			} 
