var deliveryZonesDost; $(document).ready(function(){ promocode.init(); { // выбор региона доставки /* $('.choose_region a').click(function () { $.cookie('city', null, {path: '/', domain: '.pizzatempo.by'}); $.cookie('city', null, {path: '/'}); $.cookie('city', $(this).data('city'), {expires: 365, path: '/', domain: '.pizzatempo.by'}); }) */ $('.choose_region_link').click(function () { $('.choose_region').removeClass('hidden'); return false; }) } { // оплата заказа var _take_order_varians = ['.row_user_address, .row_sep_2, .row_city, .row_street, .row_house, .row_room, .row_porch, .row_floor, .row_dop_info','.row_takeaway_list, .row_time_order_complete']; $('input[name=take_order_varians]').click(function () { $(_take_order_varians[0]).hide(); $(_take_order_varians[1]).hide(); ($(this).val() == 1 && $(this).is(':checked')) ? $(_take_order_varians[0]).show() : $(_take_order_varians[1]).show(); if ( $(this).val() == 2 ) { $('#minOrderSum').val( '2' ); } else { $('#minOrderSum').val( '14' ); } $.get(_link_cart, {action: 'calcItogSale', type: $(this).val(), ajax: 1, rand: Math.random()}, function (data) { var data = JSON.parse(data); $('.s_o .price_byn').replaceWith(priceBYN(data.total)); $('.s_s .price_byn').replaceWith(priceBYN(data.discount)); (data.discount == 0) ? $('.s_s').hide() : $('.s_s').show(); }); }); $('input[name=payment_type]').click(function () { ($(this).val() == 'nal' && $(this).is(':checked')) ? $('.row_exchange').fadeIn() : $('.row_exchange').fadeOut(); }); $('input[name=payment_type]:checked').click(); { // выбор времени доставки заказа var nearDateObj = new Date(), maxDate = new Date(), deviderAppend = null; disableHours = [22, 10, 30]; nearDateObj.setTime(nearDateObj.getTime() + (30 * 60 * 1000)); maxDate.setTime(nearDateObj.getTime() + (24 * 60 * 60 * 1000)); while(maxDate > nearDateObj) { nearDateObj.setTime(nearDateObj.getTime() + (10 * 60 * 1000)); if (nearDateObj.getHours() < disableHours[0] && nearDateObj.getHours() >= disableHours[1]) { if (nearDateObj.getHours() == disableHours[1] && nearDateObj.getMinutes() < disableHours[2]) { continue; } deviderAppend = false; _time = _pad2(nearDateObj.getHours()) + ':' + _pad2(Math.floor(nearDateObj.getMinutes() / 10) * 10); $('select[name=time_order_complete]').append('') } else if (deviderAppend === false) { deviderAppend = true; var curr_date = _pad2(nearDateObj.getDate() + 1); var curr_month = _pad2(nearDateObj.getMonth() + 1); var curr_year = _pad2(nearDateObj.getFullYear()); $('select[name=time_order_complete]').append(''); } } } $('.payButton').click(function () { //if ($('input[name=approve_pay]').is(':checked')) { switch($('input[name=order_with]:checked').val()) { case 'easypay': var _from = $('#easypay'); var _payment_provider = 'easypay'; break; case 'assist': var _from = $('#assist'); var _payment_provider = 'assist'; break; } $.post(document.location.href, {ajax: 1, provider: _payment_provider, action: 'setPaymentProvider', order_id: $('input[name=EP_OrderNo]').val()}, function (data) { _from.submit(); }) //} //else { // $.alert('Вы должны согласиться с условиями договора по оплате через интернет', 'Внимание!'); //} return false; }) } { // формат ввода телефона $('input[name=phone]').mask("+999 99 999 99 99"); } { // seo $('#order_btn').click(function () { _gaq.push(['_trackEvent', 'zakaz', 'order']); }) } { // кликаем на фото товара $('.previews .item img').click(function () { $('.orderPizzaButton', $(this).parents('.item')).click(); return false; }) } { // история заказов $('#history .expand').toggle(function () { var _parent = $(this).parents('tr:first'); _parent.addClass('opened'); _parent.next().show(); }, function () { var _parent = $(this).parents('tr:first'); _parent.removeClass('opened'); _parent.next().hide(); }); } { // подобрать пиццу $('.pickUpButton').click(function(){ $(this).toggleClass('active'); $('.pickUp').toggle(); }); $('.fake').click(function () { $('.pickUpButton').click(); return false; }) } { /* Ошибка при аворизации */ if ($('.auth_error').length) { $.alert($('.auth_error').html(), 'Ошибка'); } } { // личный кабинет var reinitCabinet = function () { $('.new_address').submit(function () { if ( $('select[name=new_city]').val() && $('input[name=new_street]').val() && $('input[name=new_house]').val() && $('input[name=new_room]').val() ) { $.post(_link_cabinet + '?action=newAddress', $('.new_address').serialize(), function (data) { $('#ajax_address_placeholder').html(data); reinitCabinet(); }) } else { $.alert('Заполните поля отмеченные звёздочкой.', 'Ошибка'); } return false; }); $('.item_address .close').click(function () { var _current_id = $('input[type=radio]', $(this).parents('.item_address')).val(); $.post(_link_cabinet + '?action=deleteOtherAddress', {id: _current_id}, function (data) { $('#ajax_address_placeholder').html(data); reinitCabinet(); }); return false; }); $('.item_address input[type=radio]').click(function () { $('#set_main_btn').fadeIn(); }); $('#set_main_btn').click(function () { var _current_id = $('.item_address input[type=radio]:checked').val(); $.post(_link_cabinet + '?action=setPrimaryAddress', {id: _current_id}, function (data) { $('#ajax_address_placeholder').html(data); reinitCabinet(); }); return false; }); $('#adress .edit_ico').click(function () { $('#adress').addClass('edit'); $('#save_main_btn').fadeIn(); $('.primary input, .primary select').removeAttr('disabled'); $(this).hide(); return false; }); $('#save_main_btn').click(function () { $.post(_link_cabinet + '?action=editSaveAddress', $('.primary_address').serialize(), function (data) { $('#ajax_address_placeholder').html(data); reinitCabinet(); }) return false; }) } reinitCabinet(); } if ($('.indexBlock .image').length) { $('.indexBlock .image').owlCarousel({ autoplay: true, autoplayHoverPause: true, autoplayTimeout: 5000, loop: true, items: 1, nav: true, navText : false }); } if ($('.popular .items').length) { $('.popular .items').owlCarousel({ loop: true, items: 1, nav: true, navText : false }); } $('.overlay').click(function(){ $(this).hide(); $('.popup').hide(); }); if ($.browser.msie && $.browser.version == 6) { DD_belatedPNG.fix('.delivery, .auth .text, .menu li img, .corner, .orderButton, .mask, .popup'); $('.overlay').css({ 'height': $(document).height() }) }; $('.content button').each(function () { if (!$('span', this).length) { var t = $(this).html(); $(this).html(''+t+''); } }); if ( $('#mapDelivery').length ) { ymaps.ready(map_init_delivery); } function map_init_delivery() { var mapDelivery; mapDelivery = new ymaps.Map('mapDelivery', { center: [27.576223, 53.890364], //53.902496, 27.561481 zoom: 10, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/minsk.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); var fill_opacity = obj.properties.get('fill-opacity'); var stroke = obj.properties.get('stroke'); var stroke_width = obj.properties.get('stroke-width'); var stroke_opacity = obj.properties.get('stroke-opacity'); var marker_color = obj.properties.get('marker-color'); if ( color == "#ed4543" ){ minPrice = 25; } else { minPrice = 15; } if ( typeof marker_color == 'undefined' ) { obj.options.set({fillColor: color, fillOpacity: fill_opacity, strokeColor: stroke, strokeOpacity: stroke_opacity, strokeWidth: stroke_width }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') } else { obj.options.set({iconColor: marker_color, preset: 'islands#blueFoodIcon' }); } }); }; }; if ( $('#mapDeliveryMolodechno').length ) { ymaps.ready(map_init_delivery_molodechno); } function map_init_delivery_molodechno() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryMolodechno', { center: [26.838930, 54.307332], //54.307332, 26.838930 zoom: 12, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/molodechno.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 12; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryMogilev').length ) { ymaps.ready(map_init_delivery_mogilev); } function map_init_delivery_mogilev() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryMogilev', { center: [30.330654, 53.894548], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/mogilev.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 12; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryGrodno').length ) { ymaps.ready(map_init_delivery_grodno); } function map_init_delivery_grodno() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryGrodno', { center: [23.827738, 53.675854], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/grodno.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 25; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryGrodnoVasilki').length ) { ymaps.ready(map_init_delivery_grodno_vasilki); } function map_init_delivery_grodno_vasilki() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryGrodnoVasilki', { center: [23.827738, 53.675854], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/grodno.vasilki.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 25; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryGomelVasilki').length ) { ymaps.ready(map_init_delivery_gomel_vasilki); } function map_init_delivery_gomel_vasilki() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryGomelVasilki', { center: [31.014820, 52.421200], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/gomel.vasilki.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 15; } else { minPrice = 15; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryGomel').length ) { ymaps.ready(map_init_delivery_gomel); } function map_init_delivery_gomel() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryGomel', { center: [31.014820, 52.421200], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/gomel.pizzatempo.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 12; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryOstrovec').length ) { ymaps.ready(map_init_delivery_ostrovec); } function map_init_delivery_ostrovec() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryOstrovec', { center: [25.958338, 54.615366], zoom: 12, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/ostrovec.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 25; } else { minPrice = 13; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryMinskVasilki').length ) { ymaps.ready(map_init_delivery_minskVasilki); } function map_init_delivery_minskVasilki() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryMinskVasilki', { center: [27.576223, 53.890364], //54.307332, 26.838930 zoom: 12, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/minsk.vasilki.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 25; } else { minPrice = 13; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryMogilevVasilki').length ) { ymaps.ready(map_init_delivery_mogilevVasilki); } function map_init_delivery_mogilevVasilki() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryMogilevVasilki', { center: [30.2815376, 53.883542], //54.307332, 26.838930 zoom: 12, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/mogilev.vasilki.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 12; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliveryMozyr').length ) { ymaps.ready(map_init_delivery_mozyr); } function map_init_delivery_mozyr() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliveryMozyr', { center: [29.267301, 52.049019], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/mozyr.pizzatempo.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 12; } else { minPrice = 12; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; if ( $('#mapDeliverySoligorskVasilki').length ) { ymaps.ready(map_init_delivery_soligorsk_vasilki); } function map_init_delivery_soligorsk_vasilki() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliverySoligorskVasilki', { center: [27.52695, 52.78851], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/soligorsk.vasilki.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 15; } else { minPrice = 15; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; ///// if ( $('#mapDeliverySoligorsk').length ) { ymaps.ready(map_init_delivery_soligorsk); } function map_init_delivery_soligorsk() { var mapDeliveryMolod; mapDelivery = new ymaps.Map('mapDeliverySoligorsk', { center: [27.52695, 52.78851], //53.894548, 30.330654 zoom: 11, controls: ['zoomControl', 'fullscreenControl'] }), deliveryPoint = new ymaps.GeoObject({ geometry: {type: 'Point'}, properties: {iconCaption: 'Адрес'} }, { preset: 'islands#blackDotIconWithCaption', draggable: false, iconCaptionMaxWidth: '215' }); mapDelivery.geoObjects.add(deliveryPoint); $.ajax({ url: _root + 'download_files/zones/soligorsk.pizzatempo.json', dataType: 'json', success: onZonesLoadDelivery }); function onZonesLoadDelivery(json) { // Добавляем зоны на карту. deliveryZonesDost = ymaps.geoQuery(json).addToMap(mapDelivery); // Задаём цвет и контент балунов полигонов. deliveryZonesDost.each(function (obj) { var color = obj.properties.get('fill'); if ( color == "#ed4543" ){ minPrice = 15; } else { minPrice = 15; } obj.options.set({fillColor: color, fillOpacity: 0.4 }); obj.properties.set('balloonContent', obj.properties.get('description')); obj.properties.set('balloonContentHeader', 'Минимальная стоимость заказа: ' + minPrice + ' р.') }); }; }; //////// }); function number_format (number, decimals, dec_point, thousands_sep) { number = (number + '').replace(/[^0-9+\-Ee.]/g, ''); var n = !isFinite(+number) ? 0 : +number, prec = !isFinite(+decimals) ? 0 : Math.abs(decimals), sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep, dec = (typeof dec_point === 'undefined') ? '.' : dec_point, s = '', toFixedFix = function (n, prec) { var k = Math.pow(10, prec); return '' + Math.round(n * k) / k; }; // Fix for IE parseFloat(0.55).toFixed(0) = 0; s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.'); if (s[0].length > 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep); } if ((s[1] || '').length < prec) { s[1] = s[1] || ''; s[1] += new Array(prec - s[1].length + 1).join('0'); } return s.join(dec); } function unserialize (data) { var that = this; var utf8Overhead = function (chr) { // http://phpjs.org/functions/unserialize:571#comment_95906 var code = chr.charCodeAt(0); if (code < 0x0080) { return 0; } if (code < 0x0800) { return 1; } return 2; }; var error = function (type, msg, filename, line) { throw new that.window[type](msg, filename, line); }; var read_until = function (data, offset, stopchr) { var buf = []; var chr = data.slice(offset, offset + 1); var i = 2; while (chr != stopchr) { if ((i + offset) > data.length) { error('Error', 'Invalid'); } buf.push(chr); chr = data.slice(offset + (i - 1), offset + i); i += 1; } return [buf.length, buf.join('')]; }; var read_chrs = function (data, offset, length) { var buf; buf = []; for (var i = 0; i < length; i++) { var chr = data.slice(offset + (i - 1), offset + i); buf.push(chr); length -= utf8Overhead(chr); } return [buf.length, buf.join('')]; }; var _unserialize = function (data, offset) { var readdata; var readData; var chrs = 0; var ccount; var stringlength; var keyandchrs; var keys; if (!offset) { offset = 0; } var dtype = (data.slice(offset, offset + 1)).toLowerCase(); var dataoffset = offset + 2; var typeconvert = function (x) { return x; }; switch (dtype) { case 'i': typeconvert = function (x) { return parseInt(x, 10); }; readData = read_until(data, dataoffset, ';'); chrs = readData[0]; readdata = readData[1]; dataoffset += chrs + 1; break; case 'b': typeconvert = function (x) { return parseInt(x, 10) !== 0; }; readData = read_until(data, dataoffset, ';'); chrs = readData[0]; readdata = readData[1]; dataoffset += chrs + 1; break; case 'd': typeconvert = function (x) { return parseFloat(x); }; readData = read_until(data, dataoffset, ';'); chrs = readData[0]; readdata = readData[1]; dataoffset += chrs + 1; break; case 'n': readdata = null; break; case 's': ccount = read_until(data, dataoffset, ':'); chrs = ccount[0]; stringlength = ccount[1]; dataoffset += chrs + 2; readData = read_chrs(data, dataoffset + 1, parseInt(stringlength, 10)); chrs = readData[0]; readdata = readData[1]; dataoffset += chrs + 2; if (chrs != parseInt(stringlength, 10) && chrs != readdata.length) { error('SyntaxError', 'String length mismatch'); } // Length was calculated on an utf-8 encoded string // so wait with decoding readdata = that.utf8_decode(readdata); break; case 'a': readdata = {}; keyandchrs = read_until(data, dataoffset, ':'); chrs = keyandchrs[0]; keys = keyandchrs[1]; dataoffset += chrs + 2; for (var i = 0; i < parseInt(keys, 10); i++) { var kprops = _unserialize(data, dataoffset); var kchrs = kprops[1]; var key = kprops[2]; dataoffset += kchrs; var vprops = _unserialize(data, dataoffset); var vchrs = vprops[1]; var value = vprops[2]; dataoffset += vchrs; readdata[key] = value; } dataoffset += 1; break; default: error('SyntaxError', 'Unknown / Unhandled data type(s): ' + dtype); break; } return [dtype, dataoffset - offset, typeconvert(readdata)]; }; return _unserialize((data + ''), 0)[2]; } function utf8_decode (str_data) { return str_data; } function priceBYN(price) { var _price = price; var _return = number_format(_price, 2, '.', ' '), _return = _return.split('.'); return '' + _return[0] + 'р.' + _return[1] + 'к.'; } function priceBYR(price) { var _price = price * 10000; return '' + number_format(_price, 0, '.', ' ') + ''; } function _pad2(n) { return ("0" + n).slice(-2); }