var map = null;

function initMap(divId,key)
{
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById(divId));
    map.setCenter(new GLatLng(53.93,-2.33), 6);

    map.addControl(new GLargeMapControl());
    map.addControl(new GHierarchicalMapTypeControl());
    map.addControl( new GScaleControl() );

    map.addMapType(G_PHYSICAL_MAP);

    rensmartCopyright = new GCopyrightCollection("&copy; ");
    rensmartCopyright.addCopyright(new GCopyright('Demo',
    new GLatLngBounds(new GLatLng(-90,-180), new GLatLng(90,180)),
    0,'&copy; 2009 RenSMART'));

    tilelayer = new GTileLayer(rensmartCopyright);
    tilelayer.getTileUrl = function(point,zoom) {
    return "http://tiles.rensmart.com?x="+point.x+"&y="+point.y+"&zoom="+zoom+"&key="+key; };

    tilelayer.isPng = function() { return true;};
    tilelayer.getOpacity = function() { return 0.5; }

    var noablTileLayer = new GTileLayerOverlay(tilelayer);
    map.addOverlay(noablTileLayer);
    }
    else
    {
      alert("Your Browser is not compatible with Google Maps. The map cannot be displayed.");
    }
}

function showKey()
{
  var keyScreenXY = new GScreenPoint(0,50);
  var keyOverlayXY = new GScreenPoint(0,0);
  var keySize = new GScreenSize(100, 150); 
  var key = new GScreenOverlay("http://www.rensmart.com/DataServices/key-bordered.png",keyScreenXY,keyOverlayXY,keySize);
  map.addOverlay( key );
}

var localSearch = null;
function lookUpPostcode(inputId)
{
  var postcode = document.getElementById(inputId).value;

  if(localSearch==null)
  {
    localSearch = new GlocalSearch();
  }

  localSearch.setSearchCompleteCallback(null,
    function() {

      if (localSearch.results[0]) {
        var resultLat = localSearch.results[0].lat;
        var resultLng = localSearch.results[0].lng;
        var point = new GLatLng(resultLat,resultLng);
        moveToPoint(point);
      }else{
        alert(postcode+" not found!");
      }
    });

  localSearch.execute(postcode + ", UK");
}

function moveToPoint(point)
{
  map.setCenter(point,13);
}