';
companyProps = companyProps.replace(/"/g, '"');
companyProps = JSON.parse(companyProps);
//console.log(companyProps);
ymaps.ready(init);
function init(){
var coordsOfPlacemarkArray = companyProps.placemarks;
var myPlacemark,
// Создание карты.
myMap = new ymaps.Map("map", {
// Координаты центра карты.
// Порядок по умолчанию: «широта, долгота».
// Чтобы не определять координаты центра карты вручную,
// воспользуйтесь инструментом Определение координат.
center: companyProps.coords,
// Уровень масштабирования. Допустимые значения:
// от 0 (весь мир) до 19.
zoom: companyProps.zoom,
controls: []
}, {
searchControlProvider: 'yandex#search'
});
for (var placemark of companyProps.placemarks) {
myPlacemark = createPlacemark(placemark);
myMap.geoObjects.add(myPlacemark);
getAddress(myPlacemark.geometry.getCoordinates(), myPlacemark);
}
function createPlacemark(coords) {
return new ymaps.Placemark(coords, {
iconCaption: 'поиск...',
}, {
preset: 'islands#violetDotIconWithCaption',
draggable: false
});
}
function getAddress(coords, placemark) {
placemark.properties.set('iconCaption', 'поиск...');
ymaps.geocode(coords).then(function (res) {
var firstGeoObject = res.geoObjects.get(0);
placemark.properties
.set({
// Формируем строку с данными об объекте.
iconCaption: [
// Название населенного пункта или вышестоящее административно-территориальное образование.
firstGeoObject.getLocalities().length ? firstGeoObject.getLocalities() : firstGeoObject.getAdministrativeAreas(),
// Получаем путь до топонима, если метод вернул null, запрашиваем наименование здания.
firstGeoObject.getThoroughfare() || firstGeoObject.getPremise()
].filter(Boolean).join(', '),
// В качестве контента балуна задаем строку с адресом объекта.
balloonContent: firstGeoObject.getAddressLine()
});
});
}
}