/**
* Cet objet va permetre l'affichage des pays dans la carte du continent.
* Il va aussi permettre l'affichage des regions lorsqu'il y en a plusieurs pour un pays.
* - element: c'est l'�l�ment contenant l'affichage de la carte.
* - datas: array contenant les donn�es pour l'affichage.
* - positions: array contenant la position des donn�es � afficher.
**/
function Map(element,datas,positions) {

	this.datas=datas;
	this.positions=positions;
	for(var i=0;i<this.datas.length;i++){
		var data=this.datas[i];
		var a=document.createElement("a");
		a.id=data.id;
		var position = {
    		"id" : data.id,
    		"x" : 0,
	 		"y" : 0,
			"width" : 0
		};
		for(var j=0;j<this.positions.length;j++){
			if (data.id == this.positions[j].id) position = this.positions[j]; 
		}
		a.style.left=position.x+"px";
		a.style.top=position.y+"px";
		a.style.textAlign="center";
		a.style.width=position.width+"px";
		if(data.regions!=undefined){
			a.href=data.urlpays;
			if(data.regions.length > 1) {
				regions(element,data,position,a,i);
				a.onmouseover=displayOn;
				a.onmouseout=displayOff;				
			}
		}
		element.appendChild(a);
		a.appendChild(document.createTextNode(data.nom));
	}
}
/**
* Cet objet va permetre affichage des regions.
* - element: c'est l'�l�ment contenant l'affichage de la carte.
* - datas: array contenant les donn�es pour l'affichage.
* - positions: array contenant la position des donn�es � afficher.
* - a: element contenant les pays.
* - i: identifiant de l'�l�ment dans la liste.
**/
function regions(element,data,position,a,i) {
	var div=document.createElement("div");
	div.id="region"+position.id;
	div.style.left=position.x+"px";
	div.style.top=(position.y+10)+"px";
	div.style.display="none";
	div.style.position="absolute";
	div.style.zIndex=1000;
	div.onmouseover=displayOn2;
	div.onmouseout=displayOff2;
	element.appendChild(div);
	var text="";
	for(var j=0;j<data.regions.length;j++){
		var span=document.createElement("span");
		div.appendChild(span);
		span.src=data.regions[j].url;
		span.style.backgroundColor="#ffeccb";
		span.onmouseover=over;
		span.onmouseout=out;
		span.style.display="block";
		span.style.cursor="pointer";
		span.onclick=go; 
		span.appendChild(document.createTextNode(data.regions[j].nom));
	}
}
/**
* Affiche l'�l�ment contenant les regions.
**/
function displayOn(){
	document.getElementById("region"+this.id).style.display="inline";
}
/**
* N'affiche pas l'�l�ment contenant les regions.
**/
function displayOff(){
	document.getElementById("region"+this.id).style.display="none";
}
/**
* N'affiche pas l'�l�ment contenant les regions.
**/
function displayOn2(){
	document.getElementById(this.id).style.display="inline";
}
/**
* N'affiche pas l'�l�ment contenant les regions.
**/
function displayOff2(){
	document.getElementById(this.id).style.display="none";
}
/**
* Change la couleur quand le cuseur est au dessus de l'�lement.
**/
function over(){
	this.style.backgroundColor="#ffc085";
}
/**
* Change la couleur quand le cuseur n'est plus au dessus de l'�lement.
**/
function out(){
	this.style.backgroundColor="#ffeccb";
}
/**
* Redirection lors du clique.
**/
function go(){
	window.location.href=this.src;
}
