google.load("maps", "2");
var map;
var entries = new Array();
function initmaps() {
	map = new google.maps.Map2(document.getElementById("map"),{'backgroundColor':'transparent'});
	//map.addControl(new GSmallMapControl());
	map.setMapType(G_HYBRID_MAP);
    map.setCenter(new google.maps.LatLng(0, 0), 1);
	add_markers_to_map(map);
}

function add_markers_to_map(mapObj) {
	var data = {'type':map_source,'id':map_data};
	$.getJSON('/ajax/coordinates.php',data, function(json) {
		var point;
	    for (x in json['points']) {
		    point = new GLatLng(json['points'][x].lat,json['points'][x].lon);
		    var html = '<a href="/'+json['points'][x].url+'">'+json['points'][x].title+
		    '<br />'+json['points'][x].publish_date+'</a>';
			entries[x] = new GMarker(point,html);
			entries[x]['html'] = html;
			mapObj.addOverlay(entries[x]);
			GEvent.addListener(entries[x], 'click', function() {
					this.openInfoWindowHtml(this['html']);
			});	
	  	}
	  	
		var sw = new GLatLng(json['meta'].min_lat,json['meta'].min_lon);
		var ne = new GLatLng(json['meta'].max_lat,json['meta'].max_lon);	
		var latlngbounds = new GLatLngBounds(sw,ne);
	  	var zoom = map.getBoundsZoomLevel(latlngbounds);
	  	if (zoom > 5) zoom = 5;
		//alert(zoom);
	  	map.setCenter(new google.maps.LatLng(json.meta['centre_lat'], json.meta['centre_lon']), zoom);
	});
}


function getedges(mapObj,profile_id) {
	var b = mapObj.getBounds();
	var sw = b.getSouthWest();
	var ne = b.getNorthEast();
	
	var bounds = {
		'north':ne.lat(),
		'south':sw.lat(),
		'east':ne.lng(),
		'west':sw.lng(),
		'vspan': ne.lat()-sw.lat(),
		'hspan': ne.lng()-sw.lng(),
		'profile_id':profile_id,	
		};
	return bounds;
}
		
$(document).ready(function() {
	$.ajaxSetup({ 
		timeout: 5000 
	});
	if (show_map){
		$('#entries_holder').hide();
		$('#show_list a').click(function(){
			$('#entries_holder').fadeIn('slow',function() {
				$('#show_list').slideUp('fast');
			});
			return false;
		});
		google.setOnLoadCallback(initmaps);
	}
});

$(window).unload( function () {
	GUnload();
});