function isUndefined(a) {
    return typeof a == 'undefined';
} 


function recomendarWeb()
{	//	alert("En construcción");
	nRet = showModalDialog("web/Email.asp","","dialogHeight:365px; dialogWidth:398px; center:yes; resizable:no; scroll:no; status:no");
}

function enviarRecomendar()
{	
	if (trim(document.all("txtEmailTo").value) == "")
	{
		alert("Ha de rellenar el Email del destinatario");
		document.all("txtEmailTo").focus();
		return false;
	}
	if (!(verificaEmail(trim(document.all("txtEmailTo").value))))
	{
		alert("El Email del destinatario es incorrecto");
		document.all("txtEmailTo").focus();
		return false;
	}
	if (trim(document.all("txtNombre").value) == "")
	{
		alert("Ha de rellenar su nombre");
		document.all("txtNombre").focus();
		return false;
	}
	if (trim(document.all("txtEmailFrom").value) == "")
	{
		alert("Ha de rellenar su Email");
		document.all("txtEmailFrom").focus();
		return false;
	}
	if (!(verificaEmail(trim(document.all("txtEmailFrom").value))))
	{
		alert("Su Email es incorrecto");
		document.all("txtEmailFrom").focus();
		return false;
	}
	document.forms("frmEmail").submit();
}

function enviarContacto()
{
	if (trim(self.frames(0).frames("contenido").document.all("txtApellido").value) == "")
	{
		alert("Ha de rellenar el Apellido");
		self.frames(0).frames("contenido").document.all("txtApellido").focus();
		return false;
	}
	if (trim(self.frames(0).frames("contenido").document.all("txtNombre").value) == "")
	{
		alert("Ha de rellenar el Nombre");
		self.frames(0).frames("contenido").document.all("txtNombre").focus();
		return false;
	}
	
	/*if (trim(self.frames(0).frames("contenido").document.all("txtCalle").value) == "")
	{
		alert("Ha de rellenar la Calle");
		self.frames(0).frames("contenido").document.all("txtCalle").focus();
		return false;
	}*/
	if (trim(self.frames(0).frames("contenido").document.all("txtCodigoPostal").value) == "")
	{
		alert("Ha de rellenar el Código Postal");
		self.frames(0).frames("contenido").document.all("txtCodigoPostal").focus();
		return false;
	}
	if (trim(self.frames(0).frames("contenido").document.all("txtCiudad").value) == "")
	{
		alert("Ha de rellenar la Ciudad");
		self.frames(0).frames("contenido").document.all("txtCiudad").focus();
		return false;
	}
	/*if (trim(self.frames(0).frames("contenido").document.all("txtProvincia").value) == "")
	{	
		alert("Ha de rellenar la Provincia");
		self.frames(0).frames("contenido").document.all("txtProvincia").focus();
		return false;
	}
	if (trim(self.frames(0).frames("contenido").document.all("txtPais").value) == "")
	{
		alert("Ha de rellenar el País");
		self.frames(0).frames("contenido").document.all("txtPais").focus();
		return false;
	}*/
	if (self.frames(0).frames("contenido").document.all("Contactar")[0].checked)
	{
		self.frames(0).frames("contenido").document.all("txtContactar").value = "Teléfono";
		if (trim(self.frames(0).frames("contenido").document.all("txtTelefono").value) == "")
		{
			alert("Si selecciona contacto por teléfono, debe rellanar el Teléfono");
			self.frames(0).frames("contenido").document.all("txtTelefono").focus();
			return false;
		}
	}
	if (self.frames(0).frames("contenido").document.all("Contactar")[1].checked)
	{
		self.frames(0).frames("contenido").document.all("txtContactar").value = "Fax";
		if (trim(self.frames(0).frames("contenido").document.all("txtFax").value) == "")
		{
			alert("Si selecciona contacto por fax, debe rellanar el Fax");
			self.frames(0).frames("contenido").document.all("txtFax").focus();
			return false;
		}
	}
	if (self.frames(0).frames("contenido").document.all("Contactar")[2].checked)
	{
		self.frames(0).frames("contenido").document.all("txtContactar").value = "Email";
		if (trim(self.frames(0).frames("contenido").document.all("txtEmail").value) == "")
		{
			alert("Si selecciona contacto por Email, debe rellanar el Email");
			self.frames(0).frames("contenido").document.all("txtEmail").focus();
			return false;
		}
	}
	self.frames(0).frames("contenido").document.forms("frmContacto").submit();
}

function trim(s)
{
	while (s.substring(0,1)==' ')
		s = s.substring(1,s.length);
	while (s.substring(s.length-1,s.length)==' ')
		s = s.substring(0,s.length-1);
	return s;
}

function verificaEmail(emailStr) 
{
		prim = emailStr.indexOf("@")
		if(prim < 2) {
			return false;
		}
		if(emailStr.indexOf("@",prim + 1) != -1) {
			return false;
		}
		if(emailStr.indexOf(".") < 1) {
			return false;
		}
		if(emailStr.indexOf(" ") != -1) {
			return false;
		}
		if(emailStr.indexOf(".@") > 0) {
			return false;
		}
		if(emailStr.indexOf("@.") > 0) {
			return false;
		}
		if(emailStr.indexOf("/") > 0) {
			return false;
		}
		if(emailStr.indexOf("[") > 0) {
			return false;
		}
		if(emailStr.indexOf("]") > 0) {
			return false;
		}
		if(emailStr.indexOf("(") > 0) {
			return false;
		}
		if(emailStr.indexOf(")") > 0) {
			return false;
		}
		if(emailStr.indexOf("..") > 0) {
			return false;
		}
		return true;
}

function WindowOpenCentrado(url, name, param,w, h, perc) 
{	
	var winX = (screen.availWidth - w)*perc*.01;
    var winY = (screen.availHeight - h)*perc*.01;
    popupWin = window.open(url, name, 'width=' + w + ',height=' + h +',left=' + winX + ',top=' + winY + ','+param);
}

function verImagen(imagen, ancho, alto)
{
 	var winX = (screen.availWidth - ancho)*1.0/2;
	var winY = (screen.availHeight - alto)*1.0/2;
	
	showModalDialog("image/" + imagen,"","dialogHeight:" + (alto + 50) + "px; dialogWidth:" + (ancho + 15) + "px; dialogLeft:" + winX + "px; dialogTop:" + winY + "px;");
}

function RevisarCantidad(obj)
{	
	if (obj.value=="")
		return(true);
		
	var number = parseFloat(obj.value.replace(",","."));
	
	if (isNaN(number)==true)
	{	
		obj.value = "";
		return(false);
	}
	else
	{
		obj.value = number;
		return(true);
	}
}

function ValidaKeyword(obj)
{
	if(obj.value.indexOf(",") >= 0) 
	{
		alert("Un keyword no puede contener comas (,)");
		return false
	}
	if(obj.value.indexOf("\"") >= 0)
	{
		alert("Un keyword no puede contener comillas dobles (\")");
		return false
	}
	return true;
}

function ValidaDescription(obj)
{
	if(obj.value.indexOf("\"") >= 0)
	{
		alert("La descripción no puede contener comillas dobles (\")");
		return false
	}
	return true;
}

function anyoBisiesto(anyo)
{
  if (anyo < 100)
    var fin = anyo + 1900;
  else
    var fin = anyo ;
  if (fin % 4 != 0)
    return false;
  else {
    if (fin % 100 == 0) {
      if (fin % 400 == 0) {
        return true;
      }
      else {
        return false;
      }
    }
    else {
      return true;
    }
  }
}

function ValidaFecha(obj)
{
	var a=obj.value;
	var sep="/";
	// Buscamos separador
	if (a.indexOf("/")!=-1) sep = "/";
	if (a.indexOf("-")!=-1) sep = "-";
	if (a.indexOf(".")!=-1) sep = ".";
	if (a.indexOf(" ")!=-1) sep = " ";
	var dia=a.split(sep)[0];
	var mes=a.split(sep)[1];
	var anyo=a.split(sep)[2];
	if( (isNaN(dia)==true) || (isNaN(mes)==true) || (isNaN(anyo)==true) ) {
    alert("La fecha introducida debe estar formada sólo por números");
 		return false;
  }
  if (anyo < 100) {
  	if (anyo < 50)
  		anyo = (anyo * 1) + 2000;
  	else
  		anyo = (anyo * 1) + 1900;
  }
  if(anyoBisiesto(anyo))
  	var febrero=29;
  else
  	var febrero=28;
  if ((mes<1) || (mes>12)) {
		alert("El mes introducido no es valido.");
		return false;
	}
	if ((mes==2) && ((dia<1) || (dia>febrero))) {
		alert("El dia introducido no es valido.");
		return false;
	}
	if (((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12)) && ((dia<1) || (dia>31))) {
		alert("El dia introducido no es valido.");
		return false;
	}
	if (((mes==4) || (mes==6) || (mes==9) || (mes==11)) && ((dia<1) || (dia>30))) {
		alert("El dia introducido no es valido.");
		return false;
	}
	if ((anyo<1900) || (anyo>2050)) {
		alert("El año introducido no es valido. Por favor, introduzca un año entre 1900 y 2050");
		return false;
	}
	obj.value= ("00" + dia.toString()).substr(("00" + dia.toString()).length - 2) + "/" + ("00" + mes.toString()).substr(("00" + mes.toString()).length - 2) + "/" + ("0000" + anyo.toString()).substr(("0000" + anyo.toString()).length - 4)
	return true;
}    

function ValidaDominio(obj)
{
	var a=obj.value;
	// PCA - PENDIENTE DE DESARROLLO !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	// PCA - PENDIENTE DE DESARROLLO !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	// PCA - PENDIENTE DE DESARROLLO !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	// PCA - PENDIENTE DE DESARROLLO !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	// PCA - PENDIENTE DE DESARROLLO !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	return true;
}

function replace(string,text,by) 
{
  var stringLength = string.length
  var textLength = text.length;

  if ((stringLength == 0) || (textLength == 0)) 
  	return string;

  var i = string.indexOf(text);
  if ((!i) && (text != string.substring(0,textLength))) 
  	return string;
  if (i == -1) 
  	return string;

  var newstr = string.substring(0,i) + by;

  if ( (i+textLength) < stringLength)
    newstr += replace(string.substring(i+textLength,stringLength),text,by);
  return newstr;
}       

function ejecutaComando(aFrame, aName, aArg){
  document.frames(aFrame).document.execCommand(aName,false, aArg);
  document.frames(aFrame).document.body.focus()
}
