﻿var map;
var geocoder = null;
var index = 0;
var gmarkers = [];
var gicons = [];
var ghtml = [];
var latlng1 = [];
var infoBox = "";
var bounds = null;
        
var baseIcon = new GIcon();
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(9, 34);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
baseIcon.infoShadowAnchor = new GPoint(18, 25);

var markerImage = [
    G_DEFAULT_ICON.image,
    "http://kauppatori.kpk.fi/kuvat/markeryellow.png"
];


function viewInfoBox(i) {
    gmarkers[i].openInfoWindowHtml(ghtml[i]);
}

function initialize() {
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map_canvas"));
        //map.setCenter(new GLatLng(63.866085,23.626099), 8);
        bounds = new GLatLngBounds();
        map.setUIToDefault();
        geocoder = new GClientGeocoder();
        if (geocoder) {
        if ("myArray" in window){
            for (var i = 0; i < myArray.length;i++) {
                infoBox = myArray[i][1];    
                setMarker(myArray[i][0],infoBox, myArray[i][2],myArray[i][3]);
            }//end for 
        }//end if
        else
        {
            map.setCenter(new GLatLng(63.866085,23.626099), 8);
        }
       }//end if
    }
}

function setMarker(address, html, services, kpkcuid){                     
    geocoder.getLatLng(
        address, 
        function(point) {
        if (!point) {
            //alert(address  + " , VIRHE." );
        } else {
            //alert(html);
            latlng1[index] = new GLatLng(point);
            map.addOverlay(mMarker(point,html,index, services,kpkcuid));
            bounds.extend(point);
            setZoom();
            index++;
        }
        }
    );
}

function setZoom(){
    var zoom = map.getBoundsZoomLevel(bounds);
    var center = bounds.getCenter();
    map.setCenter(center,zoom);
}

function mMarker(point, strHtml, index, services, kpkcuid){

    var temp = new Array();
    services = services.substring(0,services.length-1);
    temp = services.split(',');
    strHtml = "<span style='font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 11px;'>" + strHtml + "</span><br /><br>";
    for(i = 0; i < temp.length;i++)
    {   
        if(temp[i]==1)
        {
            strHtml = strHtml + "<a href='Nayteikkuna.aspx?kpkcuid=" + kpkcuid + "' class='mapsLink'>Näyteikkuna &raquo;</a> ";
        }
        if(temp[i]==2)
        {
            strHtml = strHtml + "<a href='Blogi.aspx?kpkcuid=" + kpkcuid + "' class='mapsLink'>Blogi &raquo;</a><br /> ";
        }
        
    }
    
    var icon = new GIcon(baseIcon);
    icon.image = "http://www.google.com/mapfiles/marker.png";
    gicons[index] = icon.image;
    var marker = new GMarker(point, icon);
    
    GEvent.addListener(marker, "click", function(){
        marker.openInfoWindowHtml(strHtml);
    });
    
    GEvent.addListener(marker,"mouseover",function(){
       marker.setImage(markerImage[1]);
    });
            
    GEvent.addListener(marker,"mouseout",function(){
        marker.setImage(icon.image);
        });

    gmarkers[index] = marker;
    ghtml[index] = strHtml;
    return marker;
}

function showAddress(address,info) {
    
      map = new GMap2(document.getElementById("map_canvas"));

      map.setUIToDefault();
      geocoder = new GClientGeocoder();
      if (geocoder) {
        geocoder.getLatLng(
          address,
          function(point) {
            if (!point) {
              map.setCenter(new GLatLng(63.866085,23.626099), 8);
            } else {
              map.setCenter(point, 13);
              var marker = new GMarker(point);
              map.addOverlay(marker);
              marker.openInfoWindowHtml("<span style='font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 11px;'>" + info + "<br/>" + address + "</span>");
              //marker.bindInfoWindowHtml("<span style='font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 11px;'>" + address+ "<br/>" + info + "</span>");
            }
          }
        );
      }
    }
