Добрый день , хочу поинтересоваться . Когда в базе два объекта с одинаковыми адресами, при поиске по карте отображается синий кружок с надписью 2, а сами объекты не отображаюся даже при максимальном приближении.
эту проблему можно както решить?
public function addMarker($lat, $lng, $content, $multyMarker = 0, $model = null) {
$content = $this->filterContent($content);
$clusterCaption = '';
if ($model) {
$clusterCaption = CJavaScript::quote($model->getTitle());
}
$draggable = ((Yii::app()->user->getState('isAdmin') || param('useUserads', 1) && (!Yii::app()->user->isGuest && Yii::app()->user->id == $model->owner_id) ) && !$multyMarker) ? ", draggable: true" : "";
$this->setIconType($model);
$this->scripts[] = '
placemark = new ymaps.Placemark(
['.$lng.', '.$lat.'], {
balloonContent: "'.$content.'",
clusterCaption: "'.$clusterCaption.'"
}, {
iconImageHref: "'.self::$icon['href'].'",
iconImageSize: ['.self::$icon['size']['x'].', '.self::$icon['size']['y'].'],
iconImageOffset: ['.self::$icon['offset']['x'].', '.self::$icon['offset']['y'].'],
hideIconOnBalloonOpen: false,
balloonShadow: true,
balloonCloseButton: true,
iconMaxWidth: 300
'.$draggable.'
}
);
'.(($multyMarker) ? '' : 'map.geoObjects.add(placemark); placemark.balloon.open(); ').
'markers.push(placemark);
placemarksAll['.$model->id.'] = placemark;
';
}
Xpycm писал(а):Исправление для Yandex.Maps.
В файле protected\modules\apartments\components\CustomYMap.php
заменяете функцию addMarker() следующим кодом:
- Код: Выделить всё
public function addMarker($lat, $lng, $content, $multyMarker = 0, $model = null) {
$content = $this->filterContent($content);
$clusterCaption = '';
if ($model) {
$clusterCaption = CJavaScript::quote($model->getTitle());
}
$draggable = ((Yii::app()->user->getState('isAdmin') || param('useUserads', 1) && (!Yii::app()->user->isGuest && Yii::app()->user->id == $model->owner_id) ) && !$multyMarker) ? ", draggable: true" : "";
$this->setIconType($model);
$this->scripts[] = '
placemark = new ymaps.Placemark(
['.$lng.', '.$lat.'], {
balloonContent: "'.$content.'",
clusterCaption: "'.$clusterCaption.'"
}, {
iconImageHref: "'.self::$icon['href'].'",
iconImageSize: ['.self::$icon['size']['x'].', '.self::$icon['size']['y'].'],
iconImageOffset: ['.self::$icon['offset']['x'].', '.self::$icon['offset']['y'].'],
hideIconOnBalloonOpen: false,
balloonShadow: true,
balloonCloseButton: true,
iconMaxWidth: 300
'.$draggable.'
}
);
'.(($multyMarker) ? '' : 'map.geoObjects.add(placemark); placemark.balloon.open(); ').
'markers.push(placemark);
placemarksAll['.$model->id.'] = placemark;
';
}
Для Google Maps решение не было найдено
У них на демке: http://google-maps-utility-library-v3.g ... ample.html такая же ситуация, если переместить два маркера в одно место. И в документации я ничего не нарыл по поводу решения проблемы.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 93