84 lines
3.0 KiB
JavaScript
84 lines
3.0 KiB
JavaScript
/*
|
|
* To change this template, choose Tools | Templates
|
|
* and open the template in the editor.
|
|
*/
|
|
|
|
ymaps.ready(init);
|
|
var myMap;
|
|
|
|
function init() {
|
|
myMap = new ymaps.Map("map", {
|
|
center: [59.9, 30.3],
|
|
zoom: 9,
|
|
behaviors: ['default', 'scrollZoom']
|
|
});
|
|
|
|
myMap.controls.add('mapTools');
|
|
myMap.controls.add('typeSelector');
|
|
myMap.controls.add('smallZoomControl');
|
|
myMap.controls.add('scaleLine');
|
|
|
|
getPoints();
|
|
|
|
myMap.events.add('click', function (e) {
|
|
if (!myMap.balloon.isOpen()) {
|
|
var coords = e.get('coordPosition');
|
|
myMap.balloon.open(coords, {
|
|
contentHeader:'Добавление точки',
|
|
contentBody:
|
|
'<form method="POST" action="/index/addpoint/" width="400px" height="300px">' +
|
|
'<p>Название:<br/>' +
|
|
'<input type="text" id="name" name="name" /></p>' +
|
|
'<p>URL изображения:<br/>' +
|
|
'<input type="text" id="img" name="img" /></p>' +
|
|
'<p>Описание:<br/>' +
|
|
'<textarea id="description" name="description"></textarea></p>' +
|
|
'<p>Тип:<br/>' +
|
|
'<select id="categoryId" name="categoryId">' +
|
|
'<option value="1">Парки и сады</option>' +
|
|
'<option value="2">Замки и усадьбы</option>' +
|
|
'</select>' +
|
|
'<p>Источник:<br/>' +
|
|
'<input type="text" id="source" name="source" /></p>' +
|
|
|
|
'<input type="hidden" id="lat" name="lat" value="'+coords[0].toPrecision(11)+'" />' +
|
|
'<input type="hidden" id="lng" name="lng" value="'+coords[1].toPrecision(11)+'" />' +
|
|
'<input type="submit" id="add" onclick="addNewPoint()" value="Добавить">' +
|
|
'</form>'
|
|
});
|
|
}
|
|
else {
|
|
myMap.balloon.close();
|
|
}
|
|
});
|
|
}
|
|
|
|
function getPoints()
|
|
{
|
|
$.ajax({
|
|
url: "/json/points/",
|
|
success: function(data){
|
|
for(var k in data) {
|
|
myPlacemark = new ymaps.Placemark(
|
|
[data[k]['lat'], data[k]['lng']], {
|
|
hintContent: data[k]['name'],
|
|
balloonContent:
|
|
'<div class="infoCard">' +
|
|
'<img src="'+data[k]['img']+'" />' +
|
|
'<h3>'+data[k]['name']+'</h3>' +
|
|
data[k]['description'] +
|
|
' <a href="'+data[k]['source']+'" target="blank">Подробнее...</a></div>'
|
|
},{iconImageHref: data[k]['categoryIcon']});
|
|
|
|
myMap.geoObjects.add(myPlacemark);
|
|
}
|
|
}
|
|
});
|
|
|
|
return true;
|
|
}
|
|
|
|
function addNewPoint()
|
|
{
|
|
console.log($('#name').val());
|
|
} |