var map,street;

initGoogleMaps = function (e) {
	if (GBrowserIsCompatible()) {
		els = document.getElementsByClassName('google');
		for (i=0,j=els.length;i<j;i++) {
			var geocoder = new GClientGeocoder();
			gAddress = els[i].getAttribute('data');
			
			if (els[i].hasClassName('google-streetview')) {
				street = new GStreetviewPanorama(els[i]);
				
				geocoder.getLatLng(gAddress, function(point) {
					street.setLocationAndPOV(point, {});
				});
			} else if (els[i].hasClassName('google-maps')) {
				map = new GMap2(els[i]);
				map.setUIToDefault();

				geocoder.getLatLng(gAddress, function(point) {
					try {
						map.setCenter(point, 16);
					} catch (err) {
						
					}
					map.addOverlay(new GMarker(point));
				});
			} else if (els[i].hasClassName('google-satellite')) {
				map = new GMap2(els[i]);
				map.setMapType(G_SATELLITE_MAP);
				map.setUIToDefault();
				
				geocoder.getLatLng(gAddress, function(point) {
					try {
						map.setCenter(point, 15);
					} catch (err) {
						
					}
					map.addOverlay(new GMarker(point));
				});
			}
		}
	}
}

Event.observe (window,'load',initGoogleMaps);
Event.observe (window,'unload',GUnload);