// JavaScript Document
var textoIdioma = new Array(2);
var catalan = new Array(3);
catalan[0] = "enllaços";
catalan[1] = "licitacions";
catalan[2] = "avís legal";
var castellano = new Array(3);
castellano[0] = "enlaces";
castellano[1] = "licitaciones";
castellano[2] = "aviso legal";
textoIdioma[0] = catalan;
textoIdioma[1] = castellano;
//variable que controla si el mapa està desplegat o no
v_actiu=false; 

function creaAjax(){
	var http;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer"){
	http = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
	http = new XMLHttpRequest();
	}
	return http;
}

var xmlhttp = creaAjax();

function parseUrl(url){
	//var query = location.href.substring((location.href.indexOf('?')+1), location.href.length);
	url = url.replace("&amp;", "&");
	url = url.replace("&amp;", "&");
	url = url.replace("&amp;", "&");
	var query = url.substring((url.indexOf('?')+1), url.length);
	if(url.indexOf('?') == -1){
		query = null;
	}else{
		querysplit = query.split('&');
		query = new Array();
		query["URL"] = url.substring(0,(url.indexOf('?')+1)); 
		for(var i = 0; i < querysplit.length; i++){
			var namevalue = querysplit[i].split('=');
			namevalue[1] = namevalue[1].replace(/\+/g, ' ');
			//alert(namevalue[0] + " = " + namevalue[1]);
			query[namevalue[0]] = unescape(namevalue[1]);
		}
	}
	return query;
}

function reconfigura(){
	//alert("reconfigura"+v_actiu);
	var ample = parseInt(document.documentElement.clientWidth);
	var alt = parseInt(document.documentElement.clientHeight);
	var fitxes = document.getElementById("divFicha");	
	var mapa = document.getElementById("divMapa");
	var boto = document.getElementById("divBoto");
	if(v_actiu==false||!v_actiu){
		//alert("reconfigura"+v_actiu+" "+ample_fitxes);
		fitxes.style['height'] = (alt-15)+"px";
		fitxes.style['width'] = "427px";
		var ample_fitxes = parseInt(fitxes.style['width']);
		mapa.style['height'] = (alt-20)+"px";
		mapa.style['width'] = (ample-ample_fitxes-25)+"px";
		var dimensio =(ample-ample_fitxes-25)+"px";
		//alert("dimensio "+dimensio);
 		//alert(capa.offsetWidth);
		// ubiquem el punt de referència al centre del mapa
	
		//var punt = document.getElementById("div_punt");
		var ample_mapa = parseInt(mapa.style['width']);
		var alt_mapa = parseInt(mapa.style['height']);
		var esq_mapa = parseInt(437);
		var dalt_mapa = parseInt(10);
		var esq_boto = parseInt(418);
		mapa.style['left'] = (esq_mapa)+"px";
		boto.style['left'] = (esq_boto)+"px";
		boto.style.backgroundImage = "url(../images/plega.png)";
		/*var ample_punt = parseInt(punt.style['width']);
		var alt_punt = parseInt(punt.style['height']);
		var esq_punt = parseInt(ample_mapa/2) + esq_mapa - parseInt(ample_punt/2);
		var dalt_punt = parseInt(alt_mapa/2) + dalt_mapa - parseInt(alt_punt/2);
		punt.style['left'] = esq_punt+"px";
		punt.style['top'] =dalt_punt+"px";*/
		//para que haga el resize en IE6
		if (document.all){
			document.getElementById("quadre_fitxa").contentWindow.resizeApp();
		}	
	}else{
		mapa.style['height'] = (alt-20)+"px";
		mapa.style['width'] = (ample-18)+"px";
		var ample_mapa = parseInt(mapa.style['width']);
		var alt_mapa = parseInt(mapa.style['height']);
		var esq_mapa = parseInt(5);
		var dalt_mapa = parseInt(10);
		var esq_boto = parseInt(5);
		mapa.style['left'] = (esq_mapa)+"px";
		boto.style['left'] = (esq_boto)+"px";
		boto.style.backgroundImage = "url(../images/despl.png)";
	}
}


function mostra(actiu){
	//alert(actiu);
	v_actiu = actiu;
	var fitxes = document.getElementById("divFicha");
  var mapa = document.getElementById("divMapa");
  var boto = document.getElementById("divBoto");
  //var ocult = document.getElementById("divOcult");
  if(actiu==0){
  	fitxes.style['visibility']="hidden";
  	//boto.style.backgroundImage = "url(../images/despl.png)";
  	//ocult.style['visibility']="visible";
  }else{
		fitxes.style['visibility']="visible";
		//boto.style.backgroundImage = "url(../images/plega.png)";
		//ocult.style['visibility']="hidden";
  }
  v_actiu=!v_actiu;
  reconfigura();
}

function muestraFitxa(idFitxa, cat){
	var urlfitxa = top.frames['quadre_fitxa'].location.href;
	if (urlfitxa.indexOf("index") == -1){
		
	}else{
	
	muestraCargaFicha();
	//alert(idFitxa+", "+cat);
	C_CAT = cat;
	if (idFitxa.indexOf("_") != -1){
		//alert("minifitxa con codigo mapa");
		C_CAT = cat;
		buscarCodiFitxa(idFitxa);
	}else{
		if (IDIOMA_ACTUAL == 0){
			idioma = "cat";
		}else if (IDIOMA_ACTUAL == 1){
			idioma ="cas";	
		}
		else if (IDIOMA_ACTUAL == 2){
			idioma = "eng";	
		}
		var url = top.frames['quadre_fitxa'].location.href;
		
		if (url.indexOf("#") != -1){
			var url1 = url.substring(0,url.indexOf("#"));
			url = url1;
		}
		var query = parseUrl(url);
		
		if (query["cat"] == cat){
			//alert("cat iguales");
			C_IDFITXA = idFitxa;
			C_IDIOMA = idioma;
			//url = url+"#"+C_IDFITXA;
			var url1 = url.substring(0,url.indexOf("?"));
			url = url1+"?cat="+cat+"&idioma="+idioma;
			//sirve para poner la ficha de primero
			url += "&codFitxa=" + C_IDFITXA;
			top.frames['quadre_fitxa'].location.href = url;
			//muestraInfoFitxa();
			//setTimeout('enfocaFitxa()',2000);
			//setTimeout('enfFitId()',2000);
		}else{
			//alert("cat diferentes");
			C_IDFITXA = idFitxa;
			C_IDIOMA = idioma;
			var url1 = url.substring(0,url.indexOf("?"));
			url = url1+"?cat="+cat+"&idioma="+idioma;
			//sirve para poner la ficha de primero
			url += "&codFitxa=" + C_IDFITXA;
			top.frames['quadre_fitxa'].location.href = url;
			//setTimeout('muestraInfoFitxa()',1000);
			//setTimeout('enfocaFitxa()',3000);
			//setTimeout('enfFitId()',2000);
		}
	}
	}
}

function muestraInfoFitxa(){
	top.frames['quadre_fitxa'].ajaxManagerFicha("load_datos", C_IDFITXA, "pres", C_IDIOMA);
}

function buscarCodiFitxa(codi){
	var	url = "buscaCodiFitxa.php?codi="+codi;
	//var	url = "leepuntos.php?operacio=l&aplicacio="+aplicacio+"&arxiu="+arxiu;
	xmlhttp.open('GET', url, true);
	xmlhttp.setRequestHeader("Content-Type", "text/html");
	xmlhttp.onreadystatechange = muestraFixtaCodi;
	xmlhttp.send('');
}

function muestraFixtaCodi(){
	if(xmlhttp.readyState == 1){}
	if(xmlhttp.readyState == 4){
		if(xmlhttp.status == 200){
			//alert(xmlhttp.responseText);
			var resp = xmlhttp.responseText;
			resp = resp.replace(" ", "");
			var res = resp.split(";"); 
			if (res[1] == 0){
				//alert("Fitxa");
				muestraFitxa(res[0], C_CAT);
			}else{
				//alert("miniFitxa");
				C_IDFITXA = res[0];
				enfocaMiniFitxa();
				//setTimeout('enfFitId()',2000);
				//setTimeout('enfocaMiniFitxa()',1000);
			}
		}
	}
}

function enfocaMiniFitxa(){
	var url = top.frames['quadre_fitxa'].location.href;
	url = url.replace("&amp;", "&");
	url = url.replace("&amp;", "&");
	url = url.replace("&amp;", "&");
	if (url.indexOf("#") != -1){
		var url1 = url.substring(0,url.indexOf("#"));
		url = url1;
	}
	var query = parseUrl(url);
	url = query["URL"];
	url += "cat="+ C_CAT;
	url += "&idioma=" + query["idioma"];
	//sirve para poner la ficha de primero
	url += "&codFitxa=" + C_IDFITXA;
	//url += "#"+C_IDFITXA;
	top.frames['quadre_fitxa'].location.href = url;
}

function cambiaIdiomas(idioma){
	var mapurl = e('quadre_mapa').src;
	if (mapurl.indexOf("&idioma=") != -1){
		mapurl = mapurl.substring(0,mapurl.indexOf("&idioma="));
	}
	if (idioma == 1){
		mapurl = mapurl + "&idioma=cat";
	}else if (idioma == 2){
		mapurl = mapurl + "&idioma=cas";	
	}
	else if (idioma == 3){
		mapurl = mapurl + "&idioma=eng";	
	}
	e('quadre_mapa').src = mapurl;
	
	idioma = idioma -1;
	IDIOMA_ACTUAL = idioma;
	var textosIdm = textoIdioma[idioma];	
}

function e(id) {
	return document.getElementById(id);
}

function getWindowHeight() {
	if (window.self && self.innerHeight) {
		return self.innerHeight;
	}
	if (document.documentElement && document.documentElement.clientHeight) {
		return document.documentElement.clientHeight;
	}
	return 0;
}
/*
function resizeApp() {
	var offsetTop = 0;
	var offsetTopF = 0;
	var mapElem = e("divMapa");
	for (var elem = mapElem; elem; elem = elem.offsetParent) {
		offsetTop += elem.offsetTop;
	}
	var height = getWindowHeight() - offsetTop - 10;
	if (height >= 0) {
		mapElem.style.height = height + "px";
	}
	var fixElem = e("divFicha");
	for (var elemf = fixElem; elemf; elemf = elemf.offsetParent) {
		offsetTopF += elemf.offsetTop;
	}
	var heightF = getWindowHeight() - offsetTopF - 10;
	if (heightF >= 0) {
		fixElem.style.height = heightF + "px";
	}
}
*/
function ajutaAltura(obj){
	var offsetTopF = 0;
	for (var elemf = obj; elemf; elemf = elemf.offsetParent) {
		offsetTopF += elemf.offsetTop;
	}
	var heightF = getWindowHeight() - offsetTopF - 10;
	if (heightF >= 0) {
		obj.style.height = heightF + "px";
	}
}

function esperaFitxa(){
	var ifitxa;
	ifitxa = e('quadre_fitxa');
	if (ifitxa.readyState == "complete"){
		cargaMapa();
	}
	else{
		setTimeout("esperaFitxa()",50);
	}
}

function inicia(){
	var ifitxa;
	ifitxa = e('quadre_fitxa');
	ifitxa.src = "index.php?cat=2&amp;idioma=cat";
	//ajutaAltura(ifitxa);
	ajutaAltura(e('divFicha'));
	
	if (document.all){
		esperaFitxa();
	}else{
		ifitxa.onload = cargaMapa();
	}
}

function cargaMapa(){
	var imapa;
	imapa = e('quadre_mapa');
	imapa.src = DIR_MAPA;
	ajutaAltura(e('divMapa'));
	reconfigura();
}

function cambiaConf(casoConf){
	resizeApp();
	if (casoConf == 1){
		e('divMapa').style.display = 'block';
		e('divFicha').style.display = 'block';
		e('divMapa').className = 'Mapa';
		e('divFicha').className = 'Ficha';
	}
	else if (casoConf == 2){
		e('divMapa').style.display = 'none';
		e('divFicha').style.display = 'block';
		e('divFicha').className = 'divSoloFicha';
	}
	else if (casoConf == 3){
		e('divMapa').style.display = 'block';
		e('divMapa').className = 'divSoloMapa';
	}
	CONFI_ACTUAL = casoConf;
}

function enfocaFitxa(){
	enfocaMiniFitxa();
}

function enfFitId(){
	//top.frames['quadre_fitxa'].enfocarFichaSeleccionada(C_IDFITXA);
}

//funciones para mostrar y ocultar los iconos cargando
function muestraCargaFicha(){
	document.getElementById('loadFicha').style.display = 'block';
}

function ocultaCargaFicha(){
	document.getElementById('loadFicha').style.display = 'none';
}

function muestraCargaMapa(){
	document.getElementById('loadMapa').style.display = 'block';
}

function ocultaCargaMapa(){
	setTimeout("ocultaLoadMapa()",2000);
}

function ocultaLoadMapa(){
	document.getElementById('loadMapa').style.display = 'none';
}