/*
 * Fichero para sobreescibir métodos de libreriaGlobal.js
 * 
 * autor: Fco. Javier Antúnez Ruiz, fjantunez@isotrol.com
 * autor: Miguel J. Jiménez, mjjimenez@isotrol.com
 * 
 * */

var baseEstaticoEspecifico = '/';
var baseImpeEspecifico = '';
var baseRecursosEspecifico = 'http://estaticos.cibersur.com/resources/';

/**************************************************************************************************************/


/*Función que crea la capa para el formulario de envio amigo. Recibe como parámetros:
 * logado, con valores true y false según el usuario está logado o no
 * texto1, el texto de titulo de la capa
 * texto2, el texto para la etiqueta de 'direcciones de destino'
 * texto3, el texto para la etiqueta de 'asunto'
 * texto4, el texto para la etiqueta de 'tu dirección de correo'
 * texto5, el texto para la etiqueta de 'tu nombre'
 * texto6, el texto para la etiqueta de 'comentario'
 * texto7, el texto para las normas de uso
 * texto8, el texto para la etiqueta del checkbox 'Enviar también a tu correo '
 * imgEnviar, la ruta de la imagen que es el botón de enviar
 * idNoticia, la url de la noticia
 * ruta, la sección del articulo
 * titulo, el titulo de la noticia
 * url, la url a la que se envia el formulario
 * basesEstatico, la ruta del directorio estatico
 * urlCaptcha, la ruta de la que obtener el captcha
 * */

envioAmigo.prototype.creaEnviaAmigo = function ( idNoticia, ruta, titulo, pagina, bases_estatico, url, urlCaptcha,
	texto1, texto2, texto3, texto4, texto5, texto6, texto7, texto8, imgEnviar)
{	
	/*textos y parametros temporales*/
	texto1 = 'Enviar la página por correo a:';
	texto2 = 'Direcciones de destino (*)';
	texto3 = 'Asunto';
	texto4 = 'Su dirección de correo (*)';
	texto5 = 'Su nombre';	
	texto6 = 'Comentario';
	texto7 = "Escriba las direcciones de correo a las que quieres enviar la información separadas por punto y coma (;).<br><br>Los campos marcados con (*) son obligatorios";
	texto8 = 'Enviar también a su correo';
	url = 'impe/enviaAmigo';
	bases_estatico = baseEstaticoEspecifico;
	imgEnviar = 'css/cssimg/botonEnvioAmigo.gif';

	var capaBloqueo = document.createElement('div');
	var body = document.getElementsByTagName('body')[0];
	capaBloqueo.id = "capaBloqueo";
	capaBloqueo.className = "estiloBloqueo";
	capaBloqueo.style.height = body.offsetHeight + "px";
	
	/*variable con el nombre del servidor. Puede ser necesario su cambio*/
	var servidor = '/cibersur/';
	

	var pieBloq1 = creaPieBloq();
	var pieBloq2 = creaPieBloq();
	var pieBloq3 = creaPieBloq();
	var pieBloq4 = creaPieBloq();
	
	var inputCaptcha = document.createElement('input');
	var imagenCaptcha = document.createElement('img');
	var recargaCaptcha = document.createElement('input');
	
	imagenCaptcha.src= urlCaptcha;
	imagenCaptcha.id="captchaEA";
	inputCaptcha.className = "inputEnvioAmigoT2";
	inputCaptcha.id = "inpCaptchaEA";
	inputCaptcha.style.width = "85px";
	inputCaptcha.style.verticalAlign = "top";
	inputCaptcha.style.marginLeft = "5px";
	inputCaptcha.setAttribute("name", "codigo");
	recargaCaptcha.className = "botonRecargarT2";
	recargaCaptcha.value = "Recargar";
	recargaCaptcha.onclick = function () 
	{
		reemplazarCaptcha(urlCaptcha, imagenCaptcha.id)
	}
	
	var rutaVar = document.createElement('input');
	rutaVar.setAttribute('type', 'hidden');
	rutaVar.setAttribute('name', 'seccion');
	rutaVar.setAttribute('id', 'seccion');
	rutaVar.setAttribute('value', ruta);
	
	var idNot = document.createElement('input');
	idNot.setAttribute('type', 'hidden');
	idNot.setAttribute('name', 'idNoticia');
	idNot.setAttribute('id', 'idNoticia');
	idNot.setAttribute('value', idNoticia);
	
	var pag = document.createElement('input');
	pag.setAttribute('type', 'hidden');
	pag.setAttribute('name', 'ruta');
	pag.setAttribute('id', 'ruta');
	pag.setAttribute('value', pagina);
	
	var tituloNoticia = document.createElement('input');
	tituloNoticia.setAttribute('type', 'hidden');
	tituloNoticia.setAttribute('name', 'titulo');
	tituloNoticia.setAttribute('id', 'titulo');
	tituloNoticia.setAttribute('value', titulo);
	
	var formatoMail = document.createElement('input');
	formatoMail.setAttribute('type', 'hidden');
	formatoMail.setAttribute('name', 'formato');
	formatoMail.setAttribute('value', "html");
	
	var contenedorEnvioAmigo = document.createElement('div');
	contenedorEnvioAmigo.className = 'contenedorEnvioAmigo';
	contenedorEnvioAmigo.id = 'contenedorEnvioAmigo';
	
	var subcontenedorEnvioAmigo = document.createElement('div');
	subcontenedorEnvioAmigo.className = 'subcontenedorEnvioAmigo';

	var cerrarEnvioAmigo = document.createElement('div');
	cerrarEnvioAmigo.className = 'cerrarEnvioAmigo';
	
	var imgCerrar = document.createElement('img');
	imgCerrar.alt = "cerrar";
	imgCerrar.className = "puntero";
	imgCerrar.src = bases_estatico + 'css/cssimg/xBlancaSobreFondoGris.gif';
	imgCerrar.onclick = function () {objEnvioAmigo.closeEnvioAmigo(urlCaptcha,'captchaComentario');}; // Cerramos y recargamos el captcha de los comentarios
	cerrarEnvioAmigo.appendChild(imgCerrar);
	
	var formEnvioAmigo = document.createElement('form');
	formEnvioAmigo.className = "formEnvioAmigo";
	formEnvioAmigo.id = 'formEnvioAmigo';
	formEnvioAmigo.setAttribute('method', 'get');
	formEnvioAmigo.setAttribute('action', bases_estatico+url);
	
	var contenidoFormulario = document.createElement('div');
	contenidoFormulario.className = 'contenidoFormulario';
	
	var tituloEnvioAmigo = document.createElement('div');
	tituloEnvioAmigo.className = 'tituloEnvioAmigo';
	tituloEnvioAmigo.innerHTML = texto1;
	
	
/* Elementos de la primera linea */
	var l1b1 = document.createElement('div');
	l1b1.className = 'envioAmigoIzq';
	
	var label1 = document.createElement('label');
	label1.className = 'labelEnvioAmigo';
	label1.setAttribute('for', 'destino');
	label1.innerHTML = texto2;
	var input1 = document.createElement('input');
	input1.className = 'inputEnvioAmigo';
	input1.setAttribute('type', 'text');
	input1.setAttribute('name', 'destino');
	input1.setAttribute('id', 'destino');
	
	l1b1.appendChild(label1);
	l1b1.appendChild(input1);	
	
	var l1b2 = document.createElement('div');
	l1b2.className = 'envioAmigoDrc';
	
	var label2 = document.createElement('label');
	label2.className = 'labelEnvioAmigo';
	label2.setAttribute('for', 'asunto');
	label2.innerHTML = texto3;
	var input2 = document.createElement('input');
	input2.className = 'inputEnvioAmigo';
	input2.setAttribute('type', 'text');
	input2.setAttribute('name', 'asunto');
	input2.setAttribute('id', 'asunto');

	l1b2.appendChild(label2);
	l1b2.appendChild(input2);	

/*Elementos de la segunda linea*/
	var l2b1 = document.createElement('div');
	l2b1.className = 'envioAmigoIzq';
	
	var label3 = document.createElement('label');
	label3.className = 'labelEnvioAmigo';
	label3.setAttribute('for', 'tuCorreo');
	label3.innerHTML = texto4;
	var input3 = document.createElement('input');
	input3.className = 'inputEnvioAmigo';
	input3.setAttribute('type', 'text');
	input3.setAttribute('name', 'tuCorreo');
	input3.setAttribute('id', 'tuCorreo');
	
	l2b1.appendChild(label3);
	l2b1.appendChild(input3);	
	
	var l2b2 = document.createElement('div');
	l2b2.className = 'envioAmigoDrc';
	
	var label4 = document.createElement('label');
	label4.className = 'labelEnvioAmigo';
	label4.setAttribute('for', 'tuNombre');
	label4.innerHTML = texto5;
	var input4 = document.createElement('input');
	input4.className = 'inputEnvioAmigo';
	input4.setAttribute('type', 'text');
	input4.setAttribute('name', 'tuNombre');
	input4.setAttribute('id', 'tuNombre');
	
	l2b2.appendChild(label4);
	l2b2.appendChild(input4);
	
/*Elementos de la tercera linea*/	
	var l3b1 = document.createElement('div');
	l3b1.className = 'envioAmigoIzq';
	
	var label5 = document.createElement('label');
	label5.className = 'labelEnvioAmigo';
	label5.setAttribute('for', 'comentario');
	label5.innerHTML = texto6;
	
	var area = document.createElement('textarea');
	area.className = 'areaEnvioAmigo';
	area.setAttribute('name', 'comentario');
	area.setAttribute('id', 'comentarioEA');
	
	l3b1.appendChild(label5);
	l3b1.appendChild(area)

	
	var l3b2 = document.createElement('div');
	l3b2.className = 'envioAmigoDrc';
	
	var usoEnvioAmigo = document.createElement('div');
	usoEnvioAmigo.className = 'usoEnvioAmigo';
	usoEnvioAmigo.innerHTML = texto7;
	
	var bloqCheck = document.createElement('div');
	bloqCheck.className = 'bloqCheck';
	
	var input5 = document.createElement('input');
	input5.setAttribute('type', 'checkbox');
	input5.setAttribute('name', 'enviarAMi');
	input5.setAttribute('id', 'enviarAMi');
	
	var label6 = document.createElement('label');
	label6.className = 'labelEnvioAmigo';
	label6.setAttribute('for', 'enviarAMi');
	label6.innerHTML = texto8;
	
	bloqCheck.appendChild(input5);
	bloqCheck.appendChild(label6);
	
	var botonEnvioAmigo = document.createElement('img');
	botonEnvioAmigo.className = 'botonEnvioAmigo';
	botonEnvioAmigo.src = bases_estatico + imgEnviar;
	botonEnvioAmigo.onclick = function (e) {
		if (objEnvioAmigo.comprobarFormulario() == true)	
			objEnvioAmigo.envioCorreo(urlCaptcha, servidor + url + "?" + formEnvioAmigo.serialize());
	};
	
	l3b2.appendChild(usoEnvioAmigo);
	l3b2.appendChild(botonEnvioAmigo);	
	
	
	var l4b1 = document.createElement('div');
	l4b1.className ="envioAmigoIzq margen_sup5px";
	
	l4b1.appendChild(imagenCaptcha);
	l4b1.appendChild(inputCaptcha);
	
	var l4b2 = document.createElement('div');
	l4b2.className ="envioAmigoDrc margen_sup5px";
	
	l4b2.appendChild(recargaCaptcha);
	l4b2.appendChild(botonEnvioAmigo);
	l4b2.appendChild(bloqCheck);

	var br = document.createElement('br');

	
	
/*Reuno todos los elementos*/
	contenidoFormulario.appendChild(tituloEnvioAmigo);
	contenidoFormulario.appendChild(l1b1);
	contenidoFormulario.appendChild(l1b2);	
	contenidoFormulario.appendChild(pieBloq1);
	contenidoFormulario.appendChild(l2b1);
	contenidoFormulario.appendChild(l2b2);	
	contenidoFormulario.appendChild(pieBloq2);
	contenidoFormulario.appendChild(l3b1);
	contenidoFormulario.appendChild(l3b2);	
	contenidoFormulario.appendChild(pieBloq3);
	contenidoFormulario.appendChild(l4b1);
	contenidoFormulario.appendChild(l4b2);	
	contenidoFormulario.appendChild(pieBloq4);
	contenidoFormulario.appendChild(idNot);
	contenidoFormulario.appendChild(rutaVar);
	contenidoFormulario.appendChild(pag);	
	contenidoFormulario.appendChild(tituloNoticia);	
	contenidoFormulario.appendChild(formatoMail);
	
	formEnvioAmigo.appendChild(contenidoFormulario);
	
	subcontenedorEnvioAmigo.appendChild(cerrarEnvioAmigo);
	subcontenedorEnvioAmigo.appendChild(formEnvioAmigo);
	
	body.appendChild(contenedorEnvioAmigo);	
	contenedorEnvioAmigo.appendChild(subcontenedorEnvioAmigo);	
	body.appendChild(capaBloqueo);
	
	
	/* cálculo de la altura versión IE*/
	if(document.all)
	{
		var posY = (document.body.scrollTop || document.documentElement.scrollTop || 0) 
			+ Math.floor(document.documentElement.clientHeight / 2) - Math.floor(contenedorEnvioAmigo.offsetHeight / 2);
		var posX = Math.floor(document.body.clientWidth  / 2) - Math.floor(contenedorEnvioAmigo.offsetWidth / 2) 
			- (document.body.scrollLeft || document.documentElement.scrollLeft || 0);
		
	}
	/* cálculo de la altura versión Firefox*/
	else
	{
		var posY = window.scrollY + Math.floor(window.innerHeight / 2) - Math.floor(contenedorEnvioAmigo.offsetHeight / 2);
		var posX = Math.floor(window.innerWidth / 2) - Math.floor(contenedorEnvioAmigo.offsetWidth / 2) - window.scrollX;
	}	
	
	posY = (posY < 0) ? 0 : posY;
	contenedorEnvioAmigo.style.top = posY + "px";	
	posX = (posX < 0) ? 0 : posX;		
	contenedorEnvioAmigo.style.left = posX + "px";
}


/**
 * Abre en una ventana la ampliación de la imagen de una noticia
 */
function abrirAmpliacion(url, titulo, autor, pie, alto, ancho)
{
	var imagen = new Image();
	var pieAncho = 0;
	var altoImagen = 0;
	var anchoImagen = 0;
	var ventanaAmpliacion = null;
	var docAmpliacion = null;
	
	imagen.onload = function()
	{
		altoImagen = imagen.height;
		anchoImagen = imagen.width;		
		
		if (trim(alto) != "")
			alto = parseInt(alto) + 15;
		else
			alto = altoImagen + 15;
			
		if (parseInt(alto) > 0 && trim(pie) != "")
			alto = parseInt(alto) + 80;
			
		if (trim(ancho) != "")
		{
			pieAncho = ancho;
			ancho = parseInt(ancho) + 30;
		}
		else
		{
			pieAncho = anchoImagen;
			ancho = anchoImagen + 30;
		}		
				
		ventanaAmpliacion = window.open('about:blank','', 'height=' + alto + ', width=' + ancho + ', resizable=1');
		docAmpliacion = ventanaAmpliacion.document;
		docAmpliacion.write("<html><head><title>CIBERSUR</title></head><body>");
		docAmpliacion.write("<div style=\"width: " + pieAncho + "px;\">");
		docAmpliacion.write("<img src=\"" + url + "\" alt=\"" + titulo + "\">");
		
		if (trim(autor) != "")
			autor = autor + " - ";
		
		docAmpliacion.write("<div style=\"background-color: #F3F3F3; padding: 2px; font-size: 11px; font-family: Arial, Helvetica, sans-serif; font-weight: bold;\">" + autor + pie + "</div>");
		docAmpliacion.write("</div>");
		docAmpliacion.write("</body>");
		docAmpliacion.close();
		
	};
	
	imagen.src = url;
}

function votacionArticulo () 
{
		
}
var objVotacionArticulo = new votacionArticulo();


votacionArticulo.prototype.votaArticulo = function (idNoticia, idVotacion, valorVoto, url) {
	var altura = document.getElementById ("zonaVotos").offsetHeight + 30;
	var anchura = document.getElementById ("zonaVotos").offsetWidth + 30;
	var opaca = creaCapaOpaca(altura, anchura);
new Ajax.Request(url, {   
			parameters: '?idNoticia='+idNoticia+'&valorVoto='+valorVoto ,
			asynchronous: false,
			method: 'get',   
			onSuccess: function(respuesta) 
				{     
					//objGaleriaFS.actualizaVotacionFS(idVotacion, valorVoto);	
					var cadena = respuesta.responseText;
					cadena = trim(cadena);
					var inicio = cadena.indexOf("<error>");
					var fin = cadena.indexOf("</error>");
					if (inicio != -1 && fin != -1)
					{						
						var padre = document.getElementById("zonaVotos");
						var mensaje = cadena.substring (inicio + 7 , fin);
						setTextoOpaca(opaca, mensaje)
						document.body.style.cursor = "default"; 				
						padre.appendChild(opaca);				
					}
					else 
					{				
						setTextoOpaca(opaca, cadena);
					}
				}, 
			onFailure: function(respuesta) 
				{     				
					objMensaje.creaMensaje(respuesta.responseText);
				}		
		});
}

/*
* FunciÃ³n que crea la ventana de un aviso. Recibe como parÃ¡metros
* idContenedor, el id de la capa que es referencia para mostrar el mensaje
* texto, el texto del mensaje
* tipoAviso, un boolean. Con true significa que el aviso es un error. 
* */

mensajeAviso.prototype.creaAviso = function (idContenedor, texto, tipoAviso)
{
	var	bases_estatico = baseEstaticoEspecifico;

	var capaBloqueo = document.createElement('div');
	var body = document.getElementsByTagName('body')[0];
	capaBloqueo.id = "capaBloqueo";
	capaBloqueo.className = "estiloBloqueo";
	capaBloqueo.style.height = body.offsetHeight + "px";


	var contenedorMensajeAviso = document.createElement('div');
	contenedorMensajeAviso.className = 'contenedorMensajeAviso';
	contenedorMensajeAviso.id = 'contenedorMensajeAviso';

	var subcontenedorMensajeAviso = document.createElement('div');
	if(tipoAviso == true)
	{
		subcontenedorMensajeAviso.className = 'subcontenedorMensajeAviso';
	}
	else
	{
		subcontenedorMensajeAviso.className = 'subcontenedorMensajeAviso2';
	}
	contenedorMensajeAviso.appendChild(subcontenedorMensajeAviso);

	var xBlancaSobreFondoGris = document.createElement('div');
	xBlancaSobreFondoGris.className = 'xBlancaSobreFondoGris';
	subcontenedorMensajeAviso.appendChild(xBlancaSobreFondoGris);

	var imgCerrar = document.createElement('img');
	imgCerrar.alt = "cerrar";
	imgCerrar.className = "puntero";
	imgCerrar.src = bases_estatico + 'css/cssimg/xBlancaSobreFondoGris.gif';
	imgCerrar.onclick = function () {objMensajeAviso.closeMensajeAviso(); };	
	xBlancaSobreFondoGris.appendChild(imgCerrar);

	var contenidoMensajeAviso = document.createElement('div');
	contenidoMensajeAviso.className = 'contenidoMensajeAviso';
	subcontenedorMensajeAviso.appendChild(contenidoMensajeAviso);

	var tituloContenidoMensajeAviso = document.createElement('div');
	tituloContenidoMensajeAviso.className = 'tituloContenidoMensajeAviso';
	if(tipoAviso == true)
	{
		tituloContenidoMensajeAviso.innerHTML = 'Error';
	}
	contenidoMensajeAviso.appendChild(tituloContenidoMensajeAviso);

	var subtituloContenidoMensajeAviso = document.createElement('div');
	subtituloContenidoMensajeAviso.className = 'subtituloContenidoMensajeAviso';
	contenidoMensajeAviso.appendChild(subtituloContenidoMensajeAviso);

	var mensajeAviso = document.createElement('div');
	mensajeAviso.className = 'mensajeAviso';
	mensajeAviso.innerHTML = texto;
	contenidoMensajeAviso.appendChild(mensajeAviso);
	
	//document.getElementById(idContenedor).appendChild(contenedorMensajeAviso);
	
	
	body.appendChild(capaBloqueo);
		body.appendChild(contenedorMensajeAviso);
	
	/* cÃ¡lculo de la altura versiÃ³n IE*/
	if(document.all)
	{
		var posY = (document.body.scrollTop || document.documentElement.scrollTop || 0) 
			+ Math.floor(document.documentElement.clientHeight / 2) - Math.floor(contenedorMensajeAviso.offsetHeight / 2);
		var posX = Math.floor(document.body.clientWidth  / 2) - Math.floor(contenedorMensajeAviso.offsetWidth / 2) 
			- (document.body.scrollLeft || document.documentElement.scrollLeft || 0);
		
	}
	/* cÃ¡lculo de la altura versiÃ³n Firefox*/
	else
	{
		var posY = window.scrollY + Math.floor(window.innerHeight / 2) - Math.floor(contenedorMensajeAviso.offsetHeight / 2);
		var posX = Math.floor(window.innerWidth / 2) - Math.floor(contenedorMensajeAviso.offsetWidth / 2) - window.scrollX;
	}	
		
	posY = (posY < 0) ? 0 : posY;
	contenedorMensajeAviso.style.top = posY + "px";	
	posX = (posX < 0) ? 0 : posX;		
	contenedorMensajeAviso.style.left = posX + "px";
}


