summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chimere/static/chimere/css/styles.css8
-rw-r--r--chimere/static/chimere/js/jquery.chimere-ol.js33
-rw-r--r--chimere/templates/chimere/detail.html2
-rw-r--r--chimere/templatetags/chimere_tags.py7
4 files changed, 36 insertions, 14 deletions
diff --git a/chimere/static/chimere/css/styles.css b/chimere/static/chimere/css/styles.css
index d79bd0e..dd27d95 100644
--- a/chimere/static/chimere/css/styles.css
+++ b/chimere/static/chimere/css/styles.css
@@ -371,8 +371,10 @@ ul#action-2 {
ul.share{
list-style-type:none;
margin:0;
- padding:0;
- display:inline;
+ padding:0 1em;
+ display:block;
+ text-align:right;
+ font-style:italic;
}
ul.share li{
@@ -1137,7 +1139,7 @@ div.pp_default .pp_expand{
}
.olControlSimplePanZoom {
- top: 10px;
+ top: 20px;
right: 10px;
}
diff --git a/chimere/static/chimere/js/jquery.chimere-ol.js b/chimere/static/chimere/js/jquery.chimere-ol.js
index ae3e340..9346964 100644
--- a/chimere/static/chimere/js/jquery.chimere-ol.js
+++ b/chimere/static/chimere/js/jquery.chimere-ol.js
@@ -103,7 +103,7 @@ if (typeof(OpenLayers) != 'undefined'){
current_control: null, // To store the current control
current_popup: null, // To store the current POI popup displayed
current_category: null, // To store the current category clicked in list
- current_route_feature: null, // To store the current route find by routing
+ current_routes_features: [], // To store the current routes find by routing
itinerary_step_number:0, // current step number
icon_offset: null,
edition: false, // edition mode
@@ -187,8 +187,7 @@ if (typeof(OpenLayers) != 'undefined'){
new OpenLayers.Control.Zoom()];
} else {
settings.controls = [new OpenLayers.Control.Navigation(),
- new OpenLayers.Control.PanPanel(),
- new OpenLayers.Control.ZoomPanel(),
+ new OpenLayers.Control.SimplePanZoom(),
new OpenLayers.Control.ScaleLine()];
}
}
@@ -1269,7 +1268,7 @@ if (typeof(OpenLayers) != 'undefined'){
settings.routing_end = null;
settings.routing_steps = new Array();
settings.current_itinerary_number = 0;
- settings.current_route_feature = null;
+ settings.current_routes_features = [];
settings.permalink.updateLink();
},
// display a route
@@ -1311,11 +1310,12 @@ if (typeof(OpenLayers) != 'undefined'){
methods.displayMessage(routing_fail_message);
return;
}
+ settings.current_routes_features = [];
for (var i = 0; i < data.features.length; i++) {
var feat = data.features[i];
if(feat.type == 'LineString'){
- settings.current_route_feature =
- methods.putRoute(feat);
+ settings.current_routes_features.push(
+ methods.putRoute(feat));
} else {
var lonlat = new OpenLayers.LonLat(
feat.geometry.coordinates[0],
@@ -1572,12 +1572,25 @@ if (typeof(OpenLayers) != 'undefined'){
},
updateRoutingInput: function(){
- if (!settings.current_route_feature) {
+ if (!settings.current_routes_features) {
return;
}
- var current_geo = settings.current_route_feature.geometry.clone();
- current_geo.transform(EPSG_PROJECTION, EPSG_DISPLAY_PROJECTION);
- jQuery('#id_route').val(current_geo);
+ var wkt = new OpenLayers.Format.WKT();
+ var point_array = [];
+ // not very effective...
+ for (idx in settings.current_routes_features){
+ var c_geo = settings.current_routes_features[idx].geometry.clone();
+ c_geo = c_geo.transform(EPSG_PROJECTION,
+ EPSG_DISPLAY_PROJECTION);
+ var vertices = c_geo.getVertices();
+ for (idx_pt in vertices){
+ var point = vertices[idx_pt];
+ point = wkt.read(String(point));
+ point_array.push(point.geometry);
+ }
+ }
+ var linestring = new OpenLayers.Geometry.LineString(point_array);
+ jQuery('#id_route').val(String(linestring));
},
activateCurrentControl: function(){
if (settings.current_control){
diff --git a/chimere/templates/chimere/detail.html b/chimere/templates/chimere/detail.html
index b2210e2..002ecb3 100644
--- a/chimere/templates/chimere/detail.html
+++ b/chimere/templates/chimere/detail.html
@@ -29,6 +29,7 @@
<a href='#' class='show_gallery_link'>{% trans "Show multimedia gallery" %}</a>
</p>{% endif %}
</div>
+ {% share_bar marker.name %}
{% if can_edit or can_propose %}
<p class='detail_amendment'><a href='{% if marker.route %}{% url chimere:editroute-item map_name_slash|default_if_none:"" marker.route.pk "" %}{%else%}{% url chimere:edit-item map_name_slash|default_if_none:"" marker.pk "" %}{%endif%}'>
{% if can_write %}{% trans "Edit" %}{%else%}
@@ -39,7 +40,6 @@
<a href="mailto:?from={{moderator_emails}}&subject={% trans "Propose amendment" %}&body={% trans "I would like to propose an amendment for this item:"%} {{share_url}}">
{% trans "Propose amendment" %}
</a>{%endif%}
- {% share_bar marker.name %}
</div>
{% if marker.multimedia_items %}
<div id='gallery-{{time_now}}' class='gallery'>
diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py
index 3c48d95..e3b439f 100644
--- a/chimere/templatetags/chimere_tags.py
+++ b/chimere/templatetags/chimere_tags.py
@@ -80,6 +80,13 @@ def display_welcome(context, display=False, title=''):
context_data['welcome_message'] = map.welcome_message
except ObjectDoesNotExist:
pass
+ else:
+ try:
+ map = Map.objects.get(default=True)
+ context_data['map_name'] = context['map_name']
+ context_data['welcome_message'] = map.welcome_message
+ except ObjectDoesNotExist:
+ pass
context_data['news_lst'] = get_news(map)[:3]
context_data['STATIC_URL'] = settings.STATIC_URL
context_data['title'] = title if title \