$(document).ready(function(){

    //Если на странице есть контейнер для яндекс карты с id map, начинаем её формировать
    if($("#map").length > 0)
    {

        //yandex map
        ymaps.ready(function() {
            var map = new ymaps.Map("map", {
                center: [44.894997, 37.316259],	//Создаём карту с центром в городе "Анапа"
                zoom: 11,	//Увеличение 11
            });



            //Кластера - группируем близко расположенные друг к другу объекты, чтобы при отдалении карты появлялась другая иконка
            // с количеством объектов в данной точке

            var ClusterContent = ymaps.templateLayoutFactory.createClass('<div class="claster" >$[properties.geoObjects.length] шт.</div>');

            //Параметры иконки кластера, обычно её делают отличной от точки, чтобы пользователь не путал номер объекта
            // и количество объектов

            var clusterIcons=[{
                size:[58, 80]
            }];

            //Создание самого кластера
            myClusterer = new ymaps.Clusterer({
                clusterIcons: clusterIcons,
                clusterNumbers:[1],
                zoomMargin: [30],
                clusterIconContentLayout: ClusterContent
            });


            //HTML шаблон балуна, того самого всплывающего блока, который появляется при щелчке на карту
            var myBalloonLayout = ymaps.templateLayoutFactory.createClass(
                '<address class="address-map" >'+
                '<ul class="balloon-info" >'+
                '<li><a href="$[properties.link]">$[properties.namei]</a></li>'+
                '<li><img src="$[properties.image]"></li>'+
                '<li>Цена: $[properties.cost] руб.</li>'+
                '<li>Площади: $[properties.ploshad]</li>'+
                '</ul>'+
                '</address>'
            );



            var Placemark = {};	//Пустой объекта, куда будут помещены точки на для карты

            //Перебираем все блоки с картой и считываем данные для формирования точки и балуна по ранее заданному шаблону
            $(".list-data").each(function(){

                //Координаты точки
                var X = $(this).attr("data-yandex-x");
                var Y = $(this).attr("data-yandex-y");

                Obj = $(this).attr("pointindex");

                //Создаём объект с заданными координатами и доп.свойствами
                Placemark[Obj] = new ymaps.Placemark([X,Y], {
                    name: $(this).attr("data-name"),	//Наименование магазина
                    link: $(this).attr("data-link"),	//Ссылка в детальную карточку
                    namei: $(this).attr("data-namei"),	//Название ЖК
                    image: $(this).attr("data-image"),	//Картинка
                    cost: $(this).attr("data-cost"),	//Стоимость
                    ploshad: $(this).attr("data-ploshad"),	//Площадь
                },{	//Ниже некоторые параметры точки и балуна
                    balloonContentLayout: myBalloonLayout,
                    balloonOffset: [5,0],
                    balloonCloseButton: true,
                    balloonMinWidth: 220,
                    balloonMaxWidth:450,
                    balloonMinHeught:150,
                    balloonMaxHeught:200,
                });



                //Добавляем маркер (точку) через кластер
                myClusterer.add(Placemark[Obj]);

            });

            //Добавление кластеры на карту
            map.geoObjects.add(myClusterer);
            //Запрещаем изменение размеров карты по скролу мыши
            map.behaviors.disable("scrollZoom");
        });


    }
});