// JavaScript Document
function initialize(route) {
	if (GBrowserIsCompatible()) {
		var map = new GMap2(document.getElementById("map_canvas"));
		map.addControl(new GSmallMapControl());
		map.setMapType(G_NORMAL_MAP);



		// Define marker icon types
		var otherIcon = new GIcon(G_DEFAULT_ICON);
		otherIcon.image = "images/map-icon.png";
		otherIcon.shadow = "images/map-icon.png";
		otherIcon.iconSize = new GSize(20, 20);
		otherIcon.shadowSize = new GSize(20, 20);
		otherIcon.iconAnchor = new GPoint(10, 20);
		otherIcon.infoWindowAnchor = new GPoint(10, 18);
		otherIcon.infoShadowAnchor = new GPoint(18, 25);
		


		// Creates a marker which displays a corresponding info window when clicked
		function createMarker(index, point, iframeFile, iconType) {

		// Set up our GMarkerobject
		markerOptions = { icon:iconType };
		var marker = new GMarker(point, markerOptions);
		
		// Set up our info window
		GEvent.addListener(marker, 'click', function() {
			
			marker.openInfoWindowHtml('<iframe src=\"iframes\/'+iframeFile+'\" frameborder=\"0\" height=\"220\" width=\"520\" style="width:520px; margin:10px auto;"> Alternative text for browsers that do not understand IFrames.<\/iframe>');
		});
		return marker;
	}
	
		

		//initialize map
			
		// load routes
		if (route=='itinerary1'){
			map.setCenter(new GLatLng(49.65, -123.9), 8);
			var polyline = new GPolyline([
					new GLatLng(49.1653182245806, -123.93402099609375),
					new GLatLng(49.530779409803756, -123.9645767211914),
					new GLatLng(49.597360184436354, -124.06448364257812),
					new GLatLng(49.64451295574021, -124.08096313476562),
					new GLatLng(49.696061819115634, -124.07135009765625),
					new GLatLng(49.72270359017755, -124.046630859375),
					new GLatLng(49.745781306155735, -124.04045104980469),
					new GLatLng(49.79057397761196, -123.94638061523438),
					new GLatLng(49.8787077521734, -123.88595581054688),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(50.09151216595947, -123.78021240234375),
					new GLatLng(50.16381403252021, -123.85110855102539),
					new GLatLng(50.09151216595947, -123.78021240234375),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(49.8787077521734, -123.88595581054688),
					new GLatLng(49.79057397761196, -123.94638061523438),
					new GLatLng(49.745781306155735, -124.04045104980469),
					new GLatLng(49.72270359017755, -124.046630859375),
					new GLatLng(49.696061819115634, -124.07135009765625),
					new GLatLng(49.64451295574021, -124.08096313476562),
					new GLatLng(49.434198772487406, -124.13726806640625),
					new GLatLng(49.240914053166065, -123.94303466796875),
					new GLatLng(49.1653182245806, -123.93402099609375)
			], "#000020", 5);
			map.addOverlay(polyline);
				
		} else if (route=='itinerary2'){
			map.setCenter(new GLatLng(49,-123.5021), 9);
			var polyline = new GPolyline([
					new GLatLng(49.191408, -123.934278),
					new GLatLng(49.18192780434099, -123.89694213867188),
					new GLatLng(49.14780479640284, -123.85574340820312),
					new GLatLng(49.133879448863404, -123.78467559814453),
					new GLatLng(49.11882669045988, -123.74004364013672),
					new GLatLng(49.126465974756464, -123.67137908935547),
					new GLatLng(49.11410772108971, -123.71875762939453),
					new GLatLng(49.05362025878699, -123.66966247558594),
					new GLatLng(48.95271921169069, -123.5467529296875),
					new GLatLng(48.86381134898788, -123.40118408203125),
					new GLatLng(48.8565834593617, -123.35655212402344),
					new GLatLng(48.86245619918733, -123.34771156311035),
					new GLatLng(48.85071003048401, -123.34556579589844),
					new GLatLng(48.83105162319997, -123.32977294921875),
					new GLatLng(48.81228985866255, -123.27072143554688),
					new GLatLng(48.74577601907767, -123.16497802734375),
					new GLatLng(48.72471757582291, -123.20789337158203),
					new GLatLng(48.74113486206065, -123.22900772094727),
					new GLatLng(48.73270044320697, -123.23175430297852),
					new GLatLng(48.85206549830757, -123.48907470703125),
					new GLatLng(48.83579746243093, -123.41629028320312),
					new GLatLng(48.852969123136674, -123.41560363769531),
					new GLatLng(48.92565742765472, -123.54606628417969),
					new GLatLng(48.95226830218508, -123.607177734375),
					new GLatLng(48.93095818235513, -123.629150390625),
					new GLatLng(48.98562459864604, -123.73077392578125),
					new GLatLng(49.06126958202894, -123.73146057128906),
					new GLatLng(49.12556729650606, -123.80424499511719),
					new GLatLng(49.18192780434099, -123.89694213867188),
					new GLatLng(49.14780479640284, -123.85574340820312)
			], "#000020", 5);
			map.addOverlay(polyline);
			
		} else if (route=='itinerary3'){
		map.setCenter(new GLatLng(48.94775898298233, -123.5), 9);
		var polyline = new GPolyline([
					new GLatLng(49.19247423824004, -123.92578125),
					new GLatLng(49.2140089056539, -123.85711669921875),
					new GLatLng(49.21759710517596, -123.78570556640625),
					new GLatLng(49.169134431937806, -123.7005615234375),
					new GLatLng(49.149376767244206, -123.69438171386719),
					new GLatLng(49.12961122037019, -123.68820190429688),
					new GLatLng(49.123769891142764, -123.70811462402344),
					new GLatLng(49.10893881094389, -123.72116088867188),
					new GLatLng(49.090056476918896, -123.7005615234375),
					new GLatLng(49.06306925171648, -123.673095703125),
					new GLatLng(49.041468914058065, -123.70330810546875),
					new GLatLng(49.018057956916444, -123.72940063476562),
					new GLatLng(48.97931565944956, -123.71429443359375),
					new GLatLng(48.95858066440977, -123.695068359375),
					new GLatLng(48.93964118139728, -123.6676025390625),
					new GLatLng(48.922499263758255, -123.63189697265625),
					new GLatLng(48.93964118139728, -123.6126708984375),
					new GLatLng(48.943249256234296, -123.57833862304688),
					new GLatLng(48.91257230555584, -123.51104736328125),
					new GLatLng(48.86832824998009, -123.43963623046875),
					new GLatLng(48.8511618571692, -123.41629028320312),
					new GLatLng(48.837379308938786, -123.41972351074219),
					new GLatLng(48.83941303819501, -123.4420394897461),
					new GLatLng(48.84415808535292, -123.46263885498047),
					new GLatLng(48.8547763238673, -123.49662780761719),
					new GLatLng(48.84189859515309, -123.46744537353516),
					new GLatLng(48.811385499847525, -123.40255737304688),
					new GLatLng(48.777007776767704, -123.33938598632812),
					new GLatLng(48.75075629617738, -123.29544067382812),
					new GLatLng(48.73264383158835, -123.24462890625),
					new GLatLng(48.733549609837404, -123.22265625),
					new GLatLng(48.691866919887374, -123.27621459960938),
					new GLatLng(48.672826384100354, -123.38470458984375),
					new GLatLng(48.70818165031451, -123.4039306640625),
					new GLatLng(48.714524839668364, -123.43963623046875),
					new GLatLng(48.70727541512677, -123.49594116210938),
					new GLatLng(48.75256718365392, -123.56254577636719),
					new GLatLng(48.76388375169057, -123.56941223144531),
					new GLatLng(48.77225637074404, -123.56254577636719),
					new GLatLng(48.776102781718585, -123.55327606201172),
					new GLatLng(48.78379471960032, -123.55327606201172),
					new GLatLng(48.78922361312843, -123.55585098266602),
					new GLatLng(48.80528065117171, -123.5628890991211),
					new GLatLng(48.826983403182346, -123.57730865478516),
					new GLatLng(48.8583905296204, -123.58863830566406),
					new GLatLng(48.87826399706968, -123.61129760742188),
					new GLatLng(48.89948375541988, -123.63327026367188),
					new GLatLng(48.91843847385111, -123.66485595703125),
					new GLatLng(48.931070958256306, -123.69575500488281),
					new GLatLng(48.93197315629521, -123.71086120605469),
					new GLatLng(48.955875464120645, -123.71910095214844),
					new GLatLng(48.984723370514985, -123.72802734375),
					new GLatLng(49.017607638243824, -123.739013671875),
					new GLatLng(49.050920216584856, -123.74313354492188),
					new GLatLng(49.081512108641434, -123.74794006347656),
					new GLatLng(49.08735841419179, -123.73489379882812),
					new GLatLng(49.09725059408649, -123.76029968261719),
					new GLatLng(49.1201748849642, -123.79325866699219),
					new GLatLng(49.1314084139986, -123.81797790527344),
					new GLatLng(49.146681929552095, -123.85368347167969),
					new GLatLng(49.16419575467542, -123.88114929199219),
					new GLatLng(49.18529393173625, -123.91136169433594)
			], "#000020", 5);
			map.addOverlay(polyline);
		} else if (route=='itinerary4'){
			map.setCenter(new GLatLng(49.75, -124.5), 8);
			var polyline = new GPolyline([
					new GLatLng(49.18529393173625, -123.91136169433594),
					new GLatLng(49.530779409803756, -123.9645767211914),
					new GLatLng(49.597360184436354, -124.06448364257812),
					new GLatLng(49.64451295574021, -124.08096313476562),
					new GLatLng(49.696061819115634, -124.07135009765625),
					new GLatLng(49.72270359017755, -124.046630859375),
					new GLatLng(49.745781306155735, -124.04045104980469),
					new GLatLng(49.79057397761196, -123.94638061523438),
					new GLatLng(49.8787077521734, -123.88595581054688),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(50.09151216595947, -123.78021240234375),
					new GLatLng(50.16381403252021, -123.85110855102539),
					new GLatLng(50.09151216595947, -123.78021240234375),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(49.961822298684105, -123.99032592773438),
					new GLatLng(49.8787077521734, -123.88595581054688),
					new GLatLng(49.79057397761196, -123.94638061523438),
					new GLatLng(49.79013068868653, -124.0521240234375),
					new GLatLng(49.758203223406205, -124.22927856445312),
					new GLatLng(49.72669859556309, -124.26773071289062),
					new GLatLng(49.750218070393444, -124.43115234375),
					new GLatLng(49.798109268622, -124.55474853515625),
					new GLatLng(49.864546323918184, -124.60556030273438),
					new GLatLng(49.90082667133223, -124.65911865234375),
					new GLatLng(49.9538707250323, -124.75250244140625),
					new GLatLng(50.01215177378104, -124.8321533203125),
					new GLatLng(50.064191736659104, -124.87472534179688),
					new GLatLng(50.088868933829644, -124.85000610351562),
					new GLatLng(50.127621728300475, -124.77310180664062),
					new GLatLng(50.15314620005651, -124.70443725585938),
					new GLatLng(50.182174724020506, -124.64950561523438),
					new GLatLng(50.22436656050062, -124.63302612304688),
					new GLatLng(50.27354323996707, -124.64813232421875),
					new GLatLng(50.314777360722466, -124.73052978515625),
					new GLatLng(50.305130024910035, -124.77859497070312),
					new GLatLng(50.30337575356313, -124.8431396484375),
					new GLatLng(50.314777360722466, -124.903564453125),
					new GLatLng(50.30863837348728, -124.94613647460938),
					new GLatLng(50.28231945008157, -124.969482421875),
					new GLatLng(50.26037589105958, -124.99557495117188),
					new GLatLng(50.23842221881728, -125.0189208984375),
					new GLatLng(50.207670084734175, -125.02029418945312),
					new GLatLng(50.18041592143885, -125.035400390625),
					new GLatLng(50.15314620005651, -125.05599975585938),
					new GLatLng(50.127621728300475, -125.101318359375),
					new GLatLng(50.065954814811846, -125.09857177734375),
					new GLatLng(49.99891228081066, -125.079345703125),
					new GLatLng(49.952987135788035, -125.035400390625),
					new GLatLng(49.90348026046574, -124.97222900390625),
					new GLatLng(49.820265094155396, -124.8870849609375),
					new GLatLng(49.72270359017755, -124.82666015625),
					new GLatLng(49.681846899401286, -124.8321533203125),
					new GLatLng(49.660516725226685, -124.88433837890625),
					new GLatLng(49.49667452747044, -124.420166015625),
					new GLatLng(49.46187643504186, -124.34463500976562),
					new GLatLng(49.45585117797555, -124.30927276611328),
					new GLatLng(49.45339623123141, -124.28695678710938),
					new GLatLng(49.451387546981834, -124.24369812011719),
					new GLatLng(49.44536100034569, -124.2062759399414),
					new GLatLng(49.43620816100794, -124.18224334716797),
					new GLatLng(49.39041833646035, -124.156494140625),
					new GLatLng(49.34928279658785, -124.14825439453125),
					new GLatLng(49.315722919021724, -124.156494140625),
					new GLatLng(49.296471602658094, -124.13589477539062),
					new GLatLng(49.276316821041135, -124.11117553710938),
					new GLatLng(49.249430962320915, -124.01504516601562),
					new GLatLng(49.243603762131194, -123.97796630859375),
					new GLatLng(49.24001745095546, -123.95805358886719),
					new GLatLng(49.23149891808389, -123.94020080566406),
					new GLatLng(49.2202880838794, -123.93402099609375),
					new GLatLng(49.20997186983448, -123.93333435058594),
					new GLatLng(49.18529393173625, -123.91136169433594)
			], "#000020", 5);
			map.addOverlay(polyline);
		}
				
			// Download the data from an .xml file and create a marker and pop-up for each entry on the map.
			GDownloadUrl(route + '.xml', function getMarkers(data) {
				var xml = GXml.parse(data);
				var markers = xml.documentElement.getElementsByTagName('marker');
				for (var i = 0; i < markers.length; i++) {
					var latlng = new GLatLng(parseFloat(markers[i].getAttribute('lat')),
									parseFloat(markers[i].getAttribute('lng')));
					var iframeFile = markers[i].getAttribute('iframeFile');
					iconType=otherIcon;
				map.addOverlay(createMarker(i, latlng, iframeFile, iconType));
				}
			}
);
		
	}
}
