

var arrMarkers = new Array(intNumCommunities);
	var point;
	var marker;
	for (i=0;i<intNumCommunities;i++) {
		point = new GLatLng(arrLats[i], arrLongs[i]);
		marker = new GMarker(point);
		arrMarkers[i] = marker;
		eval("GEvent.addListener(arrMarkers[" + i + "], \"click\", function() { var marker; marker = arrMarkers[" + i + "]; strHTML = arrHTMLS[" + i + "]; marker.openInfoWindowHtml(strHTML); })");
			
	} // for i thru comms	
	
				
	var map = null;
	var geocoder = null;
	//var objMarkerManage = null;
	var batch = [];	
	
	function load() {
	  if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		geocoder = new GClientGeocoder();
		
		map.addControl(new GScaleControl());
	//	map.addControl(new GSmallMapControl());
		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
	//	map.addControl(new GOverviewMapControl());
		map.enableDoubleClickZoom();
		map_reset();
		
		batch = arrMarkers;
		for (i=0; i<intNumCommunities;i++) {
			map.addOverlay(arrMarkers[i]);
		} // for - i thru comms	
		
		
		strHTML = "<span style=\"color:#000000;\"><b>Townhomes at Arbor Lakes</b><br />Maple Grove, MN 55369</span>";
		strHTML = "<span style=\"font-family: Arial, sans-serif;color: #000000\"><strong>Townhomes at Arbor Lakes</strong><br />8002 Magnolia Ln N<br />Osseo, MN 55369</span>";
		strHTML = "<span style=\"font-family: Arial, sans-serif;color: #000000\"><strong>Townhomes at Arbor Lakes</strong><br />8051 Larch Lane<br />Maple Grove, MN</span>";
		marker = arrMarkers[0];
		marker.openInfoWindowHtml(strHTML);				
		
		//var mgrOptions = { trackMarkers: false };
		//objMarkerManage = new GMarkerManager(map, mgrOptions);
		//objMarkerManage.addMarkers(batch, 1);
		//objMarkerManage.refresh();
	  }
	} // function - load	
	

	
	function showAddress(address, strZoomLevel) {
	  if (geocoder) {
		  var intZoom;
		  strAddress = new String(address);
		  
		  intZoom = 6;
		  switch(true) {
			case(strAddress.toLowerCase()=="al"): 
				address = "Alabama"; 
				break;
			case(strAddress.toLowerCase()=="alabama"): 
				address = "Alabama"; 
				break;
			case(strAddress.toLowerCase()=="ak"): 
				address = "Alaska"; 
				intZoom = 3;
				break;
			case(strAddress.toLowerCase()=="alaska"): 
				address = "Alaska"; 
				intZoom = 3;
				break;			
			case(strAddress.toLowerCase()=="az"): 
				address = "Arizona"; 
				break;	
			case(strAddress.toLowerCase()=="arizona"): 
				address = "Arizona"; 
				break;				
			case(strAddress.toLowerCase()=="as"): 
				address = "American Samoa"; 
				break;				
			case(strAddress.toLowerCase()=="american samoa"): 
				address = "American Samoa"; 
				break;															
			case(strAddress.toLowerCase()=="ar"): 
				address = "Arkansas"; 
				break;
			case(strAddress.toLowerCase()=="arkansas"): 
				address = "Arkansas"; 
				break;			
			case(strAddress.toLowerCase()=="ca"): 
				address = "California"; 
				intZoom = 5;
				break;			
			case(strAddress.toLowerCase()=="california"): 
				address = "California"; 
				intZoom = 5;
				break;						
			case(strAddress.toLowerCase()=="co"): 
				address = "Colorado"; 
				break;	
			case(strAddress.toLowerCase()=="colorado"): 
				address = "Colorado"; 
				break;				
			case(strAddress.toLowerCase()=="ct"): 
				address = "Connecticut";
				intZoom = 8; 
				break;		
			case(strAddress.toLowerCase()=="connecticut"): 
				address = "Connecticut";
				intZoom = 8; 
				break;											
			case(strAddress.toLowerCase()=="de"): 
				address = "Delaware";
				intZoom = 7; 
				break;
			case(strAddress.toLowerCase()=="delaware"): 
				address = "Delaware";
				intZoom = 7; 
				break;								
			case(strAddress.toLowerCase()=="dc"): 
				address = "District of Columbia";
				intZoom = 8;  
				break; 
			case(strAddress.toLowerCase()=="district of columbia"): 
				address = "District of Columbia";
				intZoom = 8;  
				break; 			
			case(strAddress.toLowerCase()=="fm"): 
				address = "Federated States of Micronesia"; 
				break;
			case(strAddress.toLowerCase()=="federated states of micronesia"): 
				address = "Federated States of Micronesia"; 
				break;			
			case(strAddress.toLowerCase()=="fl"): 
				address = "Florida";
				intZoom = 5;  
				break;
			case(strAddress.toLowerCase()=="florida"): 
				address = "Florida";
				intZoom = 5;  
				break;			
			case(strAddress.toLowerCase()=="ga"): 
				address = "Georgia"; 
				break;
			case(strAddress.toLowerCase()=="georgia"): 
				address = "Georgia"; 
				break;			
			case(strAddress.toLowerCase()=="gu"): 
				address = "Guam"; 
				break;
			case(strAddress.toLowerCase()=="guam"): 
				address = "Guam"; 
				break;			
			case(strAddress.toLowerCase()=="hi"): 
				address = "Hawaii"; 
				intZoom = 5; 
				break;
			case(strAddress.toLowerCase()=="hawaii"): 
				address = "Hawaii"; 
				intZoom = 5; 
				break;			
			case(strAddress.toLowerCase()=="id"): 
				address = "Idaho";
				intZoom = 5;  
				break; 
			case(strAddress.toLowerCase()=="idaho"): 
				address = "Idaho";
				intZoom = 5;  
				break; 			
			case(strAddress.toLowerCase()=="il"): 
				address = "Illinois"; 
				break;
			case(strAddress.toLowerCase()=="illinois"): 
				address = "Illinois"; 
				break;			
			case(strAddress.toLowerCase()=="in"): 
				address = "Indiana"; 
				break;
			case(strAddress.toLowerCase()=="indiana"): 
				address = "Indiana"; 
				break;			
			case(strAddress.toLowerCase()=="ia"): 
				address = "Iowa"; 
				break;
			case(strAddress.toLowerCase()=="iowa"): 
				address = "Iowa"; 
				break;			
			case(strAddress.toLowerCase()=="ks"): 
				address = "Kansas"; 
				break;
			case(strAddress.toLowerCase()=="kansas"): 
				address = "Kansas"; 
				break;			
			case(strAddress.toLowerCase()=="ky"): 
				address = "Kentucky"; 
				break; 
			case(strAddress.toLowerCase()=="kentucky"): 
				address = "Kentucky"; 
				break; 			
			case(strAddress.toLowerCase()=="la"): 
				address = "Louisiana"; 
				break;
			case(strAddress.toLowerCase()=="louisiana"): 
				address = "Louisiana"; 
				break;			
			case(strAddress.toLowerCase()=="me"): 
				address = "Maine"; 
				break;
			case(strAddress.toLowerCase()=="maine"): 
				address = "Maine"; 
				break;			
			case(strAddress.toLowerCase()=="mh"): 
				address = "Marshall Islands"; 
				break; 
			case(strAddress.toLowerCase()=="marshall islands"): 
				address = "Marshall Islands"; 
				break;			
			case(strAddress.toLowerCase()=="md"): 
				address = "Maryland"; 
				intZoom = 7; 
				break;
			case(strAddress.toLowerCase()=="maryland"): 
				address = "Maryland"; 
				intZoom = 7; 
				break;			
			case(strAddress.toLowerCase()=="ma"): 
				address = "Massachusetts"; 
				intZoom = 7; 
				break;
			case(strAddress.toLowerCase()=="massachusetts"): 
				address = "Massachusetts"; 
				intZoom = 7; 
				break;			
			case(strAddress.toLowerCase()=="mi"): 
				address = "Michigan"; 
				break; 
			case(strAddress.toLowerCase()=="michigan"): 
				address = "Michigan"; 
				break;			
			case(strAddress.toLowerCase()=="mn"): 
				address = "Minnesota"; 
				break;
			case(strAddress.toLowerCase()=="minnesota"): 
				address = "Minnesota"; 
				break;			
			case(strAddress.toLowerCase()=="mo"): 
				address = "Missouri"; 
				break; 
			case(strAddress.toLowerCase()=="missouri"): 
				address = "Missouri"; 
				break; 			
			case(strAddress.toLowerCase()=="mt"): 
				address = "Montana"; 
				break;
			case(strAddress.toLowerCase()=="montana"): 
				address = "Montana"; 
				break;			
			case(strAddress.toLowerCase()=="ne"): 
				address = "Nebraska"; 
				break;
			case(strAddress.toLowerCase()=="nebraska"): 
				address = "Nebraska"; 
				break;			
			case(strAddress.toLowerCase()=="nv"): 
				address = "Nevada"; 
				break; 
			case(strAddress.toLowerCase()=="mevada"): 
				address = "Nevada"; 
				break;			
			case(strAddress.toLowerCase()=="nh"): 
				address = "New Hampshire"; 
				break;
			case(strAddress.toLowerCase()=="new hampshire"): 
				address = "New Hampshire"; 
				break;			
			case(strAddress.toLowerCase()=="nj"): 
				address = "New Jersey";
				intZoom = 7; 
				break;
			case(strAddress.toLowerCase()=="new jersey"): 
				address = "New Jersey";
				intZoom = 7; 
				break;			
			case(strAddress.toLowerCase()=="nm"): 
				address = "New Mexico"; 
				break;
			case(strAddress.toLowerCase()=="new mexico"): 
				address = "New Mexico"; 
				break;			
			case(strAddress.toLowerCase()=="ny"): 
				address = "New York"; 
				intZoom = 7;
				break;
			case(strAddress.toLowerCase()=="new york"): 
				address = "New York"; 
				intZoom = 7;
				break;			
			case(strAddress.toLowerCase()=="nc"): 
				address = "North Carolina"; 
				break;
			case(strAddress.toLowerCase()=="north carolina"): 
				address = "North Carolina"; 
				break;			
			case(strAddress.toLowerCase()=="nd"): 
				address = "North Dakota"; 
				break;
			case(strAddress.toLowerCase()=="north dakota"): 
				address = "North Dakota"; 
				break;			
			case(strAddress.toLowerCase()=="mp"): 
				address = "Northern Marina Islands"; 
				break;
			case(strAddress.toLowerCase()=="northern marina islands"): 
				address = "Northern Marina Islands"; 
				break;			
			case(strAddress.toLowerCase()=="oh"): 
				address = "Ohio"; 
				break;
			case(strAddress.toLowerCase()=="ohio"): 
				address = "Ohio"; 
				break;			
			case(strAddress.toLowerCase()=="ok"): 
				address = "Oklahoma"; 
				break;
			case(strAddress.toLowerCase()=="oklahoma"): 
				address = "Oklahoma"; 
				break;			
			case(strAddress.toLowerCase()=="or"): 
				address = "Oregon";
				intZoom = 5; 
				break;
			case(strAddress.toLowerCase()=="oregon"): 
				address = "Oregon";
				intZoom = 5; 
				break;			
			case(strAddress.toLowerCase()=="pw"): 
				address = "Palau"; 
				break;
			case(strAddress.toLowerCase()=="palau"): 
				address = "Palau"; 
				break;			
			case(strAddress.toLowerCase()=="pa"): 
				address = "Pennsylvania"; 
				break;
			case(strAddress.toLowerCase()=="pennsylvania"): 
				address = "Pennsylvania"; 
				break;			
			case(strAddress.toLowerCase()=="pr"): 
				address = "Puerto Rico"; 
				intZoom = 15; 
				break;
			case(strAddress.toLowerCase()=="puerto rico"): 
				address = "Puerto Rico"; 
				intZoom = 15; 
				break;			
			case(strAddress.toLowerCase()=="ri"): 
				address = "Rhode Island";
				intZoom = 8; 
				break;
			case(strAddress.toLowerCase()=="rhode island"): 
				address = "Rhode Island";
				intZoom = 8; 
				break;			
			case(strAddress.toLowerCase()=="sc"): 
				address = "South Carolina"; 
				break;	
			case(strAddress.toLowerCase()=="south carolina"): 
				address = "South Carolina"; 
				break;							
			case(strAddress.toLowerCase()=="sd"): 
				address = "South Dakota"; 
				break;
			case(strAddress.toLowerCase()=="south dakota"): 
				address = "South Dakota"; 
				break;			
			case(strAddress.toLowerCase()=="tn"): 
				address = "Tennessee"; 
				break;
			case(strAddress.toLowerCase()=="tennessee"): 
				address = "Tennessee"; 
				break;			
			case(strAddress.toLowerCase()=="tx"): 
				address = "Texas"; 
				intZoom = 5;
				break;
			case(strAddress.toLowerCase()=="texas"): 
				address = "Texas"; 
				intZoom = 5;
				break;			
			case(strAddress.toLowerCase()=="ut"): 
				address = "Utah"; 
				break;	
			case(strAddress.toLowerCase()=="utah"): 
				address = "Utah"; 
				break;								
			case(strAddress.toLowerCase()=="vt"): 
				address = "Vermont"; 
				intZoom = 7;
				break;
			case(strAddress.toLowerCase()=="vermont"): 
				address = "Vermont"; 
				intZoom = 7;
				break;			
			case(strAddress.toLowerCase()=="vi"): 
				address = "Virgin Islands"; 
				break;
			case(strAddress.toLowerCase()=="virgin islands"): 
				address = "Virgin Islands"; 
				break;			
			case(strAddress.toLowerCase()=="va"): 
				address = "Virginia"; 
				break;		
			case(strAddress.toLowerCase()=="virginia"): 
				address = "Virginia"; 
				break;			
			case(strAddress.toLowerCase()=="wa"): 
				address = "Washington"; 
				break;
			case(strAddress.toLowerCase()=="washington"): 
				address = "Washington"; 
				break;														
			case(strAddress.toLowerCase()=="wv"): 
				address = "West Virginia"; 
				break;
			case(strAddress.toLowerCase()=="west virginia"): 
				address = "West Virginia"; 
				break;
			case(strAddress.toLowerCase()=="wi"): 
				address = "Wisconsin"; 
				break;	
			case(strAddress.toLowerCase()=="wisconsin"): 
				address = "Wisconsin"; 
				break;						
			case(strAddress.toLowerCase()=="wy"): 
				address = "Wyoming"; 
				break;
			case(strAddress.toLowerCase()=="wyoming"): 
				address = "Wyoming"; 
				break;													
			case(strAddress.length>10): intZoom = 14;
				break;
			default: intZoom = 12;
		  } // switch - true
		  if (strZoomLevel!="") {
		  	intZoom = parseInt(strZoomLevel);
		  }
		  
		
		geocoder.getLatLng(
		  address,
		  function(point) {
			if (!point) {
			  alert(address + " not found");
			} else {
			  map.setCenter(point, intZoom);
			 
			 // map.clearOverlays();
			 // objMarkerManage.addMarkers(batch, 1);
			 // objMarkerManage.refresh();
			 // alert(intZoom);
			 // alert(objMarkerManage.getMarkerCount(intZoom));
			//  while ((objMarkerManage.getMarkerCount(intZoom)==0) && (intZoom>6)) {
			//		intZoom = intZoom - 1;
			//		map.setCenter(point, intZoom);
			//		objMarkerManage.addMarkers(batch, 1);
			 // 		objMarkerManage.refresh();
			 //  }// while
			 
			 var GMapBounds = map.getBounds();
			 var intTemp =0;
			 var blnTemp = false;
			 while (!blnTemp) {	 
				 for (intTemp=0;intTemp<batch.length;intTemp++) {
					if (GMapBounds.contains(batch[intTemp].getPoint())) {
						blnTemp = true;
						intTemp = batch.length + 1;
					} // contains point
				 } // for loop thru current batch
				 if (!blnTemp) {
					if (intZoom<2) {
						blnTemp = true;
					}
					else {
						intZoom = intZoom - 1;
						map.setCenter(point, intZoom);
						GMapBounds = map.getBounds();
					}
				 }
			 } // while !blnTemp
			 
			} // if/else
		  } // callback funct
		);	// geocoder call
	  }
	} // function - showAddress	
	
	function map_reset() {
		map.setCenter(new GLatLng(dblHomeLat, dblHomeLong), intHomeZoom);
				
	} // function - map_reset	