  function load() {
    var map = new GMap2(document.getElementById("map"));
    var directionsPanel = document.getElementById("panel");
    gdir = new GDirections(map, directionsPanel);
    map.setCenter(new GLatLng(52.0397,5.2894), 8);

      // === Array for decoding the failure codes ===
      var reasons=[];
      reasons[G_GEO_SUCCESS]            = "Success";
      reasons[G_GEO_MISSING_ADDRESS]    = "Geen adres ingevuld";
      reasons[G_GEO_UNKNOWN_ADDRESS]    = "Onbekend adres";
      reasons[G_GEO_UNAVAILABLE_ADDRESS]= "Adres niet beschikbaar vanwege juridische redenen.";
      reasons[G_GEO_BAD_KEY]            = "Bad Key: The API key is either invalid or does not match the domain for which it was given";
      reasons[G_GEO_TOO_MANY_QUERIES]   = "Helaas zijn vandaag teveel verzoeken geweest, probeer het morgen nogmaals.";
      reasons[G_GEO_SERVER_ERROR]       = "Server error.";
      reasons[G_GEO_BAD_REQUEST]        = "Kon geen route berekenen. Parseer fout.";
      reasons[G_GEO_MISSING_QUERY]      = "Geen verzoek gevonden.";
      reasons[G_GEO_UNKNOWN_DIRECTIONS] = "Kon geen route berekenen.";

    GEvent.addListener(gdir, "error", function() {
        var code = gdir.getStatus().code;
        var reason="Code "+code;
        if (reasons[code]) {
          reason = reasons[code];
        } 
        alert(reason);
      });
  }

function planroute() {
  try {
  var adres = document.getElementById('adres').value;
  var dirstring = "from: " + adres + " to: Keesomstraat 13, Ede";  
  gdir.load(dirstring, {"locale":"nl_NL"});
  }
  catch(e){}
  finally {return false;}
}

Behaviour.addOnLoadHandler(load);