﻿var map;
var gdir;
var geocoder = null;
var addressMarker;


function initialize() {
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map_canvas"));

        var mapTypeControl = new GMapTypeControl();
        var topRight = new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10, 10));
        var bottomRight = new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10, 10));

        map.addControl(mapTypeControl, topRight);
        map.addControl(new GSmallMapControl());

        GEvent.addListener(map, "dblclick", function() {
            map.removeControl(mapTypeControl);
            map.addControl(new GMapTypeControl(), bottomRight);
        });

        gdir = new GDirections(map, document.getElementById("directions"));

        GEvent.addListener(gdir, "load", onGDirectionsLoad);
        GEvent.addListener(gdir, "error", handleErrors);

        setDirections(OrigemMapa, "Raul de carvalho, boa vista, São José do Rio Preto, Brasil", "pt_BR");
    }
}

function setDirections(fromAddress, toAddress, locale) {
    gdir.load("from: " + fromAddress + " to: " + toAddress, { "locale": locale });
}

function handleErrors() {
    if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS) {
        alert("Não foi possivel encontrar a origem informada! O mapa abaixo irá mostrar apenas o destino!");
        setDirections("15025-300", "Raul de carvalho, boa vista, São José do Rio Preto, Brasil", "pt_BR");
    } else if (gdir.getStatus().code == G_GEO_SERVER_ERROR) {
        alert("Não foi possivel fazer a rota para o destino do mapa");
        setDirections("15025-300", "Raul de carvalho, boa vista, São José do Rio Preto, Brasil", "pt_BR");
    } else if (gdir.getStatus().code == G_GEO_MISSING_QUERY) {
        alert("Ocorreu um erro na criação do mapa, por favor tente mais tarde");
    } else if (gdir.getStatus().code == G_GEO_BAD_KEY) {
        alert("A chave de licença do Google Maps é inválida! Essa chave pertence a Diginova Sites & Sistemas - www.diginova.com.br");
    } else if (gdir.getStatus().code == G_GEO_BAD_REQUEST) {
        alert("Não foi possivel fazer a rota para o destino do mapa");
        setDirections("15025-300", "Raul de carvalho, boa vista, São José do Rio Preto, Brasil", "pt_BR");
    } else {
        alert("Ocorreu um erro na criação do mapa, por favor tente mais tarde");
    }

    parent.document.getElementById("imgLoading").style.display = "none";
}

function onGDirectionsLoad() {
    var the_height = document.body.scrollHeight + 50;

    geocoder = gdir.getRoute(0);

    QtdPassos = geocoder.getNumSteps();

    parent.document.getElementById("frmMapa").style.height = (550 + (QtdPassos * 25)) + "px";
    parent.document.getElementById("imgLoading").style.display = "none";
}
