var PIN_ID = 1;
var MAP_HTTP = null;
var MAP_VEMAP = null;
var MAP_START_ZOOM = 16;
var LAT = null;
var LONG = null;

// some of these NGRs have trailing whitespace
function RTrim(str)
{
	var whitespace = new String(" \t\n\r");
	var s = new String(str);

	if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {
	    var i = s.length - 1;       // Get length of string

	    while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1) { i--; }
		
		s = s.substring(0, i+1);
	}
	
	return s;
}

function loadVeMap()
{
	try{				
		MAP_VEMAP = new VEMap('veMap');
		var sNgr = document.getElementById("veGridReference").firstChild.nodeValue;		
		sNgr = RTrim(sNgr);

		var osgb=new GT_OSGB();
		osgb.parseGridRef(sNgr);
		var wgs84 = osgb.getWGS84();
		LAT = wgs84.latitude;
		LONG = wgs84.longitude;
		var oLatLong = new VELatLong(LAT,LONG);
		MAP_VEMAP.LoadMap();
	}catch(e){
		alert('Sorry, map error 20 has occurred');
	}
	try{
		MAP_VEMAP.SetCenterAndZoom(oLatLong,MAP_START_ZOOM);
		MAP_VEMAP.SetMapStyle(VEMapStyle.Hybrid);
	}
	catch(e){
		alert('Sorry, map error 27 has occurred');
	}
	
	try{
		var title = document.getElementById("veMapTitle").innerHTML;
		var description = document.getElementById("veMapDescription").innerHTML;
		var thumbnail = '';
		var pin = new VEPushpin(PIN_ID,oLatLong,null,null,null);
		MAP_VEMAP.AddPushpin(pin);
		PIN_ID++;
	}catch(e){
		alert('Sorry, map error 38 has occurred');
	}
}

if(window.attachEvent)
{
	window.attachEvent('onload',loadVeMap);
}
else
{
	window.onload = loadVeMap;
}