/**********************************************************************************
****** Funciones JavaScript utilizadas en las páginas de la sección NOTICIAS
***********************************************************************************/
function printPage()
{
	var myUrl = (isInternetExplorer()) ? "" : "excusao/";
	myUrl += "imprimirExcusao07.asp";

	var windowName = "Imprimir";
	var windowOption = "toolbar=0,location=0,scrollbars=1,directories=0,status=0,menubar=0,resizable=1"; 
	var w = 700;
	var h = 550;
	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;
	windowOption += ",height=" + h + ",width=" + w + ",top=" + wint + ",left=" + winl + "resizable=0";
	window.open(myUrl,windowName,windowOption);
}

function participate(show,parent)
{
	var myUrl = (isInternetExplorer()) ? "" : "excusao/";
	myUrl += "alta_respuesta07.asp?parent=" + parent + "&show=" + show;
	document.location.href = myUrl;
}

var NUMBER_OF_DAYS_RESPONSE_NEW = 0;
var currentPosition = 0;
var currentQuestion;
var arrayParent;
var numberOfThreads = 0;
var numberOfNewRows = 0;
var objXML = false;
var isInProcess = false;

function buildUI(ids, maxNew)
{
	NUMBER_OF_DAYS_RESPONSE_NEW = maxNew;
	arrayParent = ids;
	numberOfThreads = ids.length;
	getChildren(arrayParent[currentPosition]);
}
function getChildren(thread)
{
	currentThread = thread;
	var currentTime = (new Date()).getTime();
	var param= 'id=' + currentThread + '&timestamp=' + currentTime;
	var URL = 'excusao/getAnswers07.asp?' + param;

	if (!isInProcess)
	{
		try
		{
			objXML = new ActiveXObject('Microsoft.XMLHTTP');
		}
		catch (e2)
		{
			objXML = false;
		}

		if (window.XMLHttpRequest)
			objXML = new XMLHttpRequest();

		if (!objXML && typeof XMLHttpRequest != 'undefined')
			objXML = new XMLHttpRequest();

		if (objXML)
		{
			isInProcess = true;
			objXML.open('GET', URL, true);
			objXML.onreadystatechange = buildAnswers;
			objXML.send(null);
		}
	}
}

function buildAnswers()
{
	/*
		Estructura del objeto JSON
		data
			id,respuesta,quien,fechas
	*/

	if (objXML.readyState == 4)
	{
		isInProcess = false;
		var rowsJSON = eval("(" + objXML.responseText + ")");
		var numberOfRows = rowsJSON.data.length;
		var HTML = "";
		var IMAGE_NEW_HTML = "";

		if (numberOfRows > 0)
		{
			var theTable = (document.all) ? document.all.excusao : document.getElementById("excusao");
			var theTableBody = theTable.tBodies[0];

			document.getElementById("row_" + currentThread).style.display = "none";

			// Recorremos la lista de respuestas al thread principal que estamos cargando
			for (var i = 0; i < numberOfRows; i++)
			{
				// Construimos el TR correspondiente a la respueta i
				var newRow = theTableBody.insertRow(currentPosition * 6 + 5 + numberOfNewRows);
				var firstCell = document.getElementById("firstRowspan_" + currentThread);
				firstCell.rowSpan = parseInt(firstCell.rowSpan, 10) + 1;

				if (dateDiff(rowsJSON.data[i].fechas,"D") < NUMBER_OF_DAYS_RESPONSE_NEW)
					IMAGE_NEW_HTML = "<img border=\"0\" src=\"imagenes/respuestaNuevo07.gif\">";
				else
					IMAGE_NEW_HTML = "<img border=\"0\" src=\"imagenes/respuesta07.jpg\">";

				// Cada columna de la nueva fila tiene unas características especiales
				var newCell;
				// Imagen
				newCell = newRow.insertCell(0);
				newCell.innerHTML = IMAGE_NEW_HTML;
				newCell.vAlign = "top";
				// Texto
				newCell = newRow.insertCell(1);
				newCell.colSpan = 3;
				newCell.align = "left";
				newCell.vAlign = "top";
				newCell.innerHTML = "<!--<span class=\"excusao_fecha\">" + rowsJSON.data[i].fechas + "</span>&nbsp;-->" +
				                    "<span class=\"excusao_respuesta\">" + rowsJSON.data[i].respuesta + "</span>&nbsp;" + 
									"<span class=\"excusao_autor\">" + rowsJSON.data[i].quien + "</span>";


				newRow = theTableBody.insertRow(currentPosition * 6 + 5 + numberOfNewRows + 1);
				firstCell.rowSpan = parseInt(firstCell.rowSpan, 10) + 1;
				newCell = newRow.insertCell(0);
				newCell.innerHTML = "<img border=\"0\" src=\"imagenes/transparent.gif\" height=\"5\">";
				newCell.colSpan = 4;
			}

			if (document.getElementById("solucion_" + currentThread) == null)
				numberOfNewRows += 2*numberOfRows;
			else
				numberOfNewRows += (2*numberOfRows + 1);
		}
		else
		{
			document.getElementById("row_" + currentThread).style.display = "none";
		}

		currentPosition++;
		if (currentPosition < numberOfThreads)
			getChildren(arrayParent[currentPosition]);
	}
}

/*
	Funciones que se utilizan en el formulario de respuesta
*/
function valida()
{
	//updateRTE('rte');
	//document.forms[0].elements["texto"].value = document.forms[0].elements["rte"].value;

	document.forms[0].elements["quien"].value     = LTrim(document.forms[0].elements["quien"].value);
	document.forms[0].elements["respuesta"].value = LTrim(document.forms[0].elements["respuesta"].value);

	if (document.forms[0].elements["quien"].value == "")
	{
		alert("Por favor, escribe tu nombre");
		document.forms[0].elements["quien"].focus();
		return false;
	}
	if (document.forms[0].elements["respuesta"].value == "")
	{
		alert("Por favor, escribe tu respuesta a la pregunta");
		document.forms[0].elements["respuesta"].focus();
		return false;
	}		

	return true;
}