var map = null;
var geocoder = null;
var latsgn = 1;
var lgsgn = 1;
var zm = 0; 
var posset = 0;
var default_lat = 37.3;
var default_lng = -119.8;
var markers = [];
var northern_cal_lat = 37.7;
var northern_cal_lng = -121.9;
var southern_cal_lat = 33.9;
var southern_cal_lng = -117.9;

var baseIcon = new GIcon(G_DEFAULT_ICON);
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(9, 34);
baseIcon.infoWindowAnchor = new GPoint(9, 2);


function setup_gmap() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		map.setCenter(new GLatLng(default_lat, default_lng), 6);
		map.setMapType(G_NORMAL_MAP);
		map.addControl(new GLargeMapControl());
		map.addControl(new GScaleControl());
		map.addControl(new GMapTypeControl())
		map.removeMapType(G_HYBRID_MAP);
		//map.addControl(new GOverviewMapControl());
		//map.enableScrollWheelZoom();
		map.disableDoubleClickZoom();
		geocoder = new GClientGeocoder();
		
		$(locations).each(function () { 
			add_point(this.id, this.data);
		});
	}
}

function showNorthernCalMap() {
	map.setCenter(new GLatLng(northern_cal_lat, northern_cal_lng), 9);
}

function showSouthernCalMap() {
	map.setCenter(new GLatLng(southern_cal_lat, southern_cal_lng), 8);
}

function resetMap() {
	map.setCenter(new GLatLng(default_lat, default_lng), 6);
}

function add_point(id, data) {
	var customIcon = new GIcon(baseIcon);
	customIcon.image = web_root + 'img/markers/marker_' + id + '.png';
	
	var marker = new GMarker(new GLatLng(data.lat, data.lng), { icon : customIcon });
	map.addOverlay(marker);
	
	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml(data.html);
	});
	
	markers[id] = marker;

}

function showMapPopup(id) {
	var marker = markers[id];
	var location = locations[id - 1];
	marker.openInfoWindowHtml(location.data.html);
	//map.setCenter(new GLatLng(location.data.lat, location.data.lng), 10);
}

function setActiveLocation(id) {
	$('.active-location').removeClass('active-location');
	$('#location_' + id).addClass('active-location');
}