/*
 *	BrowserCheck Object
 */
function BrowserCheck()
{
	nav = navigator.appVersion;
	nan = navigator.appName;
	nua = navigator.userAgent;
	if (nan=="Netscape") this.b = "ns"
	else if (nan=="Microsoft Internet Explorer") this.b = "ie"
	else this.b = nan
	this.version = navigator.appVersion
	this.v = parseInt(this.version)
	this.ns = (this.b=="ns" && this.v>=4)
	this.ns4 = (this.b=="ns" && this.v==4)
	this.ns5 = (this.b=="ns" && this.v==5)
	this.ieMac = (this.version.indexOf('Macintosh')>0 && this.version.indexOf('Internet Explorer')>0)
	if (!this.ieMac)
	{
		this.ie = (this.b=="ie" && this.v>=4)
		this.ie4 = (this.version.indexOf('MSIE 4')>0)
		this.ie5 = (this.version.indexOf('MSIE 5')>0)
		this.ie6 = (this.version.indexOf('MSIE 6')>0)
		this.ie7 = (this.version.indexOf('MSIE 7')>0)
	}
	this.opera = 			(nan.indexOf('Opera')>=0);
	this.operaMac = 	(nan.indexOf('Opera')>=0 && this.version.indexOf('Macintosh')>0)
	this.firefox = 		(nua.indexOf('Firefox')>=0);
	this.ff2 = 				(nua.indexOf('Firefox/2')>=0);
	this.ff3 = 				(nua.indexOf('Firefox/3')>=0);
	this.safari = 		(nua.indexOf('Safari')!=-1);
	this.konqueror = 	(!this.safari && (nua.indexOf('Konqueror')!=-1) ) ? true : false;

	this.mac = (nav.indexOf('Mac')!=-1);
	this.windows = ( ( (nav.indexOf('Win')!=-1) || (nav.indexOf('NT')!=-1) ) && !this.mac)?true:false;
	this.linux = (nua.indexOf('Linux')!=-1);

	this.chrome = nua.toLowerCase().indexOf('chrome') > -1;

}
var es = new BrowserCheck();



var AMPLADA_WEB = 960;
var showed=1;
//alert(9);
//alert(AMPLADA_WEB);
/**
 *	Canvia el text de tots els objectes amb name='textColumnes' formatant-lo en dues columnes
 *	Aquesta funció es cridarà automàticament un cop s'hagi carregat la pàgina
 */
function initMulticolumn(){
	var colsArr = getDivElementsByClass("textColumnesContainer");
	for(var i=0; i<colsArr.length; i++)
	{
		var cols = colsArr[i];
		if(cols)
		{
			multiColumnSettings = new MultiColumnSettings;
			multiColumnSettings.classNameScreen = 'textColumnes';
			multiColumnSettings.numberOfColumns = 2;
			multiColumnSettings.paddingInnerCol_left = 10;
			multiColumnSettings.paddingInnerCol_right = 10;
			multiColumnSettings.extraHeight = 15;

			new MultiColumn(cols,multiColumnSettings);
		}
	}

	// Posem els "container" dels textos columna a overflow=auto i incrementem l'amplada per que no aparegui una columna sota l'altra
	var colsArrOutter = getDivElementsByClass("textColsBannerContainer");
	for(var i=0; i<colsArrOutter.length; i++){
		//colsArrOutter[i].style.overflow = "auto";
		colsArrOutter[i].style.overflow = "hidden";
		var w = parseInt(colsArrOutter[i].offsetWidth, 10);
		if (!isNaN(w) && w > 0){
			colsArrOutter[i].style.width = (w+15) + "px";
			colsArrOutter[i].style.height= (150) + "px";
		}
	}
}

/**
 *	Retorna tots els objectes DIV que tenen una classe determinada
 *	Aquesta funció s'ha de cridar un cop s'ha acabat de carregar la pàgina, sino pot ser que no apareguin tots
 */
function getDivElementsByClass(classe)
{
	var multicolumnList = Array();
	var allDivs = document.getElementsByTagName("div");
	for(var i=0; i<allDivs.length; i++){
		if(allDivs[i].className == classe){
			multicolumnList[multicolumnList.length] = allDivs[i];
		}
	}
	return multicolumnList;
}


/**
 *	Posa marges a la dreta i l'esquerra de capes (div) amb float left per que tinguin una separacio equidistant
 *	i l'amplada total que es passa per paràmetre
 *
 *	@param classe(string)	nom de la classe que han de tenir les capes (div)
 *	@param amplada(int)	amplada total que es vol que ocupin les capes
 */
function ajustaMarginsLaterals(classe, amplada)
{
	// Calculem la suma de les amplades de totes les columnes que tenen class='linksInfColumna'
	var colsArr = getDivElementsByClass(classe);
	var totalColumnes = colsArr.length;
	var totalAmpladaSenseMargins = 0;
	for(var i=0; i<colsArr.length; i++){
		totalAmpladaSenseMargins += colsArr[i].offsetWidth;
	}
	var totalMargins = amplada - totalAmpladaSenseMargins;

	if (totalMargins < 0) return;

	// Posem el marges a la dreta i l'esquerra de les columnes
	var mar = totalMargins/(totalColumnes*2);
	mar = parseInt(mar, 10);
	for(var i=0; i<colsArr.length; i++){
		colsArr[i].style.marginLeft = mar+"px";
		colsArr[i].style.marginRight = mar+"px";
	}
}

var animacion="";
var animacion2="";
var cargadas=0;
var fadeout=0;
var siguientesImagenes="";
var precarga="";

function onloadCambio()
{
	if(cargadas==1&&fadeout==1)
	{
		for(i=1;i<=4;i++)
		{
			document.getElementById("banner"+i).src=siguientesImagenes[(i-1)].src;
		}
		animacion2.start({
			'0':{opacity:1},
			'1':{opacity:1},
			'2':{opacity:1},
			'3':{opacity:1}
		});
		animacion2.oncomplete=function(){
			if((indiceBanners+1)<banners.length)
			{
				if(banners[(indiceBanners+1)]["tipo"]=="Pagina")
					path="img/paginas/";
				else
					path="img/banners/";
				if(banners[(indiceBanners+1)]["img"]!="")
				{
					precarga=new Asset.images([
						path+banners[(indiceBanners+1)]["img"]+"_part1.jpg",
						path+banners[(indiceBanners+1)]["img"]+"_part2.jpg",
						path+banners[(indiceBanners+1)]["img"]+"_part3.jpg",
						path+banners[(indiceBanners+1)]["img"]+"_part4.jpg",
					],{});
				}
				else
				{
					precarga=new Asset.images([
						"img/banners/bannerBlanc_part1.jpg",
						"img/banners/bannerBlanc_part2.jpg",
						"img/banners/bannerBlanc_part3.jpg",
						"img/banners/bannerBlanc_part4.jpg",
					],{});
				}
			}
			return;
		}
		cargadas=1;
	}
	return;
}

function paginador_fotos_prev()
{
	if((indiceBanners-1)<0)
		return;
	indiceBanners--;
	cargadas=0;
	fadeout=0;
	siguientesImagenes="";

	if(banners[indiceBanners]["tipo"]=="Pagina")
		path=nivell_html+"img/paginas/";
	else
		path=nivell_html+"img/banners/";
	if(banners[indiceBanners]["img"]!="")
	{
		siguientesImagenes=new Asset.images([
			path+banners[indiceBanners]["img"]+"_part1.jpg",
			path+banners[indiceBanners]["img"]+"_part2.jpg",
			path+banners[indiceBanners]["img"]+"_part3.jpg",
			path+banners[indiceBanners]["img"]+"_part4.jpg",
		],{onComplete: function(){cargadas=1;onloadCambio();}});
	}
	else
	{
		siguientesImagenes=new Asset.images([
			nivell_html+"img/banners/bannerBlanc_part1.jpg",
			nivell_html+"img/banners/bannerBlanc_part2.jpg",
			nivell_html+"img/banners/bannerBlanc_part3.jpg",
			nivell_html+"img/banners/bannerBlanc_part4.jpg",
		],{onComplete: function(){cargadas=1;onloadCambio();}});
	}
	if(animacion=="")
	animacion= new Fx.Tween($('bannerTextContainerDiv'),{
		duration: 400,
		transition: Fx.Transitions.Quad.easeIn,
		link:'cancel'
	});
	imgs=$$('img.banner');
	if(animacion2=="")
	animacion2= new Fx.Elements($$('img.banner'),{
		duration: 200,
		transition: Fx.Transitions.Quad.easeIn,
		link:'cancel'
	});
	animacion2.start({
		'0':{opacity:0},
		'1':{opacity:0},
		'2':{opacity:0},
		'3':{opacity:0}
	});
	animacion2.onComplete=function(){ fadeout=1;onloadCambio();};

	bgColors=$('bannerTextContainerDiv').getStyle('backgroundColor');

	animacion.start('backgroundColor',bgColors,'#'+banners[indiceBanners]["bgColor"]);
	animacion.onComplete=function(){
		if(typeof(banners[indiceBanners]["text"])!="undefined")
		{
			document.getElementById("textSolo").innerHTML=banners[indiceBanners]["text"];
		}
		else
		{
			document.getElementById("text1").innerHTML=banners[indiceBanners]["txt1"];
			document.getElementById("text2").innerHTML=banners[indiceBanners]["txt2"];
		}
		document.getElementById("titol").src=nivell_html+"dtr/isocepeur.php?text="+banners[indiceBanners]["titol"].toUpperCase()+"&font_color="+banners[indiceBanners]["textColor"]+"&background_color="+banners[indiceBanners]["bgColor"]+"&font_size=32&altura=40";
		document.getElementById("subtitol").src=nivell_html+"dtr/isocepeur.php?text="+banners[indiceBanners]["subtitol"].toUpperCase()+"&font_color="+banners[indiceBanners]["textColor"]+"&background_color="+banners[indiceBanners]["bgColor"]+"&font_size=24&altura=30";
	};


	if((indiceBanners-1)<0)
	{
		document.getElementById("botoPrev").style.display="none";
	}
	if(indiceBanners==(banners.length-2))
	{
		document.getElementById("botoSeguent").style.display="block";
	}
}
function paginador_fotos_seguent()
{
	if((indiceBanners+1)>=banners.length)
		return;
	indiceBanners++;
	cargadas=0;
	siguientesImagenes="";
	fadeout=0;

	if(banners[indiceBanners]["tipo"]=="Pagina")
		path=nivell_html+"img/paginas/";
	else
		path=nivell_html+"img/banners/";
	if(banners[indiceBanners]["img"]!="")
	{
		siguientesImagenes=new Asset.images([
			path+banners[indiceBanners]["img"]+"_part1.jpg",
			path+banners[indiceBanners]["img"]+"_part2.jpg",
			path+banners[indiceBanners]["img"]+"_part3.jpg",
			path+banners[indiceBanners]["img"]+"_part4.jpg",
		],{onComplete: function(){cargadas=1;onloadCambio();}});
	}
	else
	{
		siguientesImagenes=new Asset.images([
			nivell_html+"img/banners/bannerBlanc_part1.jpg",
			nivell_html+"img/banners/bannerBlanc_part2.jpg",
			nivell_html+"img/banners/bannerBlanc_part3.jpg",
			nivell_html+"img/banners/bannerBlanc_part4.jpg",
		],{onComplete: function(){cargadas=1;onloadCambio();}});
	}

	if(animacion=="")
	animacion= new Fx.Tween($('bannerTextContainerDiv'),{
		duration: 400,
		transition: Fx.Transitions.Quad.easeIn,
		link:'cancel'
	});
	bgColors=$('bannerTextContainerDiv').getStyle('backgroundColor');
	animacion.start('backgroundColor',bgColors,'#'+banners[indiceBanners]["bgColor"]);
	animacion.onComplete=function(){
		if(typeof(banners[indiceBanners]["text"])!="undefined")
		{
			document.getElementById("textSolo").innerHTML=banners[indiceBanners]["text"];
		}
		else
		{
			document.getElementById("text1").innerHTML=banners[indiceBanners]["txt1"];
			document.getElementById("text2").innerHTML=banners[indiceBanners]["txt2"];
		}
		document.getElementById("titol").src=nivell_html+"dtr/isocepeur.php?text="+banners[indiceBanners]["titol"].toUpperCase()+"&font_color="+banners[indiceBanners]["textColor"]+"&background_color="+banners[indiceBanners]["bgColor"]+"&font_size=32&altura=40";
		document.getElementById("subtitol").src=nivell_html+"dtr/isocepeur.php?text="+banners[indiceBanners]["subtitol"].toUpperCase()+"&font_color="+banners[indiceBanners]["textColor"]+"&background_color="+banners[indiceBanners]["bgColor"]+"&font_size=24&altura=30";
	};

	if(animacion2=="")
	animacion2= new Fx.Elements($$('img.banner'),{
		duration: 200,
		transition: Fx.Transitions.Quad.easeIn,
		link:'cancel'
	});
	animacion2.start({
		'0':{opacity:0},
		'1':{opacity:0},
		'2':{opacity:0},
		'3':{opacity:0}
	});
	animacion2.onComplete=function(){ fadeout=1;onloadCambio();};

	if((indiceBanners+1)>=banners.length)
	{
		document.getElementById("botoSeguent").style.display="none";
	}
	if(indiceBanners==1)
	{
		document.getElementById("botoPrev").style.display="block";
	}
}
function escalar(container,centrado) {

	/**
	 * Some options for the large photos.
	 *
	 * The first argument is the argument for $$ (can be an array of elements or a selector)
	 */
	if(Browser.Engine.trident)
	{
		ReMooz.assign('#'+container+' a', {
			'origin': 'img',
			'shadow': 'onOpenEnd', // fx is faster because shadow appears after resize animation
			//'shadow':false, // fx is faster because shadow appears after resize animation
			'resizeFactor': 1,
			'cutOut': false, // don't hide the original
			'opacityResize': .4, // opaque resize
			'dragging': true, // disable dragging
			'centered': centrado // resize to center of the screen, not relative to the source element
		});
	}
	else
	{
		ReMooz.assign('#'+container+' a', {
			'origin': 'img',
			'shadow': 'onOpenEnd', // fx is faster because shadow appears after resize animation
			'resizeFactor': 1,
			'cutOut': false, // don't hide the original
			'opacityResize': .4, // opaque resize
			'dragging': true, // disable dragging
			'centered': centrado // resize to center of the screen, not relative to the source element
		});
	}

	/**
	 * Note on "shadow": value can be true, onOpenEnd (appear after resize) and false, to disable shadow
	 * WebKit (Safari 3) uses (great looking) CSS shadows, so it ignores this option.
	 */

}
function toggleBuscador()
{
	var fxMorph = new Fx.Morph($('bannerTextContainerDiv'),{
			duration: 500,
			transition: 'cubic:in:out'
	});
	var fxMorph2 = new Fx.Morph($('bannerTextContainerDiv2'),{
			duration: 500,
			transition: 'cubic:in:out'
	});
	var fxMorph3 = new Fx.Morph($('bannerFletxaContainerDiv'),{
			duration: 500,
			transition: 'cubic:in:out'
	});
	if(showed==1)
	{


		divWidth = $('bannerTextContainerDiv').getStyle('width');
		divWidth2 = $('bannerTextContainerDiv2').getStyle('width');
		if(navigator.appName=="Microsoft Internet Explorer")
		fxMorph.start({
			'width':30,
			'opacity':0.4,
			'left':930

		});
		else

		fxMorph.start({
			'width':0,
			'opacity':0.4,
			'left':930

		});

		fxMorph2.start({
			'width':0,'opacity':0.4,'left':930,'padding-right':0
		});
		fxMorph3.start({
			'left':930
		});
		fxMorph3.onComplete= function(){document.getElementById("fletxa").src=nivell_html+'img/fletxa-amaga-buscador.gif';};
		showed=0;
	}
	else
	{


		fxMorph.start({
			'width':divWidth,
			'opacity':0.9,
			'left':500
		});
		fxMorph2.start({
			'width':divWidth2,
			'opacity':0.9,
			'padding-right':15,
			'left':500
		});
		fxMorph3.start({
			'left':500
		});
		fxMorph3.onComplete= function(){document.getElementById("fletxa").src=nivell_html+'img/fletxa-mostra-buscador.gif';};
		showed=1;
	}
}
var animandoFletxa=0;
var fxMorphFletxa="";

function fadeinFletxa()
{
	if(fxMorphFletxa=="")
	{
		fxMorphFletxa= new Fx.Tween($('fletxa'),{
			duration: 200,
			transition: Fx.Transitions.Quad.easeIn,
			link:'cancel'
		});
	}
	var opacity=$('fletxa').getStyle('opacity');
	fxMorphFletxa.start(
		'opacity',opacity,'0.9'

	);
}
function fadeoutFletxa()
{
	opacity=$('fletxa').getStyle('opacity');
	fxMorphFletxa.start(
		'opacity',opacity,'0.3'

	);
}

var fxMorphSeguent="";
function fadeinSeguent()
{
	if(fxMorphSeguent=="")
	{
		fxMorphSeguent = new Fx.Tween($('botoSeguent'),{
			duration: 200,
			transition: Fx.Transitions.Quad.easeIn,
			link:'cancel'
		});
	}
	var opacity=$('botoSeguent').getStyle('opacity');
	fxMorphSeguent.start(
		'opacity',opacity,'0.7'
	);
}
function fadeoutSeguent()
{
	var opacity=$('botoSeguent').getStyle('opacity');
	fxMorphSeguent.start(
		'opacity',opacity,'0.3'

	);
}

var fxMorphPrevio="";
function fadeinPrevio()
{
	if(fxMorphPrevio=="")
	{
		fxMorphPrevio = new Fx.Tween($('botoPrev'),{
			duration: 200,
			transition: Fx.Transitions.Quad.easeIn,
			link:'cancel'
		});
	}
	var opacity=$('botoPrev').getStyle('opacity');
	fxMorphPrevio.start(
		'opacity',opacity,'0.7'

	);
}
function fadeoutPrevio()
{
	var opacity=$('botoPrev').getStyle('opacity');
	fxMorphPrevio.start(
		'opacity',opacity,'0.3'

	);
}



/**********************************
 *	Mostra / Oculta idiomes
 **********************************/

var TimeoutIdiomas=0;

function mostraDivIdiomas()
{
	anulaOcultaDivIdiomas();
	if (document.getElementById("divIdiomas").style.display != "inline"){
		document.getElementById("divIdiomas").style.display="inline";
	}
}
function ocultaDivIdiomas()
{
	anulaOcultaDivIdiomas();
	TimeoutIdiomas=setTimeout("_ocultaDivIdiomas();",300);
}

function _ocultaDivIdiomas()
{
	document.getElementById("divIdiomas").style.display="none";
}
function anulaOcultaDivIdiomas()
{
	if(TimeoutIdiomas!=0)
	{
		clearTimeout(TimeoutIdiomas);
		TimeoutIdiomas=0;
	}
}




/**********************************
 *	Mostra / Oculta login
 **********************************/

var TimeoutLogin=0;

function mostraDivLogin()
{
	anulaOcultaDivLogin();
	if (document.getElementById("divLogin").style.display != "inline"){
		document.getElementById("divLogin").style.display="inline";
	}
}
function ocultaDivLogin()
{
	anulaOcultaDivLogin();
	TimeoutLogin=setTimeout("_ocultaDivLogin();",300);
}

function _ocultaDivLogin()
{
	document.getElementById("divLogin").style.display="none";
}
function anulaOcultaDivLogin()
{
	if(TimeoutLogin!=0)
	{
		clearTimeout(TimeoutLogin);
		TimeoutLogin=0;
	}

}




/**********************************
 *	Mostra / Oculta submenus
 **********************************/

var TimeoutSubmenu = Array();
TimeoutSubmenu[0]=TimeoutSubmenu[1]=TimeoutSubmenu[2]=TimeoutSubmenu[3] = 0;
function mostraDivSubmenu(i)
{
	anulaOcultaDivSubmenu(i);

	if (document.getElementById("submenu_"+i+"_div").style.display != "block"){
		$('submenu_'+i+'_div').setStyle('opacity', '0');
		document.getElementById("submenu_"+i+"_div").style.display="block";
	}
	fadeinSubmenu(i);
}
function ocultaDivSubmenu(i)
{
	anulaOcultaDivSubmenu(i);

	TimeoutSubmenu[i]=setTimeout("_ocultaDivSubmenu("+i+");",50); // 300
}

function _ocultaDivSubmenu(i)
{
	fadeoutSubmenu(i);
}
function anulaOcultaDivSubmenu(i)
{
	if(TimeoutSubmenu[i]!=0)
	{
		clearTimeout(TimeoutSubmenu[i]);
		TimeoutSubmenu[i]=0;
	}

}


var fxMorphSubmenuIn = Array();
fxMorphSubmenuIn[0]=fxMorphSubmenuIn[1]=fxMorphSubmenuIn[2]=fxMorphSubmenuIn[3] = "";
var fxMorphSubmenuOut = Array();
fxMorphSubmenuOut[0]=fxMorphSubmenuOut[1]=fxMorphSubmenuOut[2]=fxMorphSubmenuOut[3] = "";
var submenuVisible = Array();
submenuVisible[0]=submenuVisible[1]=submenuVisible[2]=submenuVisible[3] = "";
function fadeinSubmenu(i)
{
	if(fxMorphSubmenuOut[i] != "") {
		fxMorphSubmenuOut[i].cancel();
	}
	if(fxMorphSubmenuIn[i]=="")
	{
		fxMorphSubmenuIn[i] = new Fx.Tween($('submenu_'+i+'_div'),{
			duration: 300,
			transition: Fx.Transitions.Quad.easeOut,
			link:'cancel'
		});
	}
	var opacity=$('submenu_'+i+'_div').getStyle('opacity');
	$('submenu_'+i+'_div').setStyle('display', 'block');
	var alph = es.ie ? 1 : 0.95;
	fxMorphSubmenuIn[i].start(
		'opacity',opacity,alph
	);
}
function fadeoutSubmenu(i)
{
	if(fxMorphSubmenuIn[i] != "") {
		fxMorphSubmenuIn[i].cancel();
	}
	if(fxMorphSubmenuOut[i]=="")
	{
		fxMorphSubmenuOut[i] = new Fx.Tween($('submenu_'+i+'_div'),{
			duration: 300,
			transition: Fx.Transitions.Quad.easeOut,
			onComplete : function(){
					$('submenu_'+i+'_div').setStyle('display', 'none');
				},
			link:'cancel'
		});
	}

	var opacity=$('submenu_'+i+'_div').getStyle('opacity');
	fxMorphSubmenuOut[i].start(
		'opacity',opacity,'0'
	);

}

