summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chimere/templates/chimere/blocks/ol_map.html19
-rw-r--r--chimere/templatetags/chimere_tags.py7
2 files changed, 26 insertions, 0 deletions
diff --git a/chimere/templates/chimere/blocks/ol_map.html b/chimere/templates/chimere/blocks/ol_map.html
new file mode 100644
index 0000000..98743fa
--- /dev/null
+++ b/chimere/templates/chimere/blocks/ol_map.html
@@ -0,0 +1,19 @@
+{% load unlocalize_point %}
+<div id="{{map_id}}" style="height:250px"></div>
+<script>
+
+ var lat = '{{geom.y|unlocalize_point}}';
+ var lon = '{{geom.x|unlocalize_point}}';
+ var zoom = 18;
+ var fromProjection = new OpenLayers.Projection("EPSG:4326");
+ var toProjection = new OpenLayers.Projection("EPSG:900913");
+ var position = new OpenLayers.LonLat(lon, lat).transform(fromProjection,
+ toProjection);
+ {{map_id}} = new OpenLayers.Map("{{map_id}}");
+ {{map_id}}.addLayer(new OpenLayers.Layer.OSM());
+
+ var {{map_id}}markers = new OpenLayers.Layer.Markers( "Markers" );
+ {{map_id}}.addLayer({{map_id}}markers);
+ {{map_id}}markers.addMarker(new OpenLayers.Marker(position));
+ {{map_id}}.setCenter(position, zoom);
+</script>
diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py
index 1258a3d..25e6122 100644
--- a/chimere/templatetags/chimere_tags.py
+++ b/chimere/templatetags/chimere_tags.py
@@ -10,6 +10,7 @@ from django.conf import settings
from django.core.exceptions import ObjectDoesNotExist
from django.core.urlresolvers import reverse
from django.db.models import Q, Count
+from django.template.loader import render_to_string
from chimere.models import Marker, Area, News, SubCategory
from chimere.widgets import get_map_layers
@@ -208,3 +209,9 @@ def get_tinyfied_url(marker, area_name=''):
return ""
url = marker.get_absolute_url(area_name)
return url
+
+@register.filter(name='ol_map')
+def ol_map(geom, arg='map_id'):
+ rendered = render_to_string('chimere/blocks/ol_map.html', {'geom': geom,
+ 'map_id':arg})
+ return rendered