window.onload = function() {
	
	if (GBrowserIsCompatible()) {
		
		map = new GMap2(document.getElementById("canvas"));
		map.setCenter(new GLatLng(43.874138, -70.037842), 7);
		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
		
		var JSONdata = {
		    "ServiceCenters" : [
		        {
		            "city" : "Bangor",
		            "address" : "12 Stillwater Ave.",
		            "lat" : 44.836217,
		            "lon" : -68.791652,
		            "phone" : "207-947-2592 <br />800-427-0462",
		            "fax" : "207-947-0645",
		            "hours" : "Mon-Fri 7am-5pm" 
		        },
		    	{
		            "city" : "Biddeford",
		            "address" : "4 Wellspring Rd.",
		            "lat" : 43.479842,
		            "lon" : -70.49125,
		            "phone" : "207-283-0818",
		            "fax" : "207-283-0819",
		            "hours" : "Mon-Fri 7:30am-4pm<br />Closed: 12pm-1pm" 
		        },
		       	{
					"city" : "Falmouth", 
					"address" : "5 Bucknam Rd.",
					"lat" : 43.726142,
					"lon" : -70.232492,
					"phone" : "207-781-1595",
					"fax" : "207-781-1597",
					"hours" : "Mon-Fri 7:30am-4:30pm"
				},
		        {
		            "city" : "Gorham",
		            "address" : "94 Main St.",
		            "lat" : 43.68079,
		            "lon" : -70.439632,
		            "phone" : "207-839-2696",
		            "fax" : "207-839-2695",
		            "hours" : "Mon-Fri 7:30am-12pm" 
		        },  	            
		        {
		            "city" : "Oakland",
		            "address" : "25 First Park, Ste B",
		            "lat" : 44.547611,
		            "lon" : -69.683742,
		            "phone" : "207-873-7722",
		            "fax" : "207-872-6058",
		            "hours" : "Mon-Fri 7am-2:30pm" 
		        },    
		    	{
					"city" : "Portland",
					"address" : "NorDx-BMC Campus<br />335 Brighton Ave.",
					"lat" : 43.665438,
					"lon" : -70.291612,
					"phone" : "207-662-8350",
					"fax" : "207-662-8356",
					"hours" : "Mon-Fri 8:30am-5pm<br />Sat 9am-12pm"
				},
				{
					"city" : "Portland",
					"address" : "Congress St. Medical Office Building<br />887 Congress St.",
					"lat" : 43.654444,
					"lon" : -70.276725,
					"phone" : "207-662-6303",
					"fax" : "207-662-6307",
					"hours" : "Mon-Fri 8:30am-5pm"
				},
				{
					"city" : "Portland",
					"address" : "NorDx-MMC Campus <br />22 Bramhall St.",
					"lat" : 43.652301,
					"lon" :  -70.274970,
					"phone" : "207-662-2711",
					"fax" : "207-662-6176",
					"hours" : "Mon-Fri 7:30am-5pm<br />Sat 8am-12pm"
				},
				{
					"city" : "Scarborough",
					"address" : "102 Campus Dr.",
					"lat" : 43.603914,
					"lon" :  -70.316221,
					"phone" : "800-427-7831",
					"fax" : "207-885-7835",
					"hours" : "Mon-Fri 7am-7pm<br />Sat 8am-12pm"
				},	
				{		
					"city" : "Scarborough",
					"address" : "96 Campus Dr. 2nd floor",
					"lat" : 43.603392,
					"lon" :  -70.316319,
					"phone" : "207-885-8702",
					"fax" : "207-885-8703",
					"hours" : "Mon-Fri 8:30am-5pm"
				},	
		        {
		            "city" : "Windham",
		            "address" : "Heritage Crossing<br />4B Commons Ave., Suite 2",
		            "lat" : 43.823857,
		            "lon" : -70.434222,
		            "phone" : "207-839-2696",
		            "fax" : "207-839-2695",
		            "hours" : "Mon-Fri 7:30am-12pm" 
		        },
		        {
		        	"city" : "Westbrook",
		        	"address" : "1 Harnois Ave., 2nd Floor",
		        	"lat" : 43.682127,
		        	"lon" : -70.350087,
		        	"phone" : "207-662-1402 ",
		        	"fax" : "207-662-1403",
					"hours" : "Mon-Fri 8am-4:30pm, Closed: 12pm - 1pm"
				},
				{
					"city" : "Yarmouth",
					"address" : "60 Forest Falls Dr.",
					"lat" : 43.805026,
					"lon" : -70.184658,
					"phone" : "207-846-3724",
					"fax" : "207-846-3527",
					"hours" : "Mon-Fri 7:30am-11:30am"
				},
		        {
		            "city" : "Hampton",
		            "address" : "23 Stickney Terrace",
		            "lat" : 42.935688,
		            "lon" :  -70.838804,
		            "phone" : "603-926-0735",
		            "fax" : "603-926-1560",
		            "hours" : "Mon, Thurs, Fri: 7:30am-2pm <br />Closed: 12pm-12:30pm <br />Tue & Wed: 7:30am-9:30am" 
		        },    
		        {
		            "city" : "Newington",
		            "address" : "Whole Life Health Care<br />100 Shattuck Way",
		            "lat" : 43.099752,
		            "lon" :  -70.798398,
		            "phone" : "603-610-7730",
		            "fax" : "603-610-7731",
		            "hours" : "Mon-Fri: 7:30am-3:30pm<br />Closed: 12:30pm-1pm" 
		        },  
		        {
		            "city" : "Rochester",
		            "address" : "Care Pharmacy<br />161 South Main St.",
		            "lat" : 43.299312,
		            "lon" :  -70.970316,
		            "phone" : "603-330-0426",
		            "fax" : "603-330-0475",
		            "hours" : "Mon-Fri 8am-4pm<br />Sat 8am-12pm<br />Closed: 12:30pm-1pm" 
		        },   
		        {
		            "city" : "Stratham",
		            "address" : "Millbrook Office Park<br />118 Portsmouth Ave, Ste B101B",
		            "lat" : 43.020723,
		            "lon" :  -70.91691,
		            "phone" : "603-778-3878",
		            "fax" : "603-778-3901",
		            "hours" : "Mon-Fri 7:30am-12pm" 
		        },    
		        {
		            "city" : "Sommersworth",
		            "address" : "Goodwin Community Health<br />311 Route 108",
		            "lat" : 43.256127,
		            "lon" :  -70.900054,	
		            "phone" : "603-841-2510",
		            "fax" : "603-841-2520",
		            "hours" : "Mon-Fri 8am-4pm<br />Closed: 12:30pm-1pm" 

		        }

		    ]
		};

		var point;
		var content;
		
		for(var n = 0; n < JSONdata.ServiceCenters.length; n++) {
			
			point = new GLatLng(JSONdata.ServiceCenters[n].lat, JSONdata.ServiceCenters[n].lon);
			
			content = '<div class="info_window">';
			content += '<p><strong>' + JSONdata.ServiceCenters[n].city + '</strong><br />';
			content += JSONdata.ServiceCenters[n].address + '<br />';
			content += 'Phone: ' + JSONdata.ServiceCenters[n].phone + '<br />';
			content += 'Fax: ' + JSONdata.ServiceCenters[n].fax + '<br />';
			content += 'Hours: ' + JSONdata.ServiceCenters[n].hours + '</p>';
			
			map.addOverlay(createMarker(point, content));	
		}
	}
}

function createMarker(point, content) {
	
	var marker = new GMarker(point);

	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml(content);
	});
	
	return marker;
}
