var map;
var marker;

var initializeMapRaw, initializeMap, createMap, createMarker;

function prepMap() {

	var shadow = new google.maps.MarkerImage('/resources/eda49c056d/images/vrfresh/map_house_shadow.png',
		      new google.maps.Size(52, 35),
		      new google.maps.Point(0,0),
		      new google.maps.Point(5, 36));
	
	var icon = new google.maps.MarkerImage('/resources/eda49c056d/images/vrfresh/map_house_icon.png',
		      new google.maps.Size(40, 35),
		      new google.maps.Point(0,0),
		      new google.maps.Point(0, 32));
	
	createMarker = function(map) {
		var innerMarker = new google.maps.Marker({
			position: map.getCenter(),
			clickable: false,
			draggable: false,
			shadow: shadow,
			icon: icon
		  });
		
		innerMarker.setMap(map);
		return innerMarker;
	}

	createMap = function(latLng, zoomLevel) {
	
		if (!latLng) {
		    latLng =  new google.maps.LatLng(37.4419, -122.1419);
		}
		if (!zoomLevel) {
			zoomLevel = 22;
		}
	
		var myOptions = {
			    zoom: zoomLevel,
			    center: latLng,
			    minZoom: 0,			    
			    maxZoom: zoomLevel,
			    draggable: false,
			    streetViewControl:false,
	            scrollwheel:false,
	            disableDoubleClickZoom: true,
			    mapTypeId: google.maps.MapTypeId.ROADMAP,
			    mapTypeControl: true,
			    mapTypeControlOptions: {
					style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR
				},
			    zoomControlOptions: {
			        style: google.maps.ZoomControlStyle.SMALL
		      	}
			}
		var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
		return map;
	}

	initializeMap = function(latLng, zoomLevel, hasMarker) {
		map = createMap(latLng, zoomLevel);
		if (hasMarker) {
			marker = createMarker(map);
		}
	}
	
	initializeMapRaw = function(latitude, longitude, zoomLevel, hasMarker) {
		initializeMap(new google.maps.LatLng(latitude, longitude), zoomLevel, hasMarker);
	}
}

