var xmlDoc;
var moreInf = 'más información »';
var css_contenedor;
var css_PaginasContenedor;
var css_contenedorPags;
var css_ItemsDate;
var css_ItemsTitle;
var css_TituloRSS;
var dirImages;
var targetInf;
var itemstoShow;
var cssRSS;
/////
var iconItem = true;
var rollOverTitle = true;
var paginar = true;
var actualPage = 0;
var items;
/////
var rssList = new Array();
var indiceActual = 0;
var RSS_CREATE;
var tryOut = 0;
var showAnswer = false;
var loopPages = false;
var idIntervalRSS;
//
function createRSS() {
	//
	indiceActual = 0;
	RSS_CREATE = arguments;
	document.getElementById('RSS').innerHTML = '';
	rssList[indiceActual] = null;
	runRSS();
	//
}
function refreshRSS() {
	indiceActual = 0;
	runRSS();
}
function createCSS() {
	cssRSS = arguments;
}
function runRSS() {
	//////
	itemstoShow = document.getElementById('rss_showItems').value;
	dirImages = document.getElementById('rss_pathImages').value;
	targetInf = document.getElementById('rss_target').value;
	moreInf = document.getElementById('rss_moreInf').value;
	//
	if (cssRSS.length != 0) {
		css_contenedor = cssRSS[indiceActual];
	} else {
		css_contenedor = document.getElementById('rss_css').value;
	}
	//
	css_TituloRSS = document.getElementById('rss_tituloRSS').value;
	css_PaginasContenedor = document.getElementById('rss_cssContentPags').value;
	css_ItemsTitle = document.getElementById('rss_cssItemsTitle').value;
	css_ItemsDate = document.getElementById('rss_cssItemsDate').value;
	css_ItemsSubject = document.getElementById('rss_cssItemsSubject').value;
	css_ItemsAnswer = document.getElementById('rss_cssItemsAnswer').value;
	css_contenedorPags = document.getElementById('rss_csspags').value;
	//////
	if (indiceActual < RSS_CREATE.length) {
		if (rssList[indiceActual] == null) {
			//
			var rssData = new Object();
			rssData.URL = RSS_CREATE[indiceActual];
			rssData.Name = 'RSS_'+indiceActual;
			rssData.pages = new Array();
			rssList[indiceActual] = rssData;
			//
		}
		// 
		rssList[indiceActual].NumberofPages = 0;
		rssList[indiceActual].actualPage = 0;
		//validaciones
		if (moreInf == null) {
			moreInf = 'más información »';
		}
		// 
		if (css_contenedor == null) {
			css_contenedor = 'content_rss';
		}
		// 
		if (dirImages == null) {
			dirImages = 'images/';
		}
		// 
		if (targetInf == null) {
			targetInf = '_blank';
		}
		// 
		if (css_contenedorPags == null) {
			css_contenedorPags = 'contentPags_rss';
		}
		// 
		var RSSDiv = document.getElementById('RSS');
		//LISTADO	
		if (rssList[indiceActual].DivList == null) {
			rssList[indiceActual].DivList = newDivIS21(rssList[indiceActual].Name+'_List', '', '', RSSDiv);
		} else {
			clearHTML(rssList[indiceActual].DivList.id);
		}
		//PAGINADOR
		if (rssList[indiceActual].DivPages == null) {
			rssList[indiceActual].DivPages = newDivIS21(rssList[indiceActual].Name+'_Pags', '', 'paginador', RSSDiv);
		} else {
			clearHTML(rssList[indiceActual].DivPages.id);
		}
		//
		document.getElementById(rssList[indiceActual].DivList.id).innerHTML = '<div class="loader"><img src="'+dirImages+'cargando.gif" width="24" height="24"><label>Cargando RSS</label></div>';
		//
		createLoadXML(indiceActual);
	}
}
/////////////////////////////////////////////////////////////////////////////////////
// Muestra la createLoadXML
/////////////////////////////////////////////////////////////////////////////////////
function createLoadXML(indice) {
	loadXMLHttpRequest(rssList[indice].URL, getmessage, null);
}
/////////////////////////////////////////////////////////////////////////////////////
// Muestra clearHTML
/////////////////////////////////////////////////////////////////////////////////////
function clearHTML(id) {
	document.getElementById(id).innerHTML = '';
}
/////////////////////////////////////////////////////////////////////////////////////
// Muestra la Descripción o la Respuesta Respectiva
/////////////////////////////////////////////////////////////////////////////////////
function getmessage(objectRequest) {
	//
	var XpathIDValue = "/rss/channel/item";
	var XpathTitle = "/rss/channel/title/text()";
	var XpathTitleIcon = "/rss/channel/image/url/text()";
	var XpathDescription = "/rss/channel/text()";
	var titulo = "title/text()";
	var desciption = "description/text()";
	var pubDate = "pubDate/text()";
	var linked = "link/text()";
	var subject = "subject/text()";
	//
	actualRSSObjectXMLDoc = objectRequest.responseXML;
	var actualRSS_array = actualRSSObjectXMLDoc.selectNodes(XpathIDValue);
	var RSSDiv = document.getElementById(rssList[indiceActual].DivList.id);
	RSSDiv.innerHTML = '';
	//
	var tituloActual;
	var tituloIconActual;
	//
	var actualTitleRSS = actualRSSObjectXMLDoc.selectNodes(XpathTitle);
	if (actualTitleRSS.length>0) {
		tituloActual = actualTitleRSS[0].nodeValue;
	}
	var actualTitleIconRSS = actualRSSObjectXMLDoc.selectNodes(XpathTitleIcon);
	if (actualTitleIconRSS.length>0) {
		tituloIconActual = actualTitleIconRSS[0].nodeValue;
	}
	// 
	var tituloRSSDiv = newDivIS21('titulo_RSS_'+indiceActual, '', css_TituloRSS, RSSDiv);
	newImageIS21('iconRss', tituloIconActual, '', '', tituloRSSDiv);
	tituloRSSDiv.innerHTML += tituloActual;
	//	
	RSSDivContentPage = newDivIS21('ContentPages_RSS_'+indiceActual, '', '', document.getElementById(rssList[indiceActual].DivList.id));
	//
	var k = 0;
	for (var i = 0; i<actualRSS_array.length; i++) {
		var itemTitle;
		var subJect = '';
		var vinculo = '';
		var title = actualRSS_array[i].selectNodes(titulo)[0].nodeValue;
		var desc = '';
		if (actualRSS_array[i].selectNodes(desciption).length > 0){
			desc = actualRSS_array[i].selectNodes(desciption)[0].nodeValue;
		}
		//
		var publicDate = '';
		if (actualRSS_array[i].selectNodes(pubDate).length > 0){
			publicDate = actualRSS_array[i].selectNodes(pubDate)[0].nodeValue;
		}
		//
		if (actualRSS_array[i].selectNodes(linked).length>0) {
			vinculo = actualRSS_array[i].selectNodes(linked)[0].nodeValue;
		}
		// 
		if (actualRSS_array[i].selectNodes(subject).length>0) {
			subJect = actualRSS_array[i].selectNodes(subject)[0].nodeValue;
		}
		// 
		var modulo = i%itemstoShow;
		if (paginar && (modulo == '0')) {
			
			RSSDiv = newDivIS21('pagina_'+k, '', css_PaginasContenedor, RSSDivContentPage);
			if (k != 0) {
				RSSDiv.style.display = 'none';
			} else {
				RSSDiv.style.display = 'block';
			}
			k++;
		}
		// 
		var contentDIv = newDivIS21('content_rss_'+i, '', css_contenedor, RSSDiv);
		//
		if (!showAnswer) {
			itemTitle = newDivIS21('idItem_'+i, '', css_ItemsTitle, contentDIv);
			if (iconItem) {
				itemTitleIcon = newDivIS21('idItemIcon_'+i, '', 'icon', itemTitle);
			}
			itemTitle.innerHTML += '<h1>'+title+'</h1>';
			itemTitle.indice = i;
			itemTitle.normalClassName = css_ItemsTitle;
			itemTitle.activeClassName = css_ItemsTitle+' active';
			itemTitle.onclick = function() {
				showAnswerItem(this.indice);
				//
				if (rollOverTitle) {
					if (this.openDiv) {
						this.className = this.normalClassName;
						this.openDiv = false;
					} else {
						this.className = this.activeClassName;
						this.openDiv = true;
					}
				}
			};
			//
			itemLink = newDivIS21('idDate_'+i, ''/*'<label>'+publicDate+'</label>'*/, css_ItemsDate, contentDIv);
			itemSubject = newDivIS21('idSubject_'+i, '<h2>'+subJect+'</h2>', css_ItemsSubject, contentDIv);
			//
			itemDesciption = newDivIS21('idAnswer_'+i, '<p>'+desc+'</p>', css_ItemsAnswer, contentDIv);
			itemDesciption.style.display = 'none';
		} else {
			itemTitle = newDivIS21('idItem_'+i, '', css_ItemsTitle, contentDIv);
			if (iconItem) {
				itemTitleIcon = newDivIS21('idItemIcon_'+i, '', 'icon', itemTitle);
			}
			itemTitle.innerHTML += '<h1>'+title+'</h1>';
			itemDesciption = newDivIS21('', '<p>'+desc+'</p>', css_ItemsAnswer, contentDIv);
		}
	}
	///
	createPags(actualRSS_array.length/itemstoShow);
	indiceActual++;
	runRSS();
}
/////////////////////////////////////////////////////////////////////////////////////
// Muestra la Descripción o la Respuesta Respectiva
/////////////////////////////////////////////////////////////////////////////////////
function showAnswerItem(num) {
	//
	var visibilidad = document.getElementById('idAnswer_'+num).style.display;
	//
	if (visibilidad == 'none') {
		document.getElementById('idAnswer_'+num).style.display = 'block';
	} else {
		document.getElementById('idAnswer_'+num).style.display = 'none';
	}
}
////////////////////////////////////////////////////////////////////////////////////
//Crea la paginación.
////////////////////////////////////////////////////////////////////////////////////
function createPags(indice) {
	var Pags = '';
	rssList[indiceActual].pages = indice;
	var paginador = document.getElementById(rssList[indiceActual].DivPages.id);
	rssList[indiceActual].backPage = newDivIS21('back', '', 'page', rssList[indiceActual].DivPages);
	rssList[indiceActual].backPage.actualPage = rssList[indiceActual].actualPage;
	rssList[indiceActual].backPage.indiceActual = indiceActual;
	rssList[indiceActual].backPage.onclick = function() {
		showPage(this.indiceActual, 'BACK');
	};
	//
	rssList[this.indiceActual].pager = new Array();
	//
	for (i=0; i<indice; i++) {
		var css = 'page';
		if (i == 0) {
			css = 'actualPage';
		}
		var pager = newDivIS21('rsssPager_'+indiceActual+'_pag_'+i, (i+1), css, paginador);
		pager.indiceActual = indiceActual;
		pager.actualPage = i;
		pager.onclick = function() {
			rssList[this.indiceActual].actualPage = this.actualPage;
			showPage(this.indiceActual, null);
		};
		rssList[this.indiceActual].pager.push(pager);
		rssList[indiceActual].NumberofPages++;
	}
	//
	rssList[indiceActual].nextPage = newDivIS21('next', '', 'page', rssList[indiceActual].DivPages);
	rssList[indiceActual].nextPage.actualPage = rssList[indiceActual].actualPage;
	rssList[indiceActual].nextPage.indiceActual = indiceActual;
	rssList[indiceActual].nextPage.onclick = function() {
		showPage(this.indiceActual, 'NEXT');
	};
	//
	if (rssList[indiceActual].NumberofPages <= 1){
		rssList[indiceActual].nextPage.parentNode.removeChild (rssList[indiceActual].nextPage);
		rssList[indiceActual].backPage.parentNode.removeChild (rssList[indiceActual].backPage);
	}
}
////////////////////////////////////////////////////////////////////////////////////
//Mostrar la pagina
////////////////////////////////////////////////////////////////////////////////////
function showPage(indicador, action) {
	
	var cicle = rssList[indicador].pager.length;
	
	switch (action){
	case 'NEXT':
		rssList[indicador].actualPage++;
		if (rssList[indicador].actualPage >= cicle){
		 if (loopPages){
			rssList[indicador].actualPage = 0;
		 }else{
			rssList[indicador].actualPage = cicle-1;
		 }
		}
	break
	case 'BACK':
		rssList[indicador].actualPage--;
		if (rssList[indicador].actualPage <= -1){
			if (loopPages){
				rssList[indicador].actualPage = (cicle-1);
			}else{
				rssList[indicador].actualPage = 0;
			}
		}
	break
	}
	//
	for (var i=0; i<cicle ; i++){
		var ind = i;
		if (i == rssList[indicador].actualPage){
			rssList[indicador].pager[i].className = 'actualPage';
			document.getElementById('ContentPages_RSS_'+indicador).childNodes[i].style.display = 'block'
		}else{
			rssList[indicador].pager[i].className = 'page'
			document.getElementById('ContentPages_RSS_'+indicador).childNodes[i].style.display = 'none';

		}
	}
	//
}
/////////////////////////////////////////////////
function showItem(id) {
	//
	var items = xmlDoc.getElementsByTagName('label');
	var respuestas = "";
	//
	for (i=0; i<items.length; i++) {
		if (i == id) {
			var itemPreg = items[i].getElementsByTagName("pregunta")[0].firstChild.nodeValue;
			var itemResp = items[i].getElementsByTagName("respuesta")[0].firstChild.nodeValue;
			respuestas += '<br><p><strong>'+itemPreg+'</strong></p><p>'+itemResp+'</p>';
		}
	}
	//
	document.getElementById("Response").innerHTML = respuestas;
	//
}