/************************* GOOGLE MAPS ****************************/

    var map      = null;
    var geocoder = null;
	var latitud  = null;
	var longitud = null;
	
function inicia_mapa()
{
	
	var zoom = 6;
	
	map = new GMap2(document.getElementById("google_maps")); 
	map.addControl(new GSmallMapControl());	
	

	longitud_centro = -1.142578125;
	latitud_centro = 40.83043687764923;
	map.setCenter(new GLatLng(latitud_centro,longitud_centro), zoom);	

	
	//Definimos el icono personalizado
	var icon = new GIcon(G_DEFAULT_ICON);
	icon.iconSize = new GSize(20, 31);
	icon.iconAnchor = new GPoint(10, 30);
	icon.infoWindowAnchor = new GPoint(5, 1);
	 
	var con_carga_mapa = new XHConn();
	var fin_carga_mapa = function (oXML)
	{
		xml_mapa = oXML.responseXML;
		//Obtenemos del xml los elementos con etiquetas "producto"
		var tiendas = xml_mapa.getElementsByTagName("tiendas");
		//Si vamos a mostrar varias tiendas marcamos en centro en madrid
		for (var i = 0; i < tiendas.length; i++)
		{
			var nombre = "";
			var direccion = "";
			var	detalle_marca = "";
			var longitud = "";
			var latitud = "";
			
			nombre = tiendas[i].getElementsByTagName('nombre')[0].childNodes[0].nodeValue;
			direccion = tiendas[i].getElementsByTagName('direccion')[0].childNodes[0].nodeValue;
			localidad = tiendas[i].getElementsByTagName('localidad')[0].childNodes[0].nodeValue;
			provincia = tiendas[i].getElementsByTagName('provincia')[0].childNodes[0].nodeValue;
			codigo_postal = tiendas[i].getElementsByTagName('codigo_postal')[0].childNodes[0].nodeValue;
			telefono = tiendas[i].getElementsByTagName('telefono')[0].childNodes[0].nodeValue;
			fax = tiendas[i].getElementsByTagName('fax')[0].childNodes[0].nodeValue;
			email = tiendas[i].getElementsByTagName('email')[0].childNodes[0].nodeValue;
						
			//Solo usaremos estas variables para cargar la marca en la localidad en el caso que no tenga dirección o no se encuentre
			longitud = parseFloat(tiendas[i].getElementsByTagName("longitud")[0].childNodes[0].nodeValue);
			latitud = parseFloat(tiendas[i].getElementsByTagName("latitud")[0].childNodes[0].nodeValue);
			
			detalle_marca = '<div id="contenido_tooltip">';
			detalle_marca += '<p class="top_tooltip">&nbsp;</p>';
			detalle_marca += '<p class="tooltip_titulo" >'+nombre+'</p>';
			detalle_marca += '<p class="tooltip_contenido">'+direccion+'</p>';
			detalle_marca += '<p class="tooltip_contenido">'+codigo_postal+' '+localidad+'</p>';
			detalle_marca += '<p class="tooltip_contenido">'+provincia+'</p>';
			detalle_marca += '<p class="tooltip_contenido">'+telefono+' '+fax+'</p>';
			detalle_marca += '<p class="tooltip_contenido">'+email+'</p>';
			detalle_marca += '<p class="bottom_tooltip">&nbsp;</p>';
			detalle_marca += '</div>';
			
		

			muestra_marca_localidad(latitud,longitud,icon,zoom,detalle_marca);
			
		}
	};

	
	
	con_carga_mapa.connect("dinamic/xml_marcas_mapa.xml", "GET", "", fin_carga_mapa);	 
	 
	 
} // fin funcion inicia mapa
	
function muestra_marca_localidad(latitud,longitud,icon,zoom,detalle_marca)
{

	
	var point = new GLatLng(latitud,longitud);
	var marker = new GMarker(point, icon);

	// cargamos el contenido del detalle
	GEvent.addListener(marker, "mouseover", function() { ddrivetip(detalle_marca);} );
	GEvent.addListener(marker, "mouseout", function() {  hideddrivetip();} );
	map.addOverlay(marker);	
}


	
	
	
	
	
	
	
	
	// Gerenador de etiquetas ALT--------------------------------------------

var offsetfromcursorX=12 //Customize x offset of tooltip
var offsetfromcursorY=10 //Customize y offset of tooltip

var offsetdivfrompointerX=10 //Customize x offset of tooltip DIV relative to pointer image
var offsetdivfrompointerY=14 //Customize y offset of tooltip DIV relative to pointer image. Tip: Set it to (height_of_pointer_image-1).

document.write('<div id="dhtmltooltip"></div>') //write out tooltip DIV
document.write('<img id="dhtmlpointer" src="http://www.atmosferasport.es/img/pointer.gif" style="visibility: hidden;">') //write out pointer image

var ie=document.all
var ns6=document.getElementById && !document.all
var enabletip=false
if (ie||ns6)
var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""

var pointerobj=document.all? document.all["dhtmlpointer"] : document.getElementById? document.getElementById("dhtmlpointer") : ""

function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function ddrivetip(thetext, thewidth, thecolor){
if (ns6||ie){
if (typeof thewidth!="undefined") tipobj.style.width=thewidth+"px"
if (typeof thecolor!="undefined" && thecolor!="") tipobj.style.backgroundColor=thecolor
tipobj.innerHTML=thetext
enabletip=true
return false
}
}

function positiontip(e){
if (enabletip){
var nondefaultpos=false
var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
//Find out how close the mouse is to the corner of the window
var winwidth=ie&&!window.opera? ietruebody().clientWidth : window.innerWidth-20
var winheight=ie&&!window.opera? ietruebody().clientHeight : window.innerHeight-20

var rightedge=ie&&!window.opera? winwidth-event.clientX-offsetfromcursorX : winwidth-e.clientX-offsetfromcursorX
var bottomedge=ie&&!window.opera? winheight-event.clientY-offsetfromcursorY : winheight-e.clientY-offsetfromcursorY

var leftedge=(offsetfromcursorX<0)? offsetfromcursorX*(-1) : -1000

//if the horizontal distance isn't enough to accomodate the width of the context menu
if (rightedge<tipobj.offsetWidth){
//move the horizontal position of the menu to the left by it's width
tipobj.style.left=curX-tipobj.offsetWidth+"px"
nondefaultpos=true
}
else if (curX<leftedge)
tipobj.style.left="5px"
else{
//position the horizontal position of the menu where the mouse is positioned
tipobj.style.left=curX+offsetfromcursorX-offsetdivfrompointerX+"px"
pointerobj.style.left=curX+offsetfromcursorX+"px"
}

//same concept with the vertical position
if (bottomedge<tipobj.offsetHeight){
tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px"
nondefaultpos=true
}
else{
tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px"
pointerobj.style.top=curY+offsetfromcursorY+"px"
}
tipobj.style.visibility="visible"
if (!nondefaultpos)
pointerobj.style.visibility="visible"
else
pointerobj.style.visibility="hidden"
}
}

function hideddrivetip(){
if (ns6||ie){

enabletip=false
tipobj.style.visibility="hidden"
pointerobj.style.visibility="hidden"
tipobj.style.left="-1000px"
tipobj.style.backgroundColor=''
tipobj.style.width=''
}
}

document.onmousemove=positiontip

