var loadingImage     = new Image(16, 16);
var onImage          = new Image(16, 16);
var advertenciaImage = new Image(16, 16);
loadingImage.src     = "http://www.enelembarazo.com/imagenes/loading.gif";
onImage.src          = "http://www.enelembarazo.com/imagenes/icono-ok.gif";
advertenciaImage.src = "http://www.enelembarazo.com/imagenes/icono-advertencia.gif";

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MostrarMensajeNuevo(ano, mes, dia, ventanaTiempoDias)
{
	if (ventanaTiempoDias == undefined || ventanaTiempoDias == NaN)
	{
		ventanaTiempoDias = 10;
	}
	
	var fechaActual   = new Date();
	var fechaArticulo = new Date(ano, mes - 1, dia);

	var ventanaTiempo = 1000 * 60 * 60 * 24 * ventanaTiempoDias;

	if ( (fechaArticulo.getTime() + ventanaTiempo) > fechaActual.getTime())
	{
		document.write('Nuevo!')
	}
}

function EscribirFechaActual()
{
	var fechaActual   = new Date();
	var mes;

	switch (fechaActual.getMonth())
	{
		case 0: mes = "Enero";
			break;
		case 1: mes = "Febrero";
			break;
		case 2: mes = "Marzo";
			break;
		case 3: mes = "Abril";
			break;
		case 4: mes = "Mayo";
			break;
		case 5: mes = "Junio";
			break;
		case 6: mes = "Julio";
			break;
		case 7: mes = "Agosto";
			break;
		case 8: mes = "Setiembre";
			break;
		case 9: mes = "Octubre";
			break;
		case 10: mes = "Noviembre";
			break;
		case 11: mes = "Diciembre";
			break;
	}

	document.write(fechaActual.getDate() + " de " + mes + " de " + fechaActual.getYear())
}


function ImprimirPagina(){
	window.open("/imprimir.shtml?" + top.location,"impresion")
}

function PonerMarcaDeAgua(campo, textoBase )
{
	var colorTextoMarcaAgua = '#999';
	var colorTextoNormal    = '#222';

	if (campo.value == textoBase)
	{
		campo.style.color = colorTextoMarcaAgua;
	}

	campo.onfocus =
		function()
		{
			if (this.value == textoBase)
			{
				this.value = '';
			}

			this.style.color = colorTextoNormal;
			if (window.map)
			{
				map._disableKeys = true;
			}
		}

	campo.onblur =
		function()
		{
			if (this.value != '')
			{
				return;
			}
			this.style.color = colorTextoMarcaAgua;
			this.value = textoBase;
			if (window.map)
			{
				map._disableKeys = false;
			}
		}
}


function CargarOpcion(selectField, text, value)
{
	var option;

	option = document.createElement("Option");
	option.text = text;
	option.value = value;

	try
	{
		selectField.add(option);
	}
	catch(ex)
	{
		selectField.add(option, null);
	}

}



function createRequestObject() {
	var ro;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer"){
		ro = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
		ro = new XMLHttpRequest();
	}
	return ro;
}

function sendRequest(form, url, handleResponse) {
	var parameters = "";
	for(var i = 0; i < form.length; i++){
		parameters += form[i].name + "=" + form[i].value.replace(/&/g, "%26") + "&"
	}

	http.open('POST', url);

	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http.setRequestHeader("Content-length", parameters.length);
	http.setRequestHeader("Connection", "close");

	http.onreadystatechange = handleResponse;

	http.send(parameters);
}

function Expandir(panel){
	panel.style.display = '';
}

function Contraer(panel){
	panel.style.display = 'none';
}


function enviarFormProfesionales(formulario){
	if (formulario.categoria.options[formulario.categoria.selectedIndex].value == "NULL"){
		alert("Por favor, seleccione la especialidad del autor.");
	}else{
		formulario.submit();
	}
}


function enviarMiniFormSemanas(formulario){
	if (formulario.semana.options[formulario.semana.selectedIndex].value == "Semana"){
		alert("Por favor, ingrese la semana de embarazo en la cual se encuentra.");
	}else{
		formulario.submit();
	}
}

function enviarMiniFormGestograma(formulario){
	if       (formulario.dia.options[formulario.dia.selectedIndex].value == "Día"){
		alert("Por favor, ingrese el Día de su FUM.");
	}else if (formulario.mes.options[formulario.mes.selectedIndex].value == "Mes"){
		alert("Por favor, ingrese el Mes de su FUM.");
	}else if (formulario.ano.options[formulario.ano.selectedIndex].value == "Año"){
		alert("Por favor, ingrese el Año de su FUM.");
	}else{
		formulario.submit();
	}
}


function enviarMiniFormRecomendacion(formulario)
{
	var defaultNombreRemitente = "Su nombre";
	var defaultEmailRemitente = "Su email";
	var defaultNombreDestinatario = "Nombre de su amiga/o";
	var defaultEmailDestinatario = "Email de su amiga/o";

	if (formulario.NombreRemitente.value == defaultNombreRemitente){
		alert("Por favor ingrese su nombre.");
		formulario.NombreRemitente.focus();
		return;
	}
	if (formulario.EmailRemitente.value == defaultEmailRemitente){
		alert("Por favor ingrese su email.");
		formulario.EmailRemitente.focus();
		return;
	}
	if (formulario.NombreDestinatario.value == defaultNombreDestinatario){
		alert("Por favor ingrese el nombre de su amiga o amigo.");
		formulario.NombreDestinatario.focus();
		return;
	}
	if (formulario.EmailDestinatario.value == defaultEmailDestinatario){
		alert("Por favor ingrese el mail de su amiga o amigo.");
		formulario.EmailDestinatario.focus();
		return;
	}

	formulario.TituloOrigen.value   = document.title;
	formulario.UrlRecomendada.value = top.location;

	var respuesta = function(){
		if(http.readyState == 4){
			var response = http.responseText;
			if (response == "ok"){
				//ok
				alert("Su recomendación ha sido enviada!");
				Contraer(toolboxMaximizadoRecomendar)
				formulario.NombreRemitente.value = defaultNombreRemitente;
				formulario.EmailRemitente.value = defaultEmailRemitente;
				formulario.NombreDestinatario.value = defaultNombreDestinatario;
				formulario.EmailDestinatario.value = defaultEmailDestinatario;
			}else{
				//error
				alert("Ha ocurrido un error al enviar la recomendación. Le pedimos disculpas por las molestias ocasionadas.");
			}
		}
	}

	sendRequest(formulario, '/cgi-bin/enviarRecomendacion.pl', respuesta)
}

function enviarMiniFormSugerencias(formulario){
	var defaultRespuesta = "Ingrese aquí su sugerencia o comentario";
	var defaultEmail     = "Ingrese aquí su email";
	var defaultNombre    = "Ingrese aquí su nombre";

	if (formulario.Respuesta.value == defaultRespuesta){
		alert("Por favor ingrese su sugerencia o comentario.");
		formulario.Respuesta.focus();
		return;
	}

	if (formulario.Nombre.value == defaultNombre){
		alert("Por favor ingrese su nombre.");
		formulario.Nombre.focus();
		return;
	}

	if (formulario.Email.value == defaultEmail){
		alert("Por favor ingrese su email.");
		formulario.Email.focus();
		return;
	}

	formulario.TituloOrigen.value = document.title;
	formulario.UrlOrigen.value    = top.location;

	var respuesta = function(){
		if(http.readyState == 4){
			var response = http.responseText;
			if (response == "ok"){
				//ok
				alert("Muchas gracias por su sugerencia o comentario!");
				formulario.Respuesta.value = defaultRespuesta;
				formulario.Nombre.value = defaultNombre;
				formulario.Email.value = defaultEmail;
			}else{
				//error
				alert("Ha ocurrido un error al enviar la sugerencia o comentario. Le pedimos disculpas por las molestias ocasionadas.");
				if (formulario.Email.value == ""){
					formulario.Nombre.value = defaultNombre;
					formulario.Email.value = defaultEmail;
				}
			}
		}
	}

	sendRequest(formulario, '/cgi-bin/enviarSugerencia.pl', respuesta)
}



function enviarFormPregunta(formulario, statusPlaceHolder){

	var status = document.getElementById(statusPlaceHolder);

	if (formulario.Nombre.value == ""){
		alert("Por favor ingrese su nombre.");
		formulario.Nombre.focus();
		return;
	}
	if (formulario.Edad.value == ""){
		alert("Por favor seleccione su edad.");
		formulario.Edad.focus();
		return;
	}
	if (formulario.Pais.value == ""){
		alert("Por favor seleccione su país de residencia.");
		formulario.Pais.focus();
		return;
	}
	if (formulario.Email.value == ""){
		alert("Por favor ingrese su email.");
		formulario.Email.focus();
		return;
	}
	if (formulario.Categoria.value == ""){
		alert("Por favor seleccione la categoría a la que pertenece su pregunta. Si no lo sabe, seleccione 'Otra'.");
		formulario.Categoria.focus();
		return;
	}
	if (formulario.Pregunta.value == ""){
		alert("Por favor ingrese la pregunta que desee realizarnos.");
		formulario.Pregunta.focus();
		return;
	}

	if (! formulario.AceptoTerminos.checked)
	{
		alert("Antes de enviarnos la pregunta, debe marcar la opción\n\n     \"He leído y estoy de acuerdo con los términos y condiciones de uso\"     \n\nMuchas gracias.");
		return;
	}


	formulario.TituloOrigen.value = document.title;
	formulario.UrlOrigen.value    = top.location;

	var respuesta = function(){
		if(http.readyState == 4){
			var response = http.responseText;
			if (response != "error"){
				//ok
				status.innerHTML = "<div class='status enviado'><img src='/imagenes/icono-ok.gif' border=0 width=16 height=16 >&nbsp;Pregunta enviada!</div>";
				alert("Muchas gracias por enviarnos su pregunta.\n\nA la brevedad publicaremos la respuesta en el área destinada a\nresponder las preguntas de las usuarias y usuarios.");
				formulario.Nombre.value = "";
				formulario.Edad.value = "";
				formulario.SemanaEmbarazo.value = "";
				formulario.Pais.value = "";
				formulario.Email.value = "";
				formulario.Categoria.value = "";
				formulario.Pregunta.value = "";
				formulario.AceptoTerminos.checked = false;
			}else{
				//error
				status.innerHTML = "<div class='status error'><img src='/imagenes/icono-advertencia.gif' border=0 width=16 height=16 >&nbsp;Error en el envío de la pregunta.</div>";
				alert("Ha ocurrido un error al enviar su pregunta.\n\nLe pedimos disculpas por las molestias ocasionadas y le agradecemos nos la envíe por mail a:\n\n     preguntas@enelembarazo.com");
			}
		}
	}

	sendRequestWithStatus(formulario, '/cgi-bin/enviarPregunta.pl', respuesta, status, 'Enviando pregunta...')
}


function enviarFormNoticia(formulario, statusPlaceHolder){

	var status = document.getElementById(statusPlaceHolder);

	if (formulario.Nombre.value == ""){
		alert("Por favor ingrese su nombre.");
		formulario.Nombre.focus();
		return;
	}
	if (formulario.Email.value == ""){
		alert("Por favor ingrese su email.");
		formulario.Email.focus();
		return;
	}
	if (formulario.Titular.value == ""){
		alert("Por favor ingrese el titular de la noticia.");
		formulario.Titular.focus();
		return;
	}
	if (formulario.Noticia.value == ""){
		alert("Por favor ingrese el cuerpo de la noticia.");
		formulario.Noticia.focus();
		return;
	}
	if (formulario.Fuente.value == ""){
		alert("Por favor ingrese la fuente de la noticia.");
		formulario.Fuente.focus();
		return;
	}
	if (formulario.Autor.value == ""){
		alert("Por favor ingrese el autor de la noticia.");
		formulario.Autor.focus();
		return;
	}

	if (! formulario.AceptoTerminos.checked)
	{
		alert("Antes de enviarnos la noticia, debe marcar la opción\n\n     \"He leído y estoy de acuerdo con los términos y condiciones de uso\"     \n\nMuchas gracias.");
		return;
	}


	formulario.TituloOrigen.value = document.title;
	formulario.UrlOrigen.value    = top.location;

	var respuesta = function(){
		if(http.readyState == 4){
			var response = http.responseText;
			if (response == "ok"){
				//ok
				status.innerHTML = "<div class='status enviado'><img src='/imagenes/icono-ok.gif' border=0 width=16 height=16 >&nbsp;Noticia enviada!</div>";
				alert("Muchas gracias por enviarnos la noticia.\n\nA la brevedad la procesaremos y nos comunicaremos con Ud.");
				formulario.Nombre.value = "";
				formulario.Email.value = "";
				formulario.Titular.value = "";
				formulario.Noticia.value = "";
				formulario.Fuente.value = "";
				formulario.Autor.value = "";
				formulario.AceptoTerminos.checked = false;
			}else{
				//error
				status.innerHTML = "<div class='status error'><img src='/imagenes/icono-advertencia.gif' border=0 width=16 height=16 >&nbsp;Error en el envío de la noticia.</div>";
				alert("Ha ocurrido un error al enviar la noticia.\n\nLe pedimos disculpas por las molestias ocasionadas y le agradecemos nos la envíe por mail a:\n\n     noticias@enelembarazo.com");
			}
		}
	}

	sendRequestWithStatus(formulario, '/cgi-bin/enviarNoticia.pl', respuesta, status, 'Enviando noticia...')
}

function enviarFormSugerencia(formulario, statusPlaceHolder){

	var status = document.getElementById(statusPlaceHolder);

	if (formulario.Nombre.value == ""){
		alert("Por favor ingrese su nombre.");
		formulario.Nombre.focus();
		return;
	}
	if (formulario.Email.value == ""){
		alert("Por favor ingrese su email.");
		formulario.Email.focus();
		return;
	}
	if (formulario.Sugerencia.value == ""){
		alert("Por favor ingrese la sugerencia que desee realizarnos.");
		formulario.Sugerencia.focus();
		return;
	}

	formulario.TituloOrigen.value = document.title;
	formulario.UrlOrigen.value    = top.location;

	var respuesta = function(){
		if(http.readyState == 4){
			var response = http.responseText;
			if (response == "ok"){
				//ok
				status.innerHTML = "<div class='status enviado'><img src='/imagenes/icono-ok.gif' border=0 width=16 height=16 >&nbsp;Sugerencia enviada!</div>";
				alert("Muchas gracias por enviarnos su sugerencia.");
				formulario.Nombre.value = "";
				formulario.Email.value = "";
				formulario.Sugerencia.value = "";
			}else{
				//error
				status.innerHTML = "<div class='status error'><img src='/imagenes/icono-advertencia.gif' border=0 width=16 height=16 >&nbsp;Error en el envío de la sugerencia.</div>";
				alert("Ha ocurrido un error al enviar su sugerencia.\n\nLe pedimos disculpas por las molestias ocasionadas y le agradecemos nos la envíe por mail a:\n\n     sugerencias@enelembarazo.com");
			}
		}
	}

	sendRequestWithStatus(formulario, '/cgi-bin/enviarSugerencia.pl', respuesta, status, 'Enviando sugerencia...')
}


function enviarFormContacto(formulario, statusPlaceHolder){

	var status = document.getElementById(statusPlaceHolder);

	if (formulario.Nombre.value == ""){
		alert("Por favor ingrese su nombre.");
		formulario.Nombre.focus();
		return;
	}
	if (formulario.Email.value == ""){
		alert("Por favor ingrese su email.");
		formulario.Email.focus();
		return;
	}
	if (formulario.Pais.value == ""){
		alert("Por favor ingrese su país.");
		formulario.Pais.focus();
		return;
	}
	if (formulario.Mensaje.value == ""){
		alert("Por favor ingrese el mensaje que desea hacernos llegar.");
		formulario.Mensaje.focus();
		return;
	}

	formulario.TituloOrigen.value = document.title;
	formulario.UrlOrigen.value    = top.location;

	var respuesta = function(){
		if(http.readyState == 4){
			var response = http.responseText;
			if (response == "ok"){
				//ok
				status.innerHTML = "<div class='status enviado'><img src='/imagenes/icono-ok.gif' border=0 width=16 height=16 >&nbsp;Mensaje enviado!</div>";
				alert("Muchas gracias por enviarnos su mensaje.");
				formulario.Nombre.value = "";
				formulario.Email.value = "";
				formulario.Pais.value = "";
				formulario.Mensaje.value = "";
			}else{
				//error
				status.innerHTML = "<div class='status error'><img src='/imagenes/icono-advertencia.gif' border=0 width=16 height=16 >&nbsp;Error en el envío del mensaje.</div>";
				alert("Ha ocurrido un error al enviar su mensaje.\n\nLe pedimos disculpas por las molestias ocasionadas y le agradecemos nos la envíe por mail a:\n\n     contacto@enelembarazo.com");
			}
		}
	}

	sendRequestWithStatus(formulario, '/cgi-bin/enviarContacto.pl', respuesta, status, 'Enviando mensaje...')
}

function sendRequestWithStatus(form, url, handleResponse, status, message) {
	var parameters = "";

	for(var i = 0; i < form.length; i++){
		parameters += form[i].name + "=" + form[i].value.replace(/&/g, "%26") + "&"
	}

	http.open('POST', url);

	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http.setRequestHeader("Content-length", parameters.length);
	http.setRequestHeader("Connection", "close");

	http.onreadystatechange = handleResponse;

	status.innerHTML = "<div class='status enviando'><img src='/imagenes/loading.gif' border=0 width=16 height=16 >&nbsp;" + message + "</div>";
	http.send(parameters);
}

function addBookmark(title, url)
{
	if (window.sidebar)
	{
		window.sidebar.addPanel(title, url,""); 
	} 
	else if( document.all ) 
	{
		window.external.AddFavorite( url, title);
	} 
	else if( window.opera && window.print ) 
	{
		return true;
	}
}

var http = createRequestObject();

