Changes marked by marker /////:Y_initCityMap: function(coords) {
coords[1] -= 0.2;
if (!IPOLapiship_pvz.Y_map) {
IPOLapiship_pvz.Y_map = new ymaps.Map("apiship_map", {
zoom: 10,
controls: [],
center: coords
});
var ZK = new ymaps.control.ZoomControl({
options: {
position: {
left: 265,
top: 146
}
}
});
IPOLapiship_pvz.Y_map.controls.add(ZK);
if (IPOLapiship_pvz.widgetSearch) {
var searchControlParams = {
float: 'right',
floatIndex: 100,
noPlacemark: true
};
if (IPOLapiship_pvz.widgetSearchMark)
searchControlParams.noPlacemark = false;
IPOLapiship_pvz.Y_map.controls.add('searchControl',
searchControlParams);
IPOLapiship_pvz.Y_map.controls.events.add('resultshow',
IPOLapiship_pvz.Y_zoomCalibrate, IPOLapiship_pvz.Y_map
.controls.get('searchControl'));
}
} else {
IPOLapiship_pvz.Y_map.setCenter(coords);
IPOLapiship_pvz.Y_map.setZoom(10);
}
IPOLapiship_pvz.Y_clearPVZ();
IPOLapiship_pvz.Y_markPVZ();
},
Y_getPVZCenters: function() {
var ret = [0, 0, 0];
for (var i in IPOLapiship_pvz.PVZ) {
if (
typeof(IPOLapiship_pvz.PVZ[i].cX) !== 'undefined' &&
typeof(IPOLapiship_pvz.PVZ[i].cY) !== 'undefined' &&
IPOLapiship_pvz.PVZ[i].cX && IPOLapiship_pvz.PVZ[i].cY
) {
ret[0] += parseFloat(IPOLapiship_pvz.PVZ[i].cY);
ret[1] += parseFloat(IPOLapiship_pvz.PVZ[i].cX);
ret[2]++;
}
}
if (ret[2]) {
ret[0] /= ret[2];
ret[1] /= ret[2];
ret.pop();
return ret;
} else {
return false;
}
},
Y_zoomCalibrate: function() {
while (!ymaps.geoQuery(map.geoObjects).searchInside(IPOLapiship_pvz
.Y_map).getLength() && IPOLapiship_pvz.Y_map.getZoom() > 4) {
IPOLapiship_pvz.Y_map.setZoom(IPOLapiship_pvz.Y_map.getZoom() - 1);
}
},
Y_markPVZ: function() {
geoObjects = []; /////
for (var i in IPOLapiship_pvz.PVZ) {
var baloonHTML = "";
var pointText = "";
// логтип доставщика
if (typeof IPOLapiship_pvz.arImages[IPOLapiship_pvz.PVZ[i]
.providerKey] != "undefined")
baloonHTML +=
"<img class = 'apiship_provider_baloon_img' src = '" +
IPOLapiship_pvz.image_url + IPOLapiship_pvz.arImages[
IPOLapiship_pvz.PVZ[i].providerKey] + "'>";
else
baloonHTML += "<div class = 'apiship_provider_baloon_img'>" +
IPOLapiship_pvz.PVZ[i].providerKey + "</div>";
baloonHTML += "<div id='apiship_baloon'>";
baloonHTML += "<div class='apiship_iAdress'>";
if (IPOLapiship_pvz.PVZ[i].color)
baloonHTML += "<span style='color:" + IPOLapiship_pvz.PVZ[i]
.color + "'>"
baloonHTML += IPOLapiship_pvz.PVZ[i].Address;
if (IPOLapiship_pvz.PVZ[i].color)
baloonHTML += "</span>";
baloonHTML += "</div>";
if (IPOLapiship_pvz.PVZ[i].Phone)
baloonHTML +=
"<div><div class='apiship_iTelephone apiship_icon'></div><div class='apiship_baloonDiv'>" +
IPOLapiship_pvz.PVZ[i].Phone +
"</div><div style='clear:both'></div></div>";
if (IPOLapiship_pvz.PVZ[i].WorkTime)
baloonHTML +=
"<div><div class='apiship_iTime apiship_icon'></div><div class='apiship_baloonDiv'>" +
IPOLapiship_pvz.PVZ[i].WorkTime +
"</div><div style='clear:both'></div></div>";
if (IPOLapiship_pvz.widgetPointFeatureType || IPOLapiship_pvz
.widgetPointFeatureCOD) {
baloonHTML += "<div class='apiship_baloonDiv_features'>";
// Point type
if (IPOLapiship_pvz.widgetPointFeatureType) {
switch (parseInt(IPOLapiship_pvz.PVZ[i].type)) {
case 1:
pointText =
'<?=GetMessage("IPOLapiship_BALOON_F_PVZ")?>';
break;
case 2:
pointText =
'<?=GetMessage("IPOLapiship_BALOON_F_POSTAMAT")?>';
break;
case 3:
pointText =
'<?=GetMessage("IPOLapiship_BALOON_F_POST")?>';
break;
case 4:
pointText =
'<?=GetMessage("IPOLapiship_BALOON_F_TERMINAL")?>';
break;
}
if (pointText)
baloonHTML +=
"<div class='apiship_baloonDiv_feature'>" + pointText +
"</div>";
}
// COD
if (IPOLapiship_pvz.widgetPointFeatureCOD) {
if (IPOLapiship_pvz.PVZ[i].cod == '1')
baloonHTML +=
"<div class='apiship_baloonDiv_feature'><?=GetMessage("
IPOLapiship_BALOON_F_COD ")?></div>";
else
baloonHTML +=
"<div class='apiship_baloonDiv_feature not_available'><?=GetMessage("
IPOLapiship_BALOON_F_NO_COD ")?></div>";
}
baloonHTML += "<div style='clear:both'></div></div>";
}
baloonHTML += "<div><div class='apiship_baloonDiv'><?=GetMessage("
IPOLapiship_BALOON_DELIVERY_COST ")?>" + IPOLapiship_pvz.PVZ[i]
.deliveryCost + "<?=GetMessage("
IPOLapiship_CURRENCY_RUB
")?></div><div style='clear:both'></div></div>";
var daysMin = IPOLapiship_pvz.PVZ[i].daysMin,
daysMax = IPOLapiship_pvz.PVZ[i].daysMax;
if (daysMin == 0)
daysMin = 1;
if (daysMax == 0)
daysMax = 1;
var days;
if (daysMin == daysMax)
days = daysMin;
else
days = daysMin + " - " + daysMax;
baloonHTML += "<div><div class='apiship_baloonDiv'><?=GetMessage("
IPOLapiship_BALOON_DELIVERY_DAYS ")?>" + days +
"</div><div style='clear:both'></div></div>";
baloonHTML +=
"<div><a id='apiship_button' href='javascript:void(0)' onclick='IPOLapiship_pvz.choozePVZ(\"" +
i + "\")'></a></div>";
baloonHTML += "</div>";
var place; /////
place = /////
IPOLapiship_pvz.PVZ[i].placeMark = new ymaps.Placemark([
IPOLapiship_pvz.PVZ[i].cY, IPOLapiship_pvz.PVZ[i].cX
], {
balloonContent: baloonHTML
}, {
iconLayout: 'default#image',
iconImageHref: '/bitrix/images/ipol.apiship2v/widjet/apishipNActive.png',
iconImageSize: [40, 43],
iconImageOffset: [-10, -31]
});
geoObjects.push(place); /////
// IPOLapiship_pvz.Y_map.geoObjects.add(IPOLapiship_pvz.PVZ[i].placeMark);
IPOLapiship_pvz.PVZ[i].placeMark.link = i;
IPOLapiship_pvz.PVZ[i].placeMark.events.add('balloonopen', function(
metka) {
IPOLapiship_pvz.markChosenPVZ(metka.get('target').link);
});
}
var clusterer = new ymaps.Clusterer({
preset: 'islands#invertedVioletClusterIcons',
groupByCoordinates: false,
clusterDisableClickZoom: true,
clusterHideIconOnBalloonOpen: false,
geoObjectHideIconOnBalloonOpen: false
}),
///// geoObjects = [];
///// for(var i = 0, len = points.length; i < len; i++) {
///// geoObjects[i] = IPOLapiship_pvz.PVZ[i].placeMark;
///// }
clusterer.add(geoObjects);
IPOLapiship_pvz.Y_map.geoObjects.add(clusterer);
},
Y_selectPVZ: function(wat) {
IPOLapiship_pvz.PVZ[wat].placeMark.balloon.open();
IPOLapiship_pvz.Y_map.setCenter([IPOLapiship_pvz.PVZ[wat].cY,
IPOLapiship_pvz.PVZ[wat].cX
]);
},
Y_blinkPVZ: function(wat, ifOn) {
if (typeof(ifOn) != 'undefined' && ifOn)
IPOLapiship_pvz.PVZ[wat].placeMark.options.set({
iconImageHref: "/bitrix/images/ipol.apiship2v/widjet/apishipActive.png"
});
else
IPOLapiship_pvz.PVZ[wat].placeMark.options.set({
iconImageHref: "/bitrix/images/ipol.apiship2v/widjet/apishipNActive.png"
});
}