// JavaScript Document
//alert("Prensa_js cargado");
//Declarar el HTMLPanel	
var panelPrensa = null;
//Declarar los datasets	
var dsIdiomaPrensa = null;
var dsForm = null;
var dsFormObserver = new Object;
var dsFormNewsObserver = new Object;
//window.onload = initNoticias;
Spry.Utils.addLoadListener (initPrensa);

function initPrensa(){
	//alert("initPrensa");
	initIdiomaGeneral();
	initIdiomaProyectosCat();
	initPrensaHTMLPanel()
	//initPrensaFormato();
	//initPrensaScroll();
}
function initIdiomaGeneral(){
	dsIdiomaGeneral = new Spry.Data.XMLDataSet("/xml/global/general.xml", "/oab/general", { useCache: false});
	dsMenu1 = new Spry.Data.NestedXMLDataSet(dsIdiomaGeneral, "menu1/idioma" + idiomaClien, { useCache: false});
	dsIdioma = new Spry.Data.NestedXMLDataSet(dsIdiomaGeneral, "idioma/idioma" + idiomaClien, { useCache: false});
	dsBuscador = new Spry.Data.NestedXMLDataSet(dsIdiomaGeneral, "buscador/idioma" + idiomaClien, { useCache: false});
	//dsTexto = new Spry.Data.NestedXMLDataSet(dsIdiomaGeneral, "texto/idioma" + idiomaClien, { useCache: false});
	//dsMenu1.addObserver(dsMenu1Observer);
}

function initIdiomaProyectosCat(){
	dsIdiomaPrensa = new Spry.Data.XMLDataSet("/xml/prensa/prensa_idioma.xml", "/prensa", { useCache: false});
	//alert("idiomaClien " + idiomaClien);
	dsMenu2 = new Spry.Data.NestedXMLDataSet(dsIdiomaPrensa, "menu2/idioma" + idiomaClien +"", { useCache: false});
	//dsForm = new Spry.Data.NestedXMLDataSet(dsIdiomaPrensa, "contacto/idioma" + idiomaClien +"", { useCache: false});
	//dsForm.addObserver(dsFormObserver);
	//dsMenu2.addObserver(dsMenu2Observer);
	//dsIdiomaEstudio.addObserver(dsIdiomaEstudioObserver);
	//Añadir una función como observer a la Region: menu2 para controlar cuando ha cargado (escrito)los datos en la pag html.
	Spry.Data.Region.addObserver("menu2", regMenu2Observer);
}

//Función como observer de la Region: menu2 para controlar cuando ha cargado (escrito)los datos
function regMenu2Observer(notificationState, notifier, data){
	if (notificationState == "onPreUpdate"){
		//alert(notifier + " is starting an update!");
	}
	else if (notificationState == "onPostUpdate"){
		//alert(notifier.id + " is done updating!");
		//despues de realizar la carga añadir eventos a los tags cargados
		initPrensaFormato();
		initMenu2Ev();
	}
}

function initPrensaHTMLPanel(){
	// Enable the ability to execute script for *every*  HTMLPanel that is created.
	Spry.Widget.HTMLPanel.evalScripts = true;
	// Create an HTMLPanel for the element with the id of "contPanelPrensa".
	panelPrensa = new Spry.Widget.HTMLPanel("contPanelPrensa");
	//Añadir un Observer al hpanel para comprovar su estado
	panelPrensa.addObserver(prensaHTMLPanelObserverFunc);
	//Cargar el fragNewsletterPrensa por defecto
	//panelPrensa.loadContent("prensaFrags/fragNewsletterPrensa.php?men="+men);
	panelPrensa.loadContent("prensaFrags/fragNewsletterPrensa.html");
	
}

// Add a function as an observer of the panelPrensa.
// http://labs.adobe.com/technologies/spry/articles/html_panel/index.html#notifications
function prensaHTMLPanelObserverFunc(notificationType, notifier, data){
	if (notificationType == "onPostUpdate"){
		//Comprovar si el frag cargado es de los que tiene funcionalidad Javascript
		var newsletterPrensa = document.getElementById("newsletterPrensa");
		if (newsletterPrensa != null){
			//Iniciar el frag fragNewsletterPrensa.js;
			//alert("initNewsletterPrensa");
			initNewsletterPrensa();
		}
		var contactoPrensa = document.getElementById("contactoPrensa");
		if (contactoPrensa != null){
			//Iniciar el frag fragContactoPrensa.js;
			//alert("initContactoPrensa");
			initContactoPrensa();
		}
		var downloads = document.getElementById("downloads");
		if (downloads != null){
			//Iniciar el frag fragDownloads.js;
			//alert("initDownloads");
			initDownloads();
		}
	}
}

function initPrensaFormato(){
	//Colorear por defecto
	divIdColor('prensa', '#FF0000');
	divIdColor('newsletter', '#FF0000');
}
function initMenu2Ev(){
	//cambiaMenu2Color
	// alert("cambiaMenu2Color");
	Spry.$$("#newsletter").addEventListener("click", cambiaMenu2Color, false);
	Spry.$$("#contactoOp").addEventListener("click", cambiaMenu2Color, false);
	Spry.$$("#downloads").addEventListener("click", cambiaMenu2Color, false);
}
//---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
function initContactoPrensa(){
	//alert("initContactoPrensa");
	dsForm = new Spry.Data.NestedXMLDataSet(dsIdiomaPrensa, "contacto/idioma" + idiomaClien +"", { useCache: false});
	dsTextoContactoPrensa = new Spry.Data.XMLDataSet("/php/prensaDis.php?accion=contacto&idioma=" + idiomaClien, "tabla/row", { useCache: false});
	dsTextoContactoPrensa.setColumnType("texto", "html");
	dsForm.addObserver(dsFormObserver);
	Spry.Data.initRegions();
}
dsFormObserver.onPreLoad = function(dataSet, data){
	// var rows = dsForm.getData();
	// alert(rows.length);
};
dsFormObserver.onPostLoad = function(dataSet, data){
	// var rows = dsForm.getData();
	// alert(rows.length);
};
dsFormObserver.onLoadError = function(dataSet, data){
/*	alert("onLoadError dsMenu1Observer \nUrl: " + data.url +
	"\nxhRequest.statusText: " + data.xhRequest.statusText +
	"\nxhRequest.readyState: " + data.xhRequest.readyState);*/
};
function validarPrensaContacto(frm) {
	if (frm.usuario.value.length < 2) {
		//alert('Escriba por lo menos 4 caracteres en el campo "Nombre".');
		frm.usuario.focus();
		Spry.$$("#usuario").setStyle("border-color:#FF0000;");
		return (false);
	}
	Spry.$$("#usuario").setStyle("border-color:#333333;");
	if (frm.password.value.length < 2) {
		//alert('Escriba por lo menos 4 caracteres en el campo "Nombre".');
		frm.password.focus();
		Spry.$$("#password").setStyle("border-color:#FF0000;");
		return (false);
	}
	Spry.$$("#password").setStyle("border-color:#333333;");
	return true;
}
//---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
function initNewsletterPrensa(){
	//alert("initNewsletterPrensa " + idiomaClien);
	dsFormNews = new Spry.Data.NestedXMLDataSet(dsIdiomaPrensa, "newsletter/idioma" + idiomaClien +"", { useCache: false});
	//dsForm = new Spry.Data.XMLDataSet("/xml/prensa/prensa_idioma.xml", "/prensa/contacto/idioma" + idiomaClien +"", { useCache: false});
	dsFormNews.addObserver(dsFormNewsObserver);
	Spry.Data.initRegions();
}
dsFormNewsObserver.onPreLoad = function(dataSet, data){
	// var rows = dsForm.getData();
	// alert(rows.length);
};
dsFormNewsObserver.onPostLoad = function(dataSet, data){
	//var rows = dsFormNews.getData();
	//alert(rows.length);
};
dsFormNewsObserver.onLoadError = function(dataSet, data){
/*	alert("onLoadError dsMenu1Observer \nUrl: " + data.url +
	"\nxhRequest.statusText: " + data.xhRequest.statusText +
	"\nxhRequest.readyState: " + data.xhRequest.readyState);*/
};
function validarPrensaNewsletter(frm) {
	if (frm.FirstName.value.length < 2) {
		//alert('Escriba por lo menos 4 caracteres en el campo "Nombre".');
		frm.FirstName.focus();
		Spry.$$("#FirstName").setStyle("border-color:#FF0000;");
		return (false);
	}
	Spry.$$("#FirstName").setStyle("border-color:#333333;");
	if (frm.LastName.value.length < 2) {
		//alert('Escriba por lo menos 4 caracteres en el campo "Nombre".');
		frm.LastName.focus();
		Spry.$$("#LastName").setStyle("border-color:#FF0000;");
		return (false);
	}
	Spry.$$("#LastName").setStyle("border-color:#333333;");
	if ((/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(frm.mail.value)) == false){
		frm.mail.focus();
		Spry.$$("#mail").setStyle("border-color:#FF0000;");
		return (false);
	}
	Spry.$$("#mail").setStyle("border-color:#333333;");
	if (frm.Telephone.value.length < 9) {
		//alert('Escriba por lo menos 4 caracteres en el campo "Nombre".');
		frm.Telephone.focus();
		Spry.$$("#Telephone").setStyle("border-color:#FF0000;");
		return (false);
	}
	Spry.$$("#Telephone").setStyle("border-color:#333333;");
	return true;
}