Исходный код, работает в шаблоне smarty админки modx. Код исправно работает.
type="text/javascript"></script>
<script type="text/javascript">
var PolygonCoords = '{$tv->value}'; // Подставляется значение TV по умолчанию, если не имеется сохранённой точки.
var MapCenter=[];
if (PolygonCoords == null || PolygonCoords == "")
{
MapCenter=[59.09468126320428,37.89173126220425]; //центр по-умолчанию
}
else
{
var CoordsArray=PolygonCoords.split(',');
MapCenter.push(parseFloat(CoordsArray[0]),parseFloat(CoordsArray[1]));
var PolygonCoordsArr=[];
for(var i=0; i<CoordsArray.length; i=i+2)
{
var Arr=[];
Arr.push(parseFloat(CoordsArray[i]));
Arr.push(parseFloat(CoordsArray[i+1]));
PolygonCoordsArr.push(Arr);
}
}
ymaps.ready(init);
function init () {
var myMap = new ymaps.Map('tv{$tv->id}Map', {
center: MapCenter,
zoom: 12
});
var myPolygon = new ymaps.Polygon(
[PolygonCoordsArr]
, {
hintContent: "[[*pagetitle]]"
}, {
fillColor: '#6699ff',
strokeWidth: 8,
opacity: 0.5,
draggable: true
});
// Размещаем геообъект на карте
myMap.geoObjects.add(myPolygon);
// Подключаем к геообъекту редактор, позволяющий
// визуально добавлять/удалять/перемещать его вершины.
myPolygon.editor.startEditing();
//myGeoObject.editor.startEditing();
myPolygon.events.add('geometrychange', function (e) {
var coords = e.get('target').geometry.getCoordinates();// Читаем координаты
document.getElementById("tv{$tv->id}").value = coords;// Сохраняем координаты в ТВ
});
}
</script>
При попытке добавить код из примера документации страница стабильно выдает Internal server error 500.
http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/control.Button.xml
// Создание кнопки и добавление ее на карту.
var button = new ymaps.control.Button({
data: {
// Зададим иконку для кнопки
image: 'images/button.jpg',
// Текст на кнопке.
content: 'Сохранить',
// Текст всплывающей подсказки.
title: 'Нажмите для сохранения маршрута'
}
}, {
// Зададим опции для кнопки.
selectOnClick: false
});
myMap.controls.add(button, {top: 5, right: 5});
Удаляем код примера - все снова работает. Мне кажется, что дело в формате параметров, но проверить свою догадку не получается.