agenda-libre-ruby/app/assets/javascripts/maps.js.coffee

55 lines
1.8 KiB
CoffeeScript
Raw Normal View History

$(document).ready ->
$('#map.events').each ->
map = L.map 'map'
2014-10-05 13:35:42 +02:00
L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
2014-08-23 16:59:42 +02:00
attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a>'
).addTo map
url = $(this).data 'url'
2014-10-31 14:24:40 +01:00
if location.search && url.indexOf('?') >= 0
url += '&' + location.search.substr 1
else
url += location.search
$.getJSON url, (json) ->
layer = L.geoJson json,
2014-08-23 16:59:42 +02:00
onEachFeature: (feature, layer) ->
# Does this feature have a property named popupContent?
if (feature.properties && feature.properties.popupContent)
layer.bindPopup feature.properties.popupContent
2014-08-23 16:59:42 +02:00
map.addLayer L.markerClusterGroup().addLayer layer
if (layer.getBounds()._northEast && layer.getBounds()._southWest)
# Automatic focus to all displayed events
map.fitBounds layer.getBounds()
else
$('#map.events').remove()
2014-08-23 16:59:42 +02:00
$('#map.event').each ->
coord = [$(this).data('latitude'), $(this).data('longitude')]
2014-08-02 15:51:45 +02:00
2014-08-23 16:59:42 +02:00
map = L.map('map').setView [coord[0], coord[1]], 16
2014-10-05 13:35:42 +02:00
L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
2014-08-23 16:59:42 +02:00
attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a>'
).addTo map
url = $(this).data 'url'
2014-12-13 12:32:05 +01:00
if location.search && url.indexOf('?') >= 0
url += '&' + location.search.substr 1
else
url += location.search
$.getJSON url, (json) ->
layer = L.geoJson json,
onEachFeature: (feature, layer) ->
# Does this feature have a property named popupContent?
if (feature.properties && feature.properties.popupContent)
layer.bindPopup(feature.properties.popupContent)
2014-08-23 16:59:42 +02:00
map.addLayer L.markerClusterGroup().addLayer layer
2014-08-23 16:59:42 +02:00
marker = L.marker([coord[0], coord[1]]).addTo map