// CMS.js Document 

// -----------------------------------------------------------------------------
// CMS Functions
// -----------------------------------------------------------------------------

// CMS_showPage ________________________________________________________________
function CMS_showPage(url,divName)
	{
	var webaux=null;
	if (window.XMLHttpRequest) // code for Mozilla, etc.
		{
			webaux=new XMLHttpRequest();
		}
	else if (window.ActiveXObject) // code for IE.
		{
			webaux=new ActiveXObject("Microsoft.XMLHTTP");
		}
	// 
	if (webaux!=null)
		{
			webaux.onreadystatechange = function()
				{
					if (webaux.readyState==4) // if webaux shows "loaded"
						{
							if (webaux.status==200 || window.location.href.indexOf("http")==-1) // if "OK"
								{
									textaux = webaux.responseText;
									textaux = getBodyText(textaux) // select the <body> contents
									divAct = document.getElementById(divName);
									divAct.innerHTML = textaux;
								} else {
									alert("Problem retrieving XML data");
								}
						}
				}
			webaux.open("GET",url,true);
  			webaux.send(null);
		} else {
			alert("Your browser does not support XMLHTTP.")
		}
	}

// CMS_addPage ________________________________________________________________
function CMS_addPage(url,divName)
	{
	var webaux=null;
	if (window.XMLHttpRequest) // code for Mozilla, etc.
		{
			webaux=new XMLHttpRequest();
		}
	else if (window.ActiveXObject) // code for IE.
		{
			webaux=new ActiveXObject("Microsoft.XMLHTTP");
		}
	// 
	if (webaux!=null)
		{
			webaux.onreadystatechange = function()
				{
					if (webaux.readyState==4) // if webaux shows "loaded"
						{
							if (webaux.status==200 || window.location.href.indexOf("http")==-1) // if "OK"
								{
									textaux = webaux.responseText;
									textaux = getBodyText(textaux) // select the <body> contents
									divAct = document.getElementById(divName);
									divAct.innerHTML = divAct.innerHTML + textaux;
								} else {
									alert("Problem retrieving XML data");
								}
						}
				}
			webaux.open("GET",url,true);
  			webaux.send(null);
		} else {
			alert("Your browser does not support XMLHTTP.")
		}
	}

// CMS_showNews ________________________________________________________________
function CMS_showNews(ini,fin,divName)
	{
	var news=document.getElementsByName("CMS_news");
	CMS_showPage(news[ini-1].href,divName);
	for (n=ini; n<fin; n++)
		{
			CMS_addPage(news[n].href,divName);
		}
	}

// CMS_showSelectNews ___________________________________________________________
function CMS_showSelectNews(iniY,finY,divName)
	{
	var news=document.getElementsByName("CMS_news");
	var first=1;
	for (n=0; n<news.length; n++)
		{
			yearNews = news[n].href.substr(news[n].href.lastIndexOf('/')+1,4);
			if (yearNews>=iniY&&yearNews<=finY)
				{
					if (first==1) {CMS_showPage(news[n].href,divName);first++;}
					else {CMS_addPage(news[n].href,divName);}
				}
		}
	}

// CMS_showArchiveNewsList ___________________________________________________________
function CMS_showArchiveNewsList(groupY,divList,divNews)
	{
	var news=document.getElementsByName("CMS_news");
	var listNews = "<ul>\n";
	var maxY=news[0].href.substr(news[0].href.lastIndexOf('/')+1,4);
	var minY=news[0].href.substr(news[0].href.lastIndexOf('/')+1,4);
	for (n=0; n<news.length; n++)
		{
			yearNews = news[n].href.substr(news[n].href.lastIndexOf('/')+1,4);
			if (yearNews>maxY) {maxY = yearNews}
			if (yearNews<minY) {minY = yearNews}
		}
	Ngroups = Math.floor((maxY-minY+1)/groupY);
	Ryears = (maxY-minY+1)%groupY;
	if (Ryears==1)
		{
		listNews = listNews + "<li><a href=\"javascript:CMS_showSelectNews(";
		listNews = listNews + maxY + ","+ maxY + ",'" + divNews + "')\" >";
		listNews = listNews + maxY + "</a></li>\n";
		}
	if (Ryears>1)
		{
		listNews = listNews + "<li><a href=\"javascript:CMS_showSelectNews(";
		listNews = listNews + (maxY-Ryears+1) + ","+ maxY + ",'" + divNews + "')\" >";
		listNews = listNews + (maxY-Ryears+1) + "-" + maxY + "</a></li>\n";
		}
	actY = maxY-Ryears;
	for (n=0; n<Ngroups; n++)
		{
		listNews = listNews + "<li><a href=\"javascript:CMS_showSelectNews(";
		listNews = listNews + (actY-(n+1)*groupY+1) + ","+ (actY-n*groupY) + ",'" + divNews + "')\" >";
		listNews = listNews + (actY-(n+1)*groupY+1) + "-" + (actY-n*groupY) + "</a></li>\n";
		}
	listNews = listNews + "</ul>\n";
	document.getElementById(divList).innerHTML = listNews;
	}

// menuSelect __________________________________________________________________
function menuSelect(sel,classSelect)
	{
		var liel = document.getElementsByTagName("li");
		var menu =new Array();
		var i = 0;
		for (n=0; n<liel.length; n++)
			{
			if (liel[n].innerHTML.search("menuSelect")>0) {liel[n].className = ""; menu[i] = n; i++;}
			}
		liel[menu[(sel-1)]].className = classSelect;
	}

// CMS_showMenuPages ___________________________________________________________
function CMS_showMenuPages(sel,divMenu,divPages,classSelect)
	{
	var pages=document.getElementsByName("CMS_pages");
	var listMenu = "<ul>\n";
	for (n=0; n<pages.length; n++)
		{
			listMenu = listMenu + "<li><a href=\"" 
			if (pages[n].href.substr(0,4)=="java") {listMenu = listMenu + pages[n].href;}
			if (pages[n].target!="") {listMenu = listMenu + pages[n].href + "\" target=\"" + pages[n].target;}
			if (pages[n].href.substr(0,4)!="java"&&pages[n].target=="")
				{
				listMenu = listMenu + "javascript:CMS_showPage('" + pages[n].href + "','" + divPages + "');";
				}
			listMenu = listMenu + "\" onclick=\"javascript:menuSelect\(" + (n+1) + ",'" + classSelect + "');\">";
			listMenu = listMenu + pages[n].innerHTML + "</a></li>\n";
		}
	listMenu = listMenu + "</ul>\n";
	document.getElementById(divMenu).innerHTML = listMenu;
	menuSelect(sel,classSelect);
	}

// -----------------------------------------------------------------------------
// CMS Utility Functions 
// -----------------------------------------------------------------------------

// getBodyText ___________________________________________________________________
function getBodyText(textaux)
{
	// deletes the previous contents to the tag <body> and the tag.
	body_ini = textaux.indexOf("<body");
	if (body_ini !=-1)
	{
	textaux = textaux.substring(body_ini+5,textaux.length);
	body_ini = textaux.indexOf(">");
	textaux = textaux.substring(body_ini+1,textaux.length);
	}
	// deletes the later contents to the tag </body> and the tag.
	body_fin = textaux.indexOf("</body>");
	if (body_fin !=-1)
	{
	textaux = textaux.substring(0,body_fin);
	}
	return textaux;
}

// changeDisplay ___________________________________________________________________
function changeDisplay(obj)
	{
		var el = document.getElementById(obj);
		if ( el.style.display != "none" ) {
			el.style.display = 'none';
		}
		else {
			el.style.display = '';
		}
	}

// setNoDisplay __________________________________________________________________
function setNoDisplay(obj)
	{
		var el = document.getElementById(obj);
		el.style.display = 'none';
	}

// RMchange ______________________________________________________________________
function RMchange(divObj,index)
	{
		var allDiv=document.getElementsByTagName("div");
		for (n=0; n<allDiv.length; n++)
			{if (allDiv[n] == divObj) {sel = n;}}
		var selDiv = allDiv[sel+index];
		if ( selDiv.style.display != "none" ) {
			selDiv.style.display = 'none';
		}
		else {
			selDiv.style.display = '';
		}
	}

// setNoDisplaybyName ______________________________________________________________
function setNoDisplayByClass(divClass)
	{
		var allDiv = document.getElementsByTagName("div");
		for (n=0; n<allDiv.length; n++)
			{if (allDiv[n].className == divClass) {allDiv[n].style.display = 'none';}}
	}

// CMS_ItemYears ___________________________________________________________________
function CMS_ItemYears()
	{
		var sel = document.getElementById("yearDoc");
		for (n=sel.options.length; n>0; n--) {sel.remove(n);}
		var news = document.getElementsByName("CMS_news");
		for (n=0; n<news.length; n++)
		{
			yearNews = news[n].href.substr(news[n].href.lastIndexOf('/')+1,4);
			if (yearNews != sel.options[(sel.options.length-1)].value)
			{
				var nop=document.createElement('option');
				nop.text = yearNews;
				nop.value = yearNews;
				try
          {sel.add(nop,null);} // standards compliant
        catch(ex)
          {sel.add(nop);} // IE only
			}
		}
	}

// CMS_ItemsIn ___________________________________________________________________
function CMS_ItemsIn(year)
	{
		var sel = document.getElementById("titleDoc");
		var news = document.getElementsByName("CMS_news");
		for (n=sel.options.length; n>0; n--) {sel.remove(n);}
		for (n=0; n<news.length; n++)
		{
			yearNews = news[n].href.substr(news[n].href.lastIndexOf('/')+1,4);
			if (yearNews == year)
			{
				var nop=document.createElement('option');
				nop.text = news[n].innerHTML;
				nop.value = news[n].href.substring(news[n].href.lastIndexOf('/')+1);
				try
          {sel.add(nop,null);} // standards compliant
        catch(ex)
          {sel.add(nop);} // IE only
			}
		}
	}

// -----------------------------------------------------------------------------
// Funcions d'utilitats
// -----------------------------------------------------------------------------

// correuDire correuPresi ________________________________________________________
// Funció correuDire i correuPresi per amagar el correu en un mailto
function correuDire()
	{
		location.replace( 'mai' + 'lto:xpui' + 'g@coral' +'ginesta.com' )
	}

function correuPresi()
	{
		location.replace( 'mai' + 'lto:presiden' + 'ta@coral' +'ginesta.com' )
	}
