﻿// Mapa
var geocoder = null;
var map = null;
var gdir;
var icone;
var end;

/* Carrega o Mapa */
function load() {
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("mapa"));

        gdir = new GDirections(map);

        map.setCenter(new GLatLng(-26.999059, -51.156274), 13);
        map.enableDragging();
        //map.enableScrollWheelZoom();        
        //map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        map.addControl(new GLargeMapControl());
        map.addControl(new GScaleControl());

        // bind a search control to the map, suppress result list
        map.addControl(new google.maps.LocalSearch(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10, 20)));

        map.addMapType(G_SATELLITE_3D_MAP);
        geocoder = new GClientGeocoder();
        map.addControl(new google.maps.LocalSearch(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10, 20)));
        map.setCenter(new GLatLng(-26.999059, -51.156274), 13);
    }
}

function carregaEmpresas(param, icon) {
    icone = document.getElementById(icon).src;
    ret = wsEmpresa.retornaEmpresasFonetica(param, OnComplete, OnTimeOut, OnError);
}

function OnComplete(args) {
    var count = args.length;
    var i = 0;
    if (count == 0) {
        alert("Nenhum registro para este item!\nEntre em contato conosco e anuncie!");
    }
    else {
        while (i < count) {
            addMarker(args[i]);
            i++;
        }
    }
}

function OnTimeOut(args) {
    alert("Tempo limite esgotado");
}

function OnError(args) {
    alert("Erro");
}

/* Adiciona marcador no mapa de acordo com a empresa 
args = Empresa */
function addMarker(args) {
    //map.setCenter(new GLatLng(args.LATITUDE, args.LONGITUDE, false), 17);
    var conteudoMarker = args.NOME + "<br/>";

    if (args.FotoEmpresa.THUMB != null) {
        conteudoMarker += "<a href='perfil.aspx?id=" + args.ID_EMPRESA + "'>";
        conteudoMarker += "<img alt='Foto' src='imgUsers/" + args.FotoEmpresa.THUMB + "' width='50' height='50' style='float:left;' />";
        conteudoMarker += "</a>";
    }

    conteudoMarker += "&nbsp;<a href='perfil.aspx?id=" + args.ID_EMPRESA + "'>Veja o Perfil</a><br />";

    end = args.RUA + " " + args.NRO + " " + args.CIDADE + " " + args.ESTADO;

    conteudoMarker += "<br/>&nbsp;<b><a href='javascript:saindoDe();'>Saindo de</a>&nbsp;&nbsp;&nbsp;<a href='javascript:indoPara();'>Indo para</a></b>";

    var baseIcon = new GIcon();
    baseIcon.shadow = icone;
    baseIcon.iconSize = new GSize(22, 22);
    baseIcon.shadowSize = new GSize(22, 22);
    baseIcon.iconAnchor = new GPoint(22, 22);
    baseIcon.infoWindowAnchor = new GPoint(22, 22);
    baseIcon.infoShadowAnchor = new GPoint(22, 22);

    var ico = new GIcon(baseIcon);
    ico.image = icone;

    var marker = new GMarker(new GLatLng(args.LATITUDE, args.LONGITUDE, false), ico);

    GEvent.addListener(marker, "mouseover", function() { marker.openInfoWindow(conteudoMarker); })
    map.addOverlay(marker);

    marker.openInfoWindowHtml(conteudoMarker);

    map.setCenter(new GLatLng(-26.999059, -51.156274), 15);
}