// Mapping Software (main)
//
// © 2009 Gary Little
//
// June 17, 2009
//

function mapMain() {

	gMinimumRating = 0;
	gPictureFlag = false;
	gDamFlag = false;

	document.getElementById(kSidebarID).style.backgroundColor = kListOffColor;
	
	gMarkerCount = 0;
	
	loadProperties();
	loadRegions();
	
	gStartCoordinates = regionDB[0].theLocation;
	gStartZoom = regionDB[0].theZoomLevel;
	gStartMode = regionDB[0].theMode;
	
	gMap = new GMap2(document.getElementById(kMapID), {draggableCursor: 'move', draggingCursor: 'crosshair'});
	gMap.setCenter(gStartCoordinates, gStartZoom, gStartMode);
	
	gMap.addMapType(G_PHYSICAL_MAP);
	
	gMap.addControl(new GLargeMapControl());
	gMap.addControl(new GHierarchicalMapTypeControl());
	gMap.addControl(new GScaleControl());

	// Add the KeyDragZoom feature.
	//
	gMap.enableKeyDragZoom({
		key: "shift", 
		boxStyle: {
			border: "4px solid #736AFF",
			backgroundColor: "transparent",
			opacity: 1.0
		},
		veilStyle: {
			backgroundColor: "gray",
			opacity: 0.4,
			cursor: "crosshair"
		},
		visualEnabled: true,
		visualPosition: new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(27, 295))
	});
	
	addLatLongDisplay(kCoordinatesID);
	addDateDisplay(kUpdatedID);
	
	
	addMapEventListeners();
	
	addAllMarkers();
	searchRecords();
	
	
	if ( kShowMapBranding ) {
	
		// Add the branding to the map.
		//
		gBranding = document.createElement("div");
		gBranding.id = kBrandingID;
		gBranding.innerHTML = kBrandingHTML;
		gPosControl = new GControlPosition(G_ANCHOR_BOTTOM_LEFT, new GSize(3, 35));
		gPosControl.apply(gBranding);
		gMap.getContainer().appendChild(gBranding);
		gBranding.onmousedown = function () { return false; };
		gBranding.onselectstart = function () { return false; };
	}
	
	// Add the copyright notice.
	//
	gCopyright = document.createElement("div");
	gCopyright.id = kCopyrightID;
	gCopyright.innerHTML = kCopyrightNotice;
	gPosControl = new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(3, 13));
	gPosControl.apply(gCopyright);
	gMap.getContainer().appendChild(gCopyright);
	gCopyright.onmousedown = function () { return false; };
	gCopyright.onselectstart = function () { return false; };
	
	GEvent.trigger(gMap, "move");
}
