You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

70 lines
1.8 KiB

{% extends 'base_no_lmenu.html' %}
{% block main %}
<script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
<script type="text/javascript">
ymaps.ready(init);
var myMap;
function placemark_click(e){
var plcmrk = e.get('target');
plcmrk.properties.set('balloonContent', "Получаю инфу..");
var html = $.ajax({
url: "{% url 'mapapp:dot_tooltip' %}",
data: {'d': plcmrk.properties._data.dot_id},
async: false
}).responseText;
plcmrk.properties.set('balloonContent', html);
}
function load_dots(r){
for(var n=0; n< r.length; n++){
var dot = new ymaps.Placemark(
[r[n].fields.latitude, r[n].fields.longitude],
{
hintContent: r[n].fields.title,
dot_id: r[n].pk
}
);
dot.events.add('click', placemark_click);
myMap.geoObjects.add(dot);
}
}
function add_dot(e){
var coords = e.get('coords');
$.get('{% url 'mapapp:modal_add_dot' %}', {'coords': coords.join(',')}, function(r){
show_ModalMyContent(r);
});
e.preventDefault();
}
function init(){
var win = $(window);
$('#yamap')
.css('width', win.width()-5+'px')
.css('height', win.height()+'px');
myMap = new ymaps.Map("yamap", {
center: [45.449160, 34.735454],
zoom: 12
});
$.getJSON("{% url 'mapapp:get_dots' %}", load_dots);
myMap.events.add('dblclick', add_dot);
}
</script>
<div id="yamap"></div>
<style>
#yamap{
margin-left: -15px;
margin-top: -9px;
}
</style>
{% endblock %}