// Google Map code initialise
var map, directions, geocoder;

function initialize()
{
	mapsearchformelem=document.getElementById('mapsearchform');
	mapsearchformelem.appendChild(document.createTextNode(" "));
	var searchmessageelem=document.createElement('span');
	searchmessageelem.setAttribute('id', 'searchmessage');
	searchmessageelem.appendChild(document.createTextNode(""));
	mapsearchformelem.appendChild(searchmessageelem);
	if(window.addEventListener)
		{
		window.addEventListener('submit', getDirections, false);
		window.addEventListener('unload', GUnload, false);
		}
	else
		{
		document.getElementById('mapsearchform').attachEvent('onsubmit', getDirections);
		window.attachEvent('onunload', GUnload);
		}
	if (GBrowserIsCompatible())
	{
		map = new GMap2(document.getElementById("map_canvas"));
		map.setCenter(new GLatLng(51.597602, -0.113814), 15);
		map.setUIToDefault();
		
		map.disableScrollWheelZoom();
		
		directions = new GDirections(map, document.getElementById("directions"));
		geocoder = new GClientGeocoder();
		map.addControl(new GLargeMapControl());
		var lat=51.594602;
		var lng=-0.113814;
		destination = new GLatLng(lat, lng);
		var marker = new GMarker(destination);
		map.addOverlay(marker);
		addrDiv = document.createElement("div");
		addrDiv.setAttribute("style","text-align: right;");
		addrImg = document.createElement("img");
		addrImg.setAttribute("src", "http://www.egointeractive.co.uk/clients/mindstorm/img/mindstorm-logo-large.gif");
		addrImg.setAttribute("alt", "");
		addrImg.setAttribute("style", "margin-right: 1ex; margin-top: -10px;");
		addrPara = document.createElement("p");
		addrPara.setAttribute("style","text-align: right;");
		addrPara.appendChild(addrImg);
		addrName = document.createElement("span");
		addrName.setAttribute("style", "font-weight: bold;");
		addrPara.appendChild(document.createElement("br"));
		addrName.appendChild(document.createTextNode("Mindstorm Head Office"));
		addrPara.appendChild(addrName);
		addrPara.appendChild(document.createElement("br"));
		addrPara.appendChild(document.createTextNode("5 Parma House"));
		addrPara.appendChild(document.createElement("br"));
		addrPara.appendChild(document.createTextNode("Clarendon Road"));
		addrPara.appendChild(document.createElement("br"));
		addrPara.appendChild(document.createTextNode("London"));
		addrPara.appendChild(document.createElement("br"));
		addrPara.appendChild(document.createTextNode("N22 6UL"));
		addrPara.appendChild(document.createElement("br"));
		addrPara.appendChild(document.createTextNode("United Kingdom"));
		addrDiv.appendChild(addrPara);
		marker.bindInfoWindow(addrPara);
		marker.openInfoWindow(addrPara);

	}
}

function getDirections(e)
	{
		search=document.getElementById('origin').value;
		if (search == '') return false;
		geocoder.getLatLng(search, function(origin)
			{
			searchmessagetextnode=document.getElementById('mapsearchform').getElementsByTagName('span')[0].childNodes[0];
			if(!origin) searchmessagetextnode.nodeValue='The place "'+search+'" was not found.';
			else
				{
				directions.loadFromWaypoints(Array(origin, destination));
				searchmessagetextnode.nodeValue='';
				}
			})
		if(e.preventDefault) e.preventDefault();
		else return false;
	}