// JavaScript Document
var map;

function in_array(needle, haystack) {
	for(var i=0;i<haystack.length;i++) {
		if (needle == haystack[i]) { return true; }
	}
	return false;
}

function createMarker(point, value, show_info) {
	//create the kelly icon
	var kellyIcon = new GIcon();
	//kellyIcon.dragCrossMove = false;
	kellyIcon.title = value;
	//kellyIcon.draggable = false;
	//kellyIcon.bouncy = false;
	//kellyIcon.bounceGravity = false;
	//kellyIcon.autoPan = false;
	//kellyIcon.zIndexProcess = ?;
	kellyIcon.image = "http://www.kellystore.co.uk/images/assets/map-icon.png";
	//kellyIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
	kellyIcon.iconSize = new GSize(64, 64);
	kellyIcon.clickable = true;
	//kellyIcon.shadowSize = new GSize(64, 64);
	kellyIcon.iconAnchor = new GPoint(50, 50);
	kellyIcon.infoWindowAnchor = new GPoint(50, 20);

	switch(value) {
		case 'Southampton':
			var html = "<p><strong>Kelly's Self Storage Ltd</strong><br/>38 Woodside Road<br/>Eastleigh<br/>Hampshire<br/>SO50 4ET</p>";
			break;
		case 'Bristol':
			var html = "<p><strong>Kelly's Self Storage Ltd</strong><br/>NYK Logistics<br/>The Link Building<br/>Chittening<br/>Avonmouth<br/>Bristol<br/>BS11 0YL</p>";
			break;
		case 'Birmingham':
			var html = "<p><strong>Kelly's Self Storage Ltd</strong><br/>Taylors Lane,<br/>Oldbury,<br/>Birmingham,<br/>B69 2BN</p>";
			break;
		case 'Manchester':
			var html = "<p><strong>Kelly's Self Storage Ltd</strong><br/>2 Duncan Street,<br/>Salford,<br/>Manchester,<br/>M5 3SQ</p>";
			break;
		case 'St. Albans':
			var html = "<p><strong>Kelly's Self Storage Ltd</strong><br/>1 Old Parkbury Lane<br/>Colney Street<br/>St. Albans<br/>Hertfordshire, AL2 2EB</p>";
			break;
		case 'East London':
			var html = "<p><strong>Kelly's Self Storage Ltd</strong><br/>Unit 1A, Europa Trading Estate<br/>Fraser Road<br/>Erith<br/>Kent<br/>DA8 1QL</p>";
			break;
		case 'Guildford':
		default:
			var html = "<p><strong>Kelly's Storage Ltd</strong><br/>Westfield Road<br/>Slyfield Industrial Estate<br/>Guildford<br/>Surrey<br/>GU1 1SB</p>";
	}
	
	var marker = new GMarker(point, kellyIcon, false);
	marker.value = value;
	GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(html); });
	if (show_info == value) { marker.openInfoWindowHtml(html); }
	
	return marker;
}

function SetupGMap(warehouses,areas,lon,lat,zoom,show_info) {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map_canvas"));
		//open the map centered on the specified location...
		map.setCenter(new GLatLng(lon, lat), zoom);
		map.setMapType(G_PHYSICAL_MAP);

		if(in_array("Bristol", warehouses)) { map.addOverlay(createMarker(new GLatLng(51.534631,-2.67214), "Bristol", show_info)); }
		if(in_array("Birmingham", warehouses)) { map.addOverlay(createMarker(new GLatLng(52.501663,-2.027235), "Birmingham", show_info)); }
		if(in_array("Manchester", warehouses)) { map.addOverlay(createMarker(new GLatLng(53.477592,-2.271491), "Manchester", show_info)); }
		if(in_array("St. Albans", warehouses)) { map.addOverlay(createMarker(new GLatLng(51.707862,-0.328585), "St. Albans", show_info)); }
		if(in_array("East London", warehouses)) { map.addOverlay(createMarker(new GLatLng(51.481774,0.169984), "East London", show_info)); }
		if(in_array("Guildford", warehouses)) { map.addOverlay(createMarker(new GLatLng(51.262993,-0.567409), "Guildford", show_info)); }
		if(in_array("Southampton", warehouses)) { map.addOverlay(createMarker(new GLatLng(50.975237,-1.369582), "Southampton", show_info)); }
		
		if(in_array("Bristol", areas)) { 
			map.addOverlay(new GPolyline([new GLatLng(51.21277,-3.02268),new GLatLng(51.25040,-2.96337),new GLatLng(51.26075,-2.99215),new GLatLng(51.30716,-2.97589),new GLatLng(51.35646,-2.98837),new GLatLng(51.48570,-2.79283),new GLatLng(51.50532,-2.70167),new GLatLng(51.55770,-2.67784),new GLatLng(51.58153,-2.73087),
						new GLatLng(51.53323,-2.90130),new GLatLng(51.54345,-2.97352),new GLatLng(51.47393,-3.12886),new GLatLng(51.47076,-3.16243),new GLatLng(51.52652,-3.33148),new GLatLng(51.58381,-3.26032),new GLatLng(51.53011,-3.24020),new GLatLng(51.56183,-3.18779),new GLatLng(51.55464,-3.13717),new GLatLng(51.60115,-3.10652),
						new GLatLng(51.62306,-3.20075),new GLatLng(51.64733,-3.14088),new GLatLng(51.69354,-3.16806),new GLatLng(51.67066,-2.94107),new GLatLng(51.73336,-2.96823),new GLatLng(51.87443,-2.81225),new GLatLng(51.83137,-2.65226),new GLatLng(51.85235,-2.61118),new GLatLng(51.81649,-2.56998),new GLatLng(51.83443,-2.44659),
						new GLatLng(51.94905,-2.15047),new GLatLng(51.92182,-2.05855),new GLatLng(51.89498,-2.07821),new GLatLng(51.82578,-1.97725),new GLatLng(51.69922,-2.11383),new GLatLng(51.65875,-2.08767),new GLatLng(51.64776,-1.96004),new GLatLng(51.67616,-1.69685),new GLatLng(51.58869,-1.59732),new GLatLng(51.53048,-1.61050),
						new GLatLng(51.35809,-2.05929),new GLatLng(51.24006,-2.08434),new GLatLng(51.22259,-2.24685),new GLatLng(51.29442,-2.27275),new GLatLng(51.25425,-2.43780),new GLatLng(51.16001,-2.38549),new GLatLng(51.09575,-2.59757),new GLatLng(51.15555,-2.60245),new GLatLng(51.19265,-2.78147),new GLatLng(51.22266,-2.73390),
						new GLatLng(51.27033,-2.80823),new GLatLng(51.18183,-2.90306),new GLatLng(51.21277,-3.02268)],
						"#ff8c00", 10));
		}

		if(in_array("Birmingham", areas)) { 
			map.addOverlay(new GPolyline([new GLatLng(52.95405, -2.56271),new GLatLng(52.75214, -2.63054),new GLatLng(52.65008, -2.53369),new GLatLng(52.53536, -2.70797),new GLatLng(52.48410, -2.59809),new GLatLng(52.36290, -2.53806),new GLatLng(52.33428, -2.57064),
						new GLatLng(52.33515, -2.62075),new GLatLng(52.24966, -2.61466),new GLatLng(52.26177, -2.46472),new GLatLng(52.22914, -2.42828),new GLatLng(52.14440, -2.52580),new GLatLng(52.12024, -2.48605),new GLatLng(52.13092, -2.44313),new GLatLng(52.01083, -2.30340),
						new GLatLng(52.00038, -2.16617),new GLatLng(51.97398, -2.18501),new GLatLng(51.95498, -2.13189),new GLatLng(51.99296, -2.06844),new GLatLng(51.98654, -1.97759),new GLatLng(52.01610, -1.98091),new GLatLng(51.99579, -1.85067),new GLatLng(52.03154, -1.79553),
						new GLatLng(52.06861, -1.83989),new GLatLng(52.11277, -1.77426),new GLatLng(52.02879, -1.62395),new GLatLng(51.99938, -1.65859),new GLatLng(51.98111, -1.60052),new GLatLng(52.00932, -1.52641),new GLatLng(52.05394, -1.58245),new GLatLng(52.21666, -1.25814),
						new GLatLng(52.26673, -1.32098),new GLatLng(52.28241, -1.29825),new GLatLng(52.26504, -1.23475),new GLatLng(52.33088, -1.15046),new GLatLng(52.58602, -1.38624),new GLatLng(52.66498, -1.35180),new GLatLng(52.68023, -1.42467),new GLatLng(52.65931, -1.45808),
						new GLatLng(52.68693, -1.48900),new GLatLng(52.78360, -1.40899),new GLatLng(52.86749, -1.73114),new GLatLng(52.83388, -1.78388),new GLatLng(52.86705, -1.98648),new GLatLng(52.89555, -1.97763),new GLatLng(52.95901, -2.16316),new GLatLng(52.92625, -2.22269),
						new GLatLng(52.96722, -2.37702),new GLatLng(52.95405, -2.56271)], 
						"#9933FF", 10));
		}

		if(in_array("Manchester", areas)) { 
			map.addOverlay(new GPolyline([new GLatLng(53.383656, -3.205261),new GLatLng(53.237606, -3.062439),new GLatLng(53.175095, -3.067932),new GLatLng(53.114141, -2.82074),new GLatLng(53.105898, -2.672424),new GLatLng(53.064656, -2.551575),new GLatLng(53.076208, -2.392273),
						new GLatLng(53.110844, -2.359314),new GLatLng(53.12568, -2.37854),new GLatLng(53.155336, -2.287903),new GLatLng(53.171802, -2.106628),new GLatLng(53.286892, -2.117615),new GLatLng(53.303308, -2.150574),new GLatLng(53.431138, -2.05719),
						new GLatLng(53.514511, -1.991272),new GLatLng(53.70191, -2.103882),new GLatLng(53.710039, -2.210999),new GLatLng(53.822057, -2.27417),new GLatLng(53.781505, -2.364807),new GLatLng(53.770144, -2.513123),new GLatLng(53.828218, -2.570801),
						new GLatLng(53.920516, -2.69165),new GLatLng(53.946711, -2.872925),new GLatLng(53.925692, -3.051453),new GLatLng(53.753908, -3.051453),new GLatLng(53.726292, -2.944336),new GLatLng(53.553689, -3.103638),new GLatLng(53.439319, -3.026733),
						new GLatLng(53.383656, -3.205261)], 
						"#FF00FF", 10));
		}

		if(in_array("St. Albans", areas)) { 
			map.addOverlay(new GPolyline([new GLatLng(52.27202, -0.52302),new GLatLng(52.18613, -0.68817),new GLatLng(52.12516, -0.88750),new GLatLng(52.09093, -0.86663),new GLatLng(52.05476, -0.88981),new GLatLng(52.07978, -0.95795),new GLatLng(51.97357, -1.09567),new GLatLng(51.90638, -0.98505),
						new GLatLng(51.89990, -1.02301),new GLatLng(51.78301, -1.11938),new GLatLng(51.74821, -1.03726),new GLatLng(51.76930, -0.96022),new GLatLng(51.70376, -0.86488),new GLatLng(51.66759, -0.88787),new GLatLng(51.64743, -0.94888),new GLatLng(51.60459, -0.82920),
						new GLatLng(51.55127, -0.85057),new GLatLng(51.47566, -0.78043),new GLatLng(51.51175, -0.67722),new GLatLng(51.50274, -0.59589),new GLatLng(51.47652, -0.57686),new GLatLng(51.46820, -0.51544),new GLatLng(51.52316, -0.48696),new GLatLng(51.51851, -0.45074),
						new GLatLng(51.55086, -0.41703),new GLatLng(51.56125, -0.32110),new GLatLng(51.52478, -0.25194),new GLatLng(51.53726, -0.08489),new GLatLng(51.67303, -0.01401),new GLatLng(51.67167, 0.04418),new GLatLng(51.67167, 0.05879),new GLatLng(51.74594, 0.01076),
						new GLatLng(51.78552, 0.02762),new GLatLng(51.85342, 0.11233),new GLatLng(51.93643, 0.11422),new GLatLng(51.98286, 0.06839),new GLatLng(52.01164, 0.08075),new GLatLng(52.01135, 0.11447),new GLatLng(52.10707, 0.10932),new GLatLng(52.10207, 0.05925),new GLatLng(52.11961, 0.01112),
						new GLatLng(52.14308, -0.01013),new GLatLng(52.16701, -0.06295),new GLatLng(52.15291, -0.10000),new GLatLng(52.20726, -0.12994),new GLatLng(52.18134, -0.16866),new GLatLng(52.17757, -0.29825),new GLatLng(52.20189, -0.29055),new GLatLng(52.29187, -0.43090),
						new GLatLng(52.28845, -0.47963),new GLatLng(52.31748, -0.52216),new GLatLng(52.27202, -0.52302)], 
						"#FF0000", 10));
		}

		if(in_array("East London", areas)) { 
			map.addOverlay(new GPolyline([new GLatLng(51.76774, 0.96773),new GLatLng(51.35383, 0.96569),new GLatLng(51.32001, 0.99872),new GLatLng(51.29797, 0.97314),new GLatLng(51.29426, 1.00695),new GLatLng(51.22445, 0.84826),new GLatLng(51.23724, 0.79154),new GLatLng(51.18859, 0.59820),
						new GLatLng(51.16078, 0.58701),new GLatLng(51.13488, 0.62033),new GLatLng(51.12622, 0.58284),new GLatLng(51.01854, 0.66073),new GLatLng(51.09271, 0.41526),new GLatLng(51.09113, 0.28558),new GLatLng(51.06355, 0.21248),new GLatLng(51.09613, 0.15241),new GLatLng(51.07171, 0.11314),
						new GLatLng(51.06966, 0.05099),new GLatLng(51.10301, 0.09206),new GLatLng(51.15667, 0.04976),new GLatLng(51.16465, -0.03024),new GLatLng(51.14911, -0.07299),new GLatLng(51.15023, -0.07832),new GLatLng(51.10557, -0.05716),new GLatLng(51.07114, -0.22596),new GLatLng(51.20054, -0.27576),
						new GLatLng(51.24740, -0.23480),new GLatLng(51.25073, -0.30787),new GLatLng(51.28979, -0.25442),new GLatLng(51.33216, -0.1868),new GLatLng(51.34679, -0.25579),new GLatLng(51.33767, -0.18799),new GLatLng(51.38447, -0.16796),new GLatLng(51.40218, -0.12847),new GLatLng(51.51707,-0.19648),
						new GLatLng(51.53726, -0.08489),new GLatLng(51.67303, -0.01401),new GLatLng(51.67167, 0.04418),new GLatLng(51.67167, 0.05879),new GLatLng(51.74594, 0.01076),new GLatLng(51.78552, 0.02762),new GLatLng(51.85342, 0.11233),new GLatLng(51.93643, 0.11422),new GLatLng(51.95277, 0.12095),
						new GLatLng(51.95060, 0.16896),new GLatLng(51.93157, 0.18688),new GLatLng(51.94483, 0.22139),new GLatLng(51.96990, 0.35203),new GLatLng(51.95848, 0.40257),new GLatLng(51.93291, 0.38592),new GLatLng(51.88111, 0.47194),new GLatLng(51.90778, 0.48864),new GLatLng(51.85931, 0.56553),
						new GLatLng(51.91259, 0.60447),new GLatLng(51.89310, 0.67461),new GLatLng(51.87663, 0.63993),new GLatLng(51.78106, 0.73364),new GLatLng(51.80522, 0.77927),new GLatLng(51.77283, 0.90476),new GLatLng(51.76774, 0.96773)],
						"#00FF00", 10));
		}

		if(in_array("Southampton", areas)) { 
			map.addOverlay(new GPolyline([
						new GLatLng(50.8078,-0.697155),new GLatLng(50.845098,-0.641829),new GLatLng(50.86142,-0.671998),new GLatLng(50.902751,-0.646968),new GLatLng(50.892133,-0.667855),new GLatLng(50.917555,-0.679633),new GLatLng(50.929305,-0.717233),
						new GLatLng(51.001699,-0.692928),new GLatLng(51.034973,-0.768365),new GLatLng(51.015111,-0.810031),new GLatLng(51.044369,-0.834289),new GLatLng(51.025307,-0.905243),new GLatLng(51.063799,-0.96007),new GLatLng(51.02316,-1.034707),
						new GLatLng(51.039312,-1.065227),new GLatLng(51.080777,-1.026057),new GLatLng(51.099238,-1.085962),new GLatLng(51.172216,-1.073668),new GLatLng(51.17607,-1.121459),new GLatLng(51.147638,-1.120224),new GLatLng(51.212819,-1.283341),
						new GLatLng(51.305659,-1.291497),new GLatLng(51.292472,-1.419238),new GLatLng(51.330893,-1.42185),new GLatLng(51.319915,-1.529978),new GLatLng(51.303737,-1.548306),new GLatLng(51.306639,-1.608543),new GLatLng(51.272072,-1.608266),
						new GLatLng(51.250944,-1.716121),new GLatLng(51.26997,-1.759291),new GLatLng(51.248383,-1.776233),new GLatLng(51.235762,-1.84357),new GLatLng(51.26767,-1.910296),new GLatLng(51.227929,-2.002971),new GLatLng(51.202884,-1.953504),
						new GLatLng(51.156828,-1.946669),new GLatLng(51.115039,-1.994996),new GLatLng(51.113781,-2.068399),new GLatLng(51.141162,-2.094111),new GLatLng(51.142302,-2.176172),new GLatLng(51.100774,-2.182958),new GLatLng(50.948942,-2.267526),
						new GLatLng(50.952544,-2.174889),new GLatLng(50.927122,-2.020976),new GLatLng(50.852428,-2.062663),new GLatLng(50.811025,-2.042777),new GLatLng(50.810773,-2.102353),new GLatLng(50.726943,-2.120814),new GLatLng(50.704109,-2.074444),
						new GLatLng(50.71885,-2.039409),new GLatLng(50.697713,-1.93732),new GLatLng(50.721832,-1.824652),new GLatLng(50.713523,-1.745742),new GLatLng(50.736618,-1.706985),new GLatLng(50.706741,-1.554054),new GLatLng(50.759741,-1.530961),
						new GLatLng(50.752042,-1.487245),new GLatLng(50.815534,-1.303531),new GLatLng(50.773584,-1.144624),new GLatLng(50.719514,-0.791984),new GLatLng(50.783689,-0.660337),new GLatLng(50.8078,-0.697155)
						],
						"#999900", 10));
		}

		if(in_array("Guildford", areas)) { 
			map.addOverlay(new GPolyline([new GLatLng(50.83696, -0.44994),new GLatLng(50.82565, -0.42006),new GLatLng(50.82413, -0.34944),new GLatLng(50.86440, -0.36827),new GLatLng(50.86283, -0.29583),new GLatLng(50.88383, -0.26542),new GLatLng(50.88683, -0.21585),new GLatLng(50.87651, -0.17891),
						new GLatLng(50.90293, -0.13241),new GLatLng(50.89462, -0.07067),new GLatLng(50.97829, -0.07066),new GLatLng(50.99679, -0.01708),new GLatLng(51.06966, 0.05099),new GLatLng(51.10301, 0.09206),new GLatLng(51.15667, 0.04976),new GLatLng(51.16465, -0.03024),new GLatLng(51.14911, -0.07299),
						new GLatLng(51.15023, -0.07832),new GLatLng(51.10557, -0.05716),new GLatLng(51.07114, -0.22596),new GLatLng(51.20054, -0.27576),new GLatLng(51.24740, -0.23480),new GLatLng(51.25073, -0.30787),new GLatLng(51.28979, -0.25442),new GLatLng(51.33216, -0.1868),new GLatLng(51.34679, -0.25579),
						new GLatLng(51.33767, -0.18799),new GLatLng(51.38447, -0.16796),new GLatLng(51.40218, -0.12847),new GLatLng(51.51707,-0.19648),new GLatLng(51.53726, -0.08489),new GLatLng(51.52478, -0.25194),new GLatLng(51.56125, -0.32110),new GLatLng(51.55086, -0.41703),new GLatLng(51.51851, -0.45074),
						new GLatLng(51.52316, -0.48696),new GLatLng(51.46820, -0.51544),new GLatLng(51.47652, -0.57686),new GLatLng(51.50274, -0.59589),new GLatLng(51.51175, -0.67722),new GLatLng(51.47566, -0.78043),new GLatLng(51.55127, -0.85057),new GLatLng(51.60459, -0.82920),new GLatLng(51.62129, -0.88198),
						new GLatLng(51.63843, -0.94853),new GLatLng(51.60904, -0.94617),new GLatLng(51.61960, -1.03206),new GLatLng(51.57361, -1.05644),new GLatLng(51.56121, -1.02910),new GLatLng(51.55427, -1.04155),new GLatLng(51.54282, -1.10378),new GLatLng(51.55675, -1.11241),new GLatLng(51.55487, -1.14040),
						new GLatLng(51.53941, -1.14358),new GLatLng(51.53682, -1.23310),new GLatLng(51.51866, -1.23749),new GLatLng(51.46019, -1.16503),new GLatLng(51.42897, -1.24267),new GLatLng(51.34729, -1.19163),
						new GLatLng(51.305659,-1.291497),new GLatLng(51.212819,-1.283341),
						new GLatLng(51.147638,-1.120224),new GLatLng(51.17607,-1.121459),new GLatLng(51.172216,-1.073668),new GLatLng(51.099238,-1.085962),new GLatLng(51.080777,-1.026057),new GLatLng(51.039312,-1.065227),
						new GLatLng(51.02316,-1.034707),new GLatLng(51.063799,-0.96007),new GLatLng(51.025307,-0.905243),new GLatLng(51.044369,-0.834289),new GLatLng(51.015111,-0.810031),new GLatLng(51.034973,-0.768365),
						new GLatLng(51.001699,-0.692928),new GLatLng(50.929305,-0.717233),new GLatLng(50.917555,-0.679633),new GLatLng(50.892133,-0.667855),
						new GLatLng(50.902751,-0.646968),new GLatLng(50.86142,-0.671998),new GLatLng(50.845098,-0.641829),
						new GLatLng(50.8078,-0.697155),new GLatLng(50.83996, -0.62126),new GLatLng(50.79186, -0.58641),new GLatLng(50.80127, -0.45040),new GLatLng(50.83696, -0.44994)],
									 "#0000FF", 10));
		}
	}
}
