/* geoad.js 
   J. Kalikstein 02/13/2007 
*/

var arrAds = [];

var BshowAds = true;

function sl(naptime){
      naptime = 250;
      var sleeping = true;
      var now = new Date();
      var alarm;
      var startingMSeconds = now.getTime();
      while(sleeping){
         alarm = new Date();
         alarmMSeconds = alarm.getTime();
         if(alarmMSeconds - startingMSeconds > naptime){ sleeping = false; }
      }     
} 

var AdSite;
function geoAdInit() {
	var CurrentPage = window.location.pathname.split('/').pop();
	if(CurrentPage != "partner_tool") {
		GEvent.addListener(map, 'moveend', showAds);
		showAds();
	}
	try {
	AdSite = Style.url.split('.')[1];
	} catch(e) {}
}


function showAds() {
	// GeoAds disabled until we have a deal in place
	clearAdMarkers();
	if(!BshowAds) {
		return;
	}
	// only show ads when zoomed in pretty close
	if(map.getZoom() < 12) {
		return;
	}	

	var bounds = map.getBounds();
	var p1 = bounds.getSouthWest();
	var p2 = bounds.getNorthEast();

	var minLat = Math.min(p1.lat(), p2.lat());
	var maxLat = Math.max(p1.lat(), p2.lat());
	var minLng = Math.min(p1.lng(), p2.lng());
	var maxLng = Math.max(p1.lng(), p2.lng());
	
	var adUrl = "http://api.mapmyfitness.com/1/geoads/admarkers.php?o=json&site=" + AdSite + "&minlat=" + minLat + "&maxlat=" + maxLat + "&minlng=" + minLng + "&maxlng=" + maxLng;
	
	$.getScript(adUrl, function(data) {
		$(GEOADS).each( function(){
		
		var lat = this.lat;
		var lng = this.lng;

		var p = new GLatLng(lat, lng);

		adIcon.image = MARKER_DIRECTORY + this.client + ".png";
		var newMarker = new GMarker(p, {icon: adIcon});
	
		newMarker.infoHtml = '<div adId="' + this.id + '" />' + this.html;
		GEvent.addListener(newMarker, 'click', function() {
			
		});	
		map.addOverlay(newMarker);
		arrAds.push(newMarker);
		});
	});
}

function clearAdMarkers() {
	while(arrAds.length > 0) {
		var ad = arrAds.pop();
		map.removeOverlay(ad);
	}
}
function GeoAd(mark) {
	this.marker = mark;
}


// end geoad.js

