//function to hide the tool tip
function hideToolTip () {
  toolTip.style.visibility="hidden";
};

//function to show the tool tip
function showToolTip(marker) {
  toolTip.innerHTML = marker.tooltip;
  var point=map.getCurrentMapType().getProjection().fromLatLngToPixel(map.getBounds().getSouthWest(),map.getZoom());
  var offset=map.getCurrentMapType().getProjection().fromLatLngToPixel(marker.getPoint(),map.getZoom());
  var anchor=marker.getIcon().iconAnchor;
  var width=marker.getIcon().iconSize.width;
  var pos = new GControlPosition(G_ANCHOR_BOTTOM_LEFT, new GSize(offset.x - point.x - anchor.x + width,- offset.y + point.y +anchor.y)); 
  pos.apply(toolTip);
  toolTip.style.visibility="visible";
}; 

$(function() {
    $('a[rel*=external]').click( function() {
    	var merchant = $(this).attr('class'); 
    	pageTracker._trackPageview('/merchants/'+merchant+'/');     
        window.open(this.href);
        return false;
    });
});


$(document).ready(function() { 

 $('#nav li').hover(  
    function () {  
       $('ul', this).slideDown(100);  
     },   
    function () {  
         $('ul', this).slideUp(100);           
         }  
    );  
});  

//load Google Map
function load() {
  if (GBrowserIsCompatible()) {
	
  	var map = new GMap2(document.getElementById("googlefrontpagemap"));
	var geocoder = new GClientGeocoder();
	map.setCenter(new GLatLng(0,0),0);
	map.setMapType(G_PHYSICAL_MAP);
	geocoder.setBaseCountryCode("nl");

	//add controls
    map.addControl(new GMapTypeControl());


    GDownloadUrl("../../xml/highlights.list.php", function(data, responseCode) {
	    var xml = GXml.parse(data);
	
		//store markers in markers array
	    var markers = xml.documentElement.getElementsByTagName("marker");
	
	    //create bounds
	    var bounds = new GLatLngBounds();
		
		//loop over the markers array
		  for (var i = 0; i < markers.length; i++) {
				// create marker icon
				var icon = new GIcon();
				
				icon.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
				icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
				
				icon.iconSize = new GSize(15, 20);
				icon.iconAnchor = new GPoint(6, 20);
				icon.infoWindowAnchor = new GPoint(5, 1);			  
			    var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
			                            parseFloat(markers[i].getAttribute("lng")));
			    //map.addOverlay(new GMarker(point));
			    bounds.extend(point);
			    	
		        var html 	 = markers[i].getAttribute("html");
		        var deeplink = markers[i].getAttribute("deeplink");
		        var marker 	 = createMarker(point, html, icon, deeplink);
		        map.addOverlay(marker);
				map.addControl(new GMapTypeControl());
			  }
		  	// end loop
		  
	      // ===== determine the zoom level from the bounds =====
		  var zoomlevel = map.getBoundsZoomLevel(bounds);
	
		   if (zoomlevel > 10) { zoomlevel = 10;  }
		   else zoomlevel = zoomlevel - 1;
		
		   map.setZoom(zoomlevel);
	
	       // ===== determine the centre from the bounds ======
		   map.setCenter(bounds.getCenter());
	       map.setUIToDefault();
	       map.disableScrollWheelZoom();

		  }
		); //close GDownloadUrl
    
	//Create marker and set up event window
	function createMarker(point,html,icon, deeplink){
	  var marker = new PdMarker(point,icon);
	  GEvent.addListener(marker, "click", function() {
		  window.location=deeplink;
	  }); 
	  GEvent.addListener(marker, 'mouseover', function() {
			marker.setTooltip(html);
	   }); 
	  return marker;
	}
  } //close GBrowserIsCompatible
} //close load
