// constants
var ELEMENT_NODE_TYPE = 1;
var TIEMPO_CRON = 600000; //10 minutos en milisegundos

function addObservacions(observacions){	
	var obsContainer=document.getElementById("observaciones");
	while ( obsContainer.hasChildNodes() ){
		obsContainer.removeChild( obsContainer.firstChild );
	}
		
	for(var i=0; i<observacions.length;i++){
		addObservacio(observacions[i]);
	}
	separaObservaciones();	
}
function addObservacio(observacio){
	var obsContainer=document.getElementById("observaciones");
	var divElem=document.createElement("div");
	divElem.className="mapaObservacio";
	if (observacio.observacions) {
		var id = observacio.observacions[observacio.observacions.length - 1];
		divElem.setAttribute("id","obs-"+id);
		divElem.onclick=new Function("showDetallObservacio('"+id+"',true,'" + observacio.observacions.join(',') + "')");
	} else if (observacio.alerts) {
		var id = observacio.alerts[observacio.alerts.length -1];
		divElem.setAttribute("id","ema-"+id);
		//alert("showDetallAlertaEMA('" + id + "',true,'" + observacio.alerts.join(',') + "')");
		divElem.onclick=new Function("showDetallAlertaEMA('" + id + "',true,'" + observacio.alerts.join(',') + "')");
	}
	divElem.style.position="absolute";
	divElem.style.top=observacio.top+"px";
	divElem.style.left=observacio.left+"px";
	imgElm=document.createElement("img");
	imgElm.setAttribute("src",webroot + "/imatges/meteors/"+observacio.imgName+".png");
	imgElm.setAttribute('width','35');
	imgElm.setAttribute('height','35');
	divElem.appendChild(imgElm);
	obsContainer.appendChild(divElem);
}

function separaObservaciones(){
	var observaciones=document.getElementById("observaciones").childNodes;
	var obsPosArray=new Array();
	for(var i=0;i< observaciones.length;i++){		
		if(observaciones[i].nodeType == ELEMENT_NODE_TYPE){	
			addObsPos(observaciones[i],obsPosArray);		
		}
	}
	
	for(var i=0;i< obsPosArray.length;i++){	
		var matrix=new Matrix();					
		for(var j=0;j<obsPosArray[i].length;j++){
			matrix.addElement(obsPosArray[i][j]);			
		}
		
	}
}

function addObsPos(obs,arrayPos){
	var added=false;
	for(var i=0;i<arrayPos.length;i++){
		if(arrayPos[i][0].style.top==obs.style.top &&
			arrayPos[i][0].style.left==obs.style.left){
			arrayPos[i][arrayPos[i].length]=obs;			
			added=true;
		}
	}
	if(!added){
		var pos=arrayPos.length;
		arrayPos[pos]=new Array();		
		arrayPos[pos][0]=obs;
	}
}


function xShow(id, visible) {
	var element = document.getElementById(id);
	if (element != null) {
		if (visible) element.style.display = '';
		else element.style.display = 'none';
	}
}


function hideMessatge(id) {
	xShow(id,false);
}

var count = 0;
var initHeight = 0;
function showMessatge(text, level) {
	shown = true;
	var autoClose = false;
	var errors = null
	var childs = document.getElementsByTagName("body");
	var i = 0;
	//while (i < childs.length) {
		//alert(childs[i].nodeName);
		//if ((childs[i].nodeName == "BODY")||(childs[i].nodeName == "body")) {
			errors = childs[i];	
		//}
		//i++;
	//}
	
	if (errors != null) {

		var element = document.createElement("a");
		element.id = "id_" + count++;
		if (level == "1") {
			xAddClass(element,"messatge-debug");
			//element.href = "javascript:hideMessatge('" + element.id + "')";
			autoClose = false;
		} else if (level == "2") {
			xAddClass(element,"messatge-info");
			//element.href = "javascript:hideMessatge('" + element.id + "')";
			autoClose = false;
		} else if (level == "3") {
			xAddClass(element,"messatge-warning");
			//element.href = "javascript:hideMessatge('" + element.id + "')";
			autoClose = false;
		} else if (level == "4") {
			xAddClass(element,"messatge-error");
			//element.href = "javascript:hideMessatge('" + element.id + "')";
			autoClose = false;
		}
		var messatges = text.split('|');
		for (var i = 0; i < messatges.length; i++) {
			if (messatges != '') {
				element.appendChild(document.createTextNode(messatges[i]));
			}
			if (i < messatges.length -1) {
				element.appendChild(document.createElement("br"));
			}
		}
		
		errors.insertBefore(element,errors.firstChild);
		

		xMoveTo(element, xClientWidth()/2 - xWidth(element)/2, 5);
		xShow(element.id, true);
	}
}

function formatFecha(fecha) {
	var split = fecha.split(" ");
	return '' + split[0] + idiomes['A_LES'] + split[1] + '';
}

function loadDades() {
	var head = document.getElementsByTagName("head").item(0);
	var scriptTag = document.getElementById("dades_js");
	if(scriptTag) head.removeChild(scriptTag);
	var script = document.createElement("SCRIPT");
	script.id = "dades_js";
	script.type = "text/javascript";
	head.appendChild(script);

	//Para IE
    script.onreadystatechange = function () {
        if (script.readyState == 'loaded') {
            load();
        }
    }
	//Para Firefox
    script.onload = function () {
    	load();
    }
    script.src = webroot + "/scripts/dades.js" + "?radn=" + (new Date()).getTime();
}
