var archivoAjax = "./tema_procesar.php";
var tablaComentarios;

function fn_LimpiarCamposControl ()
{
	document.frm_Datos.txt_HacerInsertComentario.value = "0";
	document.frm_Datos.txt_HacerCargarComentarios.value = "0";
	document.frm_Datos.txt_HacerBorrarComentario.value = "0";		
}

function fn_BloquearBotones ()
{
	document.getElementById ("tablaExterior").style.cursor = "wait";		

	document.getElementById ("btn_Buscar").style.cursor = "wait";
	document.getElementById ("btn_Buscar").disabled = true;
	
	document.getElementById ("btn_Ingresar").style.cursor = "wait";
	document.getElementById ("btn_Ingresar").disabled = true;

	document.getElementById ("btn_Ingresar_2").style.cursor = "wait";
	document.getElementById ("btn_Ingresar_2").disabled = true;

	document.frm_Datos.btn_Enviar.style.cursor = "wait";
	document.frm_Datos.btn_Enviar.disabled = true;
}

function fn_HabilitarBotones ()
{
	document.getElementById ("tablaExterior").style.cursor = "default";		

	document.getElementById ("btn_Buscar").style.cursor = "pointer";
	document.getElementById ("btn_Buscar").disabled = false;

	document.getElementById ("btn_Ingresar").style.cursor = "pointer";
	document.getElementById ("btn_Ingresar").disabled = false;

	document.getElementById ("btn_Ingresar_2").style.cursor = "pointer";
	document.getElementById ("btn_Ingresar_2").disabled = false;

	document.frm_Datos.btn_Enviar.style.cursor = "pointer";
	document.frm_Datos.btn_Enviar.disabled = false;	
}

function fn_ListaParametrosAjax ()
{
	var formulario = document.frm_Datos;
	var lista = "";

	lista = lista + "txt_HacerInsertComentario=" + formulario.txt_HacerInsertComentario.value;
	lista = lista + "&txt_HacerCargarComentarios=" + formulario.txt_HacerCargarComentarios.value;
	lista = lista + "&txt_HacerBorrarComentario=" + formulario.txt_HacerBorrarComentario.value;

	lista = lista + "&txt_IdComentario=" + formulario.txt_IdComentario.value;

	lista = lista + "&txt_Titulo=" + fn_Escape (trim (formulario.txt_Titulo.value));
	lista = lista + "&txt_Mensaje=" + fn_Escape (fn_ColocarSaltosDeLineaHTML (fn_QuitarBasuraExtremos (formulario.txt_Mensaje.value)));
	
	lista = lista + "&txt_IdTema=" + formulario.txt_Temp_Id.value;
	lista = lista + "&txt_TituloTema=" + fn_Escape (trim (formulario.txt_Temp_Titulo.value));
	lista = lista + "&txt_TituloUrl=" + fn_Escape (formulario.txt_Temp_TituloUrl.value);
	
	return lista;
}

function fn_EnviarComentario ()
{
	var formulario = document.frm_Datos;
	var textoMensaje = fn_QuitarBasuraExtremos (formulario.txt_Mensaje.value);
	
	if (textoMensaje == "")
	{
		alert ("El mensaje es obligatorio.");
		formulario.txt_Mensaje.focus ();
		return false;
	}	
	
	if (textoMensaje.length > 10000)
	{
		alert ("Superó el límite de 10000 caracteres para el mensaje.");
		formulario.txt_Mensaje.focus ();
		return false;
	}

	fn_LimpiarCamposControl ();
	fn_BloquearBotones ();
	
	formulario.txt_HacerInsertComentario.value = "-1";

	var parametrosAjax = fn_ListaParametrosAjax ();
	fn_InvocarAjax_Post (archivoAjax, parametrosAjax);
}

function fn_CargarComentarios ()
{
	fn_LimpiarCamposControl ();
	fn_BloquearBotones ();
	
	document.frm_Datos.txt_HacerCargarComentarios.value = "-1";

	var parametrosAjax = fn_ListaParametrosAjax ();
	fn_InvocarAjax_Post (archivoAjax, parametrosAjax);
}

function fn_InicioCargaComentarios ()
{
	document.frm_Datos.txt_Titulo.value = "";
	document.frm_Datos.txt_Mensaje.value = "";
	
	tablaComentarios = "";
	tablaComentarios = tablaComentarios + "<table id='tablaComentarios' border='0' width='100%' cellspacing='0' cellpadding='0'>";
	tablaComentarios = tablaComentarios + "	<tr>";
	tablaComentarios = tablaComentarios + "		<td colspan='3' style='padding-bottom:6px'>";
	tablaComentarios = tablaComentarios + "			<b><span id='spanTituloTablaComentarios' style='font-size:14px'></span></b>";
	tablaComentarios = tablaComentarios + "		</td>";
	tablaComentarios = tablaComentarios + "	</tr>";
}

function fn_AgregarComentario (contenido)
{
	tablaComentarios = tablaComentarios + contenido;
}

function fn_FinCargaComentarios (cantComentarios)
{
	tablaComentarios = tablaComentarios + "</table>";
	
	document.getElementById ("div_TablaComentarios").innerHTML = tablaComentarios;

	if (cantComentarios == "1")
		document.getElementById ("spanTituloTablaComentarios").innerHTML = "1 comentario";
	else
		document.getElementById ("spanTituloTablaComentarios").innerHTML = cantComentarios + "&nbsp;comentarios";
}

function fn_BorrarComentario (id)
{
	fn_LimpiarCamposControl ();
	fn_BloquearBotones ();
	
	document.frm_Datos.txt_HacerBorrarComentario.value = "-1";
	document.frm_Datos.txt_IdComentario.value = id;

	var parametrosAjax = fn_ListaParametrosAjax ();
	fn_InvocarAjax_Post (archivoAjax, parametrosAjax);
}

function fn_MostrarImagenAmpliada (width, height)
{
	var numWidth, numHeight, numLeft, numTop;
	var scrollbars = "no";
	var excedeWidth = false;
	var excedeHeight = false;
	
	numWidth = width + 44;
	numHeight = height + 238;
	numLeft = ((screen.availWidth / 2) - (numWidth / 2));
	numTop = ((screen.availHeight / 2) - (numHeight / 2));
	
	if (numWidth < 400)
		numWidth = 400;

	if (numWidth >= (screen.availWidth - 30))
	{
		numWidth = screen.availWidth - 30;
		numLeft = 10;
		scrollbars = "yes";
		excedeWidth = true;
	}

	if (numHeight >= (screen.availHeight - 80))
	{
		numHeight = screen.availHeight - 80;
		numTop = 0;
		scrollbars = "yes";
		excedeHeight = true;
	}
	
	if (excedeWidth && !excedeHeight)
		numHeight = numHeight + 18;
	else if (!excedeWidth && excedeHeight)
		numWidth = numWidth + 18;
		
	var ventanaPopUp = window.open ("", "popUpColaboras", "scrollbars=" + scrollbars + ",fullscreen=no,channelmode=no,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=yes,width=" + numWidth + ",height=" + numHeight + ",left=" + numLeft + ",top=" + numTop);
	
	if (!ventanaPopUp.opener)
		ventanaPopUp.opener = self;

	if (window.focus)
		ventanaPopUp.focus();
		
	return true;
}
