var counter=0;
var geocoder;
var marker;
var map;

$(window).unload(function() {
    GUnload();
});

function map_load(map_id)
{

  //Найдем на странице html элемент в котором будет размещаться карта
  map = new GMap2(map_id);

  // Создадим новый объект для геокодирования
  geocoder = new GClientGeocoder();

  //Получим информацию о местоположении и передадим её в функцию addToMap()
  for (i=0; i < addresses.length; i++)
  geocoder.getLocations(addresses[i], addToMap)

}
//Эта функция добавляет точку на карту

function addToMap(response)
{

   //Определяем координаты точки. Тут всё как прежде.

   place = response.Placemark[0];
   point = new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]);

   //Берем название из массива. Возможна вставка html в текст всплывающего названия

   htmlText=names[counter];

   //Создаем маркер новой функцией

   marker=createMarker(point, htmlText);

   //Как прежде, добавляем маркер на карту и добавляем пояснение

   map.addOverlay(marker);
   marker.openInfoWindowHtml(htmlText);

   //Не нужно создавать кнопки управления каждый раз, достаточно одного.

   if (counter==0)

   {

     map.setCenter(point, 4);
     map.addControl(new GLargeMapControl());
     map.addControl(new GMapTypeControl());
     map.enableScrollWheelZoom();

   }

  counter++;

 }


function createMarker(point,html)

{

   var marker = new GMarker(point);
   GEvent.addListener(marker, "mouseover", function(){marker.openInfoWindowHtml(html);});
   return marker;

}

