var map;

function load(from,to)
{
  if (GBrowserIsCompatible())
  {
    map = new GMap2(document.getElementById("map"));
    map.setCenter(new GLatLng(52.561, 13.409524), 4);
    map.addControl(new GSmallMapControl());
    map.enableScrollWheelZoom();

    map.addMapType(G_PHYSICAL_MAP);
    map.setMapType(G_PHYSICAL_MAP);
    var mapControl = new GMapTypeControl();
    map.addControl(mapControl);

    objRouteForecast = new MGRouteForecast(map, {
      symbols: {
        url: "fileadmin/mapapps/weather-to-go/64px/{IMG_NAME}.png",
        dimensions: {
          x: 64,
          y: 64
        }
      },
      route: {
        directionsOptions:
        {
          avoidHighways: false
        }
      },
	  backend: {
		  script: "/fileadmin/mapapps/weather-to-go/getweather_de.php"
	  }
    });
   objRouteForecast.getRoute(from, to, '');
  }
}

function showExtendedInputs()
{
  $(".extendedSet").css("display", "block");
  $(".nonExtended").attr("disabled", "disabled");
  $(".klaus").css("border-bottom", "1px dotted rgb(0, 96, 172)");
  $(".klara").css("border", "1px dotted rgb(0, 96, 172)");
  $(".klara").css("border-bottom", "1px solid rgb(219, 232, 242)");
  $(".klara").css("background-color", "rgb(219, 232, 242)");
  $(".whiteinput").css("background-color", "rgb(255, 255, 255)");
}

function hideExtendedInputs()
{
  $(".extendedSet").css("display", "none");
  $(".nonExtended").removeAttr("disabled");
  $(".klaus").css("border", "none");
  $(".klara").css("border", "none");
  $(".klara").css("background-color", "rgb(255, 255, 255)");
  $(".whiteinput").css("background-color", "rgb(219, 232, 242)");
}

MGRouteForecast.prototype.handleDirectionLoadError = function(intErrorCode)
{
  if (intErrorCode === G_GEO_UNKNOWN_ADDRESS && $(".extendedSet").css("display") === "none")
  {
	showExtendedInputs();    
    return;
  }
	
  switch (intErrorCode)
  {
    case G_GEO_BAD_REQUEST: document.getElementById("error").innerHTML = 'Eine Routenanforderung konnte nicht erfolgreich analysiert werden. Die Anforderung kann beispielsweise deshalb zurückgewiesen worden sein, weil sie mehr als die zulässige Anzahl von Wegpunkten enthielt.'; break;
    case G_GEO_SERVER_ERROR: document.getElementById("error").innerHTML = 'Eine Geokodierungs- oder Routenanforderung konnte nicht erfolgreich verarbeitet werden, da der genaue Grund für den Fehler nicht bekannt ist.'; break;
    case G_GEO_MISSING_QUERY: document.getElementById("error").innerHTML = 'Der HTTP-Parameter q fehlt oder enthält keinen Wert. Für Geokodierungsanforderungen bedeutet dies, dass eine leere Adresse angegeben wurde. Für Routenanforderungen bedeutet dies, dass keine Abfrage angegeben wurde.'; break;
    case G_GEO_UNKNOWN_ADDRESS: document.getElementById("error").innerHTML = 'Google konnte keine entsprechende geografische Position für die angegebene Adresse finden. Möglicherweise ist eine der Adressen nicht eindeutig oder unbekannt. Eventuell hilft die zusätzliche Angabe einer Postleitzahl.'; break;
    case G_GEO_UNAVAILABLE_ADDRESS: document.getElementById("error").innerHTML = 'Der Geocode für die angegebene Adresse oder die Route für die angegebene Richtungsanfrage kann aus rechtlichen oder Vertragsgründen nicht zurückgegeben werden.'; break;
    case G_GEO_UNKNOWN_DIRECTIONS: document.getElementById("error").innerHTML = 'Das GDirections-Objekt konnte keinen Routenplan zwischen den Punkten in der Suchanfrage berechnen. Dies ist üblich, da es keine Route zwischen den beiden Punkten gibt oder keine Daten für die Routenplanung in dieser Region vorhanden sind.'; break;
    case G_GEO_BAD_KEY: document.getElementById("error").innerHTML = 'Der angegebene Schlüssel ist entweder ungültig oder passt nicht zur Domain, für die er angegeben wurde.'; break;
    case G_GEO_TOO_MANY_QUERIES: document.getElementById("error").innerHTML = 'Der angegebene Schlüssel hat das Anforderungslimit innerhalb der 24-Stunden-Frist überschritten.'; break;
  }
};

