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);
}