diff options
| -rw-r--r-- | chimere/models.py | 3 | ||||
| -rw-r--r-- | chimere/static/chimere/css/forms.css | 96 | ||||
| -rw-r--r-- | chimere/static/chimere/css/styles.css | 12 | ||||
| -rw-r--r-- | chimere/static/chimere/js/edit_route_map.js | 2 | ||||
| -rw-r--r-- | chimere/static/chimere/js/jquery.chimere.js | 10 | ||||
| -rw-r--r-- | chimere/templates/chimere/base.html | 13 | ||||
| -rw-r--r-- | chimere/templates/chimere/blocks/head_chimere.html (renamed from chimere/templates/chimere/blocks/head.html) | 16 | ||||
| -rw-r--r-- | chimere/templates/chimere/blocks/head_jquery.html | 5 | ||||
| -rw-r--r-- | chimere/templates/chimere/blocks/map_params.html | 5 | ||||
| -rw-r--r-- | chimere/templates/chimere/contactus.html | 6 | ||||
| -rw-r--r-- | chimere/templates/chimere/edit.html | 8 | ||||
| -rw-r--r-- | chimere/templates/chimere/edit_route.html | 17 | ||||
| -rw-r--r-- | chimere/templates/chimere/main_map.html | 5 | ||||
| -rw-r--r-- | chimere/templatetags/chimere_tags.py | 19 | ||||
| -rw-r--r-- | chimere/urls.py | 3 | ||||
| -rw-r--r-- | chimere/views.py | 5 | ||||
| -rw-r--r-- | chimere/widgets.py | 120 | 
17 files changed, 196 insertions, 149 deletions
| diff --git a/chimere/models.py b/chimere/models.py index b4ee64e..d4d206a 100644 --- a/chimere/models.py +++ b/chimere/models.py @@ -216,7 +216,8 @@ class Marker(models.Model):      if 'chimere_rss' in settings.INSTALLED_APPS:          available_date = models.DateTimeField(_(u"Available Date"), blank=True,                                                 null=True) -    route = models.ForeignKey(u"Route", blank=True, null=True) +    route = models.ForeignKey(u"Route", blank=True, null=True, +                              related_name='associated_marker')      objects = BaseGeoManager()      def __unicode__(self): diff --git a/chimere/static/chimere/css/forms.css b/chimere/static/chimere/css/forms.css index c1c3eca..499a615 100644 --- a/chimere/static/chimere/css/forms.css +++ b/chimere/static/chimere/css/forms.css @@ -1,94 +1,96 @@  /* colors definition */  .map_button .toggle-button-inactive{ -color: #5b80b2; -background-color:#fff; +    color: #5b80b2; +    background-color:#fff; +    color:#54c200;  }  .map_button .toggle-button-active, .toggle-button:hover{ -background-color: #5b80b2; -color:#fff; +    background-color: #5b80b2; +    background-color:#54c200; +    color:#fff;  } - -  /**/  #map_edit{ -border: 1px solid black; -width:100%; -height:500px; +    margin:0; +    border: 1px solid black; +    width:100%; +    height:500px;  }  .map_button{ -position:absolute; -z-index:1000; -text-align:center; -width:100%; -margin:0; -padding:0; -margin-top:10px; -font-size:16px; +    position:absolute; +    z-index:1000; +    text-align:center; +    width:100%; +    margin:0; +    padding:0; +    margin-top:10px; +    font-size:16px;  }  .map_button a{ -margin:8px; -padding:4px; --moz-border-radius: 4px; --webkit-border-radius: 4px; -border-radius: 4px; +    margin:8px; +    padding:4px; +    -moz-border-radius: 4px; +    -webkit-border-radius: 4px; +    border-radius: 4px;  }  #live_lonlat{ -margin:1em; -float:left; +    margin:1em; +    float:left;  }  .toggle-button{ -margin:4px 0; -padding:2px 0; +    margin:4px 0; +    padding:2px 0;  }  #upload, #draw-label{ -vertical-align:center; -background-repeat:no-repeat; -font-size:20px; -padding:30px 0; -padding-left:80px; +    vertical-align:center; +    background-repeat:no-repeat; +    font-size:20px; +    margin:0; +    padding:30px 0; +    padding-left:80px;  }  #upload{ -background-image:url('img/upload.png'); +    background-image:url('../img/upload.png');  }  #draw-label{ -background-image:url('img/drawing.png'); +    background-image:url('../img/drawing.png');  }  #draw-or{ -padding:0; -padding-left:80px; -margin:0; -font-size:16px; +    padding:0; +    padding-left:80px; +    margin:0; +    font-size:16px;  }  .help-route{ -width:98%; -background-color:#EEF;; -margin: 10px 0; -padding:0 4px; --moz-border-radius: 4px; --webkit-border-radius: 4px; -border-radius: 4px; -border:1px solid grey; +    width:98%; +    background-color:#EEF;; +    margin: 10px 0; +    padding:0 4px; +    -moz-border-radius: 4px; +    -webkit-border-radius: 4px; +    border-radius: 4px; +    border:1px solid grey;  }  #help-route-create{ -display:None +    display:None  }  #help-route-modify{ -display:None +    display:None  } diff --git a/chimere/static/chimere/css/styles.css b/chimere/static/chimere/css/styles.css index e9c03ad..744f920 100644 --- a/chimere/static/chimere/css/styles.css +++ b/chimere/static/chimere/css/styles.css @@ -9,7 +9,7 @@ a, a:link, a:visited, legend,      color:#54c200;  } -h2, .action li, .action li a, +h2, h3, .action li, .action li a,  .action li li a,  #footer a, #footer a:link, #footer a:visited, .ui-widget-header,  a#welcome_button, a:visited#welcome_button, a:link#welcome_button, @@ -135,6 +135,12 @@ h2{      position: relative;  } +h3{ +    text-align:center; +    margin:6px; +    padding: 0.1em; +} +  .draggable h2{      cursor:move;  } @@ -178,6 +184,10 @@ ul.action{      padding-bottom:0;  } +ul#action-2 { +    padding-bottom:12px; +} +  .action li{      font-weight:normal;      display:inline; diff --git a/chimere/static/chimere/js/edit_route_map.js b/chimere/static/chimere/js/edit_route_map.js index 11af258..628e9fd 100644 --- a/chimere/static/chimere/js/edit_route_map.js +++ b/chimere/static/chimere/js/edit_route_map.js @@ -164,5 +164,5 @@ function uploadFile(error_msg) {          alert(error_msg);          return;      } -    open_window(extra_url + 'upload_file'); +    open_window(extra_url + 'upload_file/');  } diff --git a/chimere/static/chimere/js/jquery.chimere.js b/chimere/static/chimere/js/jquery.chimere.js index fb0e0bd..bd38a70 100644 --- a/chimere/static/chimere/js/jquery.chimere.js +++ b/chimere/static/chimere/js/jquery.chimere.js @@ -138,7 +138,8 @@ See the file COPYING for details.              settings.layerMarkers.setOpacity(0.8);              if (settings.dynamic_categories){ -                settings.map.events.register('moveend', settings.map, methods.loadCategories); +                settings.map.events.register('moveend', settings.map, +                                             methods.loadCategories);              }              /* TODO make a function */              if (settings.display_submited) { @@ -193,8 +194,9 @@ See the file COPYING for details.          * Update the categories div in ajax          */          loadCategories: function () { -            var current_extent = settings.map.getExtent().transform(settings.map.getProjectionObject(), -                                                           EPSG_DISPLAY_PROJECTION); +            var current_extent = settings.map.getExtent().transform( +                                            settings.map.getProjectionObject(), +                                            EPSG_DISPLAY_PROJECTION);              current_extent = current_extent.toArray().join('_')              current_extent = current_extent.replace(/\./g, 'D');              current_extent = current_extent.replace(/-/g, 'M'); @@ -489,7 +491,7 @@ See the file COPYING for details.                  }                  if ($(this).attr('checked') == 'checked'){                      cat_id = $(this).attr('id').split('_').pop(); -                    settings.checked_categories.push(cat_id); +                    settings.checked_categories.push(parseInt(cat_id));                  }              });              if(initialized && $('#display_submited_check').attr("checked") == "checked"){ diff --git a/chimere/templates/chimere/base.html b/chimere/templates/chimere/base.html index a09b5fc..297f116 100644 --- a/chimere/templates/chimere/base.html +++ b/chimere/templates/chimere/base.html @@ -1,16 +1,9 @@  {% extends "base.html" %}  {% load chimere_tags %}  {% block extra_head %} -    {% head %} -    <style> -    .olControlPanPanel div { -        background-image: url({{STATIC_URL}}/chimere/img/pan-panel.png); -    } - -    .olControlZoomPanel div { -        background-image: url({{STATIC_URL}}/chimere/img/zoom-panel.png); -    } -    </style> +{% if css_area %} +<link rel="stylesheet" href="{{ STATIC_URL }}chimere/css/{{ css_area }}.css" />{% endif %} +<link rel="stylesheet" href="{{ STATIC_URL }}chimere/css/styles.css" />  {% endblock %}  {% block header %}      {% block page_title %} diff --git a/chimere/templates/chimere/blocks/head.html b/chimere/templates/chimere/blocks/head_chimere.html index f1eaf94..85168f4 100644 --- a/chimere/templates/chimere/blocks/head.html +++ b/chimere/templates/chimere/blocks/head_chimere.html @@ -1,14 +1,7 @@ -{% if css_area %} -<link rel="stylesheet" href="{{ STATIC_URL }}chimere/css/{{ css_area }}.css" />{% endif %}  {% for css_url in OSM_CSS_URLS %}  <link rel="stylesheet" href="{{ css_url }}" />{% endfor %} -{% for css_url in JQUERY_CSS_URLS %} -<link rel="stylesheet" href="{{ css_url }}" />{% endfor %} -<link rel="stylesheet" href="{{ STATIC_URL }}chimere/css/styles.css" />  {% for js_url in OSM_JS_URLS %}  <script src="{{ js_url }}"></script>{% endfor %} -{% for js_url in JQUERY_JS_URLS %} -<script type="text/javascript" src="{{ js_url }}"></script>{% endfor %}  <script type="text/javascript">      /* Global variables */ @@ -40,6 +33,15 @@      $(function() {$( ".draggable" ).draggable({handle:"h2"});});  </script> +<style> +.olControlPanPanel div { +    background-image: url({{STATIC_URL}}chimere/img/pan-panel.png); +} + +.olControlZoomPanel div { +    background-image: url({{STATIC_URL}}chimere/img/zoom-panel.png); +} +</style> diff --git a/chimere/templates/chimere/blocks/head_jquery.html b/chimere/templates/chimere/blocks/head_jquery.html new file mode 100644 index 0000000..5a5a6dd --- /dev/null +++ b/chimere/templates/chimere/blocks/head_jquery.html @@ -0,0 +1,5 @@ +{% for css_url in JQUERY_CSS_URLS %} +<link rel="stylesheet" href="{{ css_url }}" />{% endfor %} + +{% for js_url in JQUERY_JS_URLS %} +<script type="text/javascript" src="{{ js_url }}"></script>{% endfor %} diff --git a/chimere/templates/chimere/blocks/map_params.html b/chimere/templates/chimere/blocks/map_params.html index 78e9000..85e071b 100644 --- a/chimere/templates/chimere/blocks/map_params.html +++ b/chimere/templates/chimere/blocks/map_params.html @@ -5,13 +5,14 @@      chimere_init_options['permalink_label'] = '{%trans "Permalink"%}';      {% if dynamic_categories %}chimere_init_options['dynamic_categories'] = 1;{% endif %}      {% if default_area %} -        chimere_init_options["default_area"] = new Array({{default_area.upper_left_corner.x}}, {{default_area.upper_left_corner.y}}, {{default_area.lower_right_corner.x}}, {{default_area.lower_right_corner.y}}); +    chimere_init_options["default_area"] = new Array({{default_area.upper_left_corner.x}}, {{default_area.upper_left_corner.y}}, {{default_area.lower_right_corner.x}}, {{default_area.lower_right_corner.y}});      {% endif %}      {% if p_zoom %}chimere_init_options["zoom"] = {{ p_zoom }};{% endif %}      {% if p_lat %}chimere_init_options["lat"] = {{ p_lat }};{% endif %}      {% if p_lon %}chimere_init_options["lon"] = {{ p_lon }};{% endif %} +    chimere_init_options["dynamic_categories"] = {{ dynamic_categories }};      {% if p_display_submited %}chimere_init_options["display_submited"] = {{ p_display_submited }};{% endif %} -     chimere_init_options["checked_categories"] = {% if p_checked_categories %}{{p_checked_categories}}{% else %} {{ CHIMERE_DEFAULT_CATEGORIES }}{% endif %}; +    chimere_init_options["checked_categories"] = {% if p_checked_categories %}{{p_checked_categories}}{% else %} {{ CHIMERE_DEFAULT_CATEGORIES }}{% endif %};      var p_current_feature{% if p_current_feature %} = {{ p_current_feature }}{% endif %};  </script> diff --git a/chimere/templates/chimere/contactus.html b/chimere/templates/chimere/contactus.html index 8cebe8f..4a44d77 100644 --- a/chimere/templates/chimere/contactus.html +++ b/chimere/templates/chimere/contactus.html @@ -1,5 +1,11 @@  {% extends "chimere/base.html" %} +{% load i18n chimere_tags %}  {% load i18n %} +{% block extra_head %} +    {{ block.super }} +    {{ form.media }} +    {% head_jquery %} +{% endblock %}  {% block message_map %}{% endblock %}  {% block message_edit%}{% endblock %}  {% block content %} diff --git a/chimere/templates/chimere/edit.html b/chimere/templates/chimere/edit.html index aa2ca08..4023a7e 100644 --- a/chimere/templates/chimere/edit.html +++ b/chimere/templates/chimere/edit.html @@ -1,7 +1,9 @@  {% extends "chimere/base.html" %} -{% load i18n %} -{% load adminmedia %} +{% load i18n chimere_tags adminmedia %}  {% block extra_head %} +    {{ block.super }} +    {{ form.media }} +    {% head_chimere %}      {% if dated %}          <!--script type="text/javascript" src="{{extra_url}}media/js/core.js"></script-->          <script type="text/javascript" src="{{ STATIC_URL }}chimere/js/utils.js"></script> @@ -9,8 +11,6 @@          window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}";          </script>      {% endif %} -    {{ form.media }} -    {{ block.super }}  {% endblock %}  {% block content %} diff --git a/chimere/templates/chimere/edit_route.html b/chimere/templates/chimere/edit_route.html index 1fd7813..bcc2afa 100644 --- a/chimere/templates/chimere/edit_route.html +++ b/chimere/templates/chimere/edit_route.html @@ -1,15 +1,16 @@  {% extends "chimere/base.html" %} -{% load i18n %} -{% load adminmedia %} +{% load i18n adminmedia chimere_tags %}  {% block extra_head %} -    {% if dated %} -	<!-- script type="text/javascript" src="{{extra_url}}media/js/core.js"></script--> -    <script type="text/javascript"> -    window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}"; -    </script> -    {% endif %}      {{ block.super }}      {{ form.media }} +    {% head_chimere %} +    {% if dated %} +        <!--script type="text/javascript" src="{{extra_url}}media/js/core.js"></script--> +        <script type="text/javascript" src="{{ STATIC_URL }}chimere/js/utils.js"></script> +        <script type="text/javascript"> +        window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}"; +        </script> +    {% endif %}  {% endblock %}  {% block content %} diff --git a/chimere/templates/chimere/main_map.html b/chimere/templates/chimere/main_map.html index b79e41d..7ae0d9f 100644 --- a/chimere/templates/chimere/main_map.html +++ b/chimere/templates/chimere/main_map.html @@ -1,5 +1,10 @@  {% extends "chimere/base.html" %}  {% load i18n unlocalize_point chimere_tags %} +{% block extra_head %} +    {{ block.super }} +    {% head_jquery %} +    {% head_chimere %} +{% endblock %}  {% block message_edit %}{% endblock %}  {% block sidebar %}      <div id='panel' class='draggable ui-widget ui-corner-all'> diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py index c8358a0..f645a9d 100644 --- a/chimere/templatetags/chimere_tags.py +++ b/chimere/templatetags/chimere_tags.py @@ -36,15 +36,24 @@ def display_news(context, display=False):      context_data['news_lst'] = news      return context_data -@register.inclusion_tag('chimere/blocks/head.html', takes_context=True) -def head(context): +@register.inclusion_tag('chimere/blocks/head_jquery.html', takes_context=True) +def head_jquery(context):      """ -    Create context and display head elements (js, css, etc.). +    Create context and display head elements (js, css, etc.) for jquery.      """      context_data = { -            "STATIC_URL": settings.STATIC_URL,              "JQUERY_JS_URLS": settings.JQUERY_JS_URLS,              "JQUERY_CSS_URLS": settings.JQUERY_CSS_URLS, +             } +    return context_data + +@register.inclusion_tag('chimere/blocks/head_chimere.html', takes_context=True) +def head_chimere(context): +    """ +    Create context and display head elements (js, css, etc.) for chimere. +    """ +    context_data = { +            "STATIC_URL": settings.STATIC_URL,              "MEDIA_URL": settings.MEDIA_URL,              "DYNAMIC_CATEGORIES": settings.CHIMERE_DYNAMIC_CATEGORIES,              "EXTRA_URL": reverse("chimere:index"), @@ -68,6 +77,8 @@ def head(context):  @register.inclusion_tag('chimere/blocks/map_params.html', takes_context=True)  def map_params(context):      context_data = {'p_checked_categories': settings.CHIMERE_DEFAULT_CATEGORIES} +    context_data['dynamic_categories'] = 'true' \ +                             if settings.CHIMERE_DYNAMIC_CATEGORIES else 'false'      try:          request = context['request']      except KeyError: diff --git a/chimere/urls.py b/chimere/urls.py index c065393..f39d2d8 100644 --- a/chimere/urls.py +++ b/chimere/urls.py @@ -53,6 +53,9 @@ urlpatterns += patterns('chimere.views',                          'get_available_categories', name="get_categories"),      url(r'^(?P<area_name>\w+)?/?ty/(?P<tiny_urn>\w+)$',                          'redirectFromTinyURN', name="tiny"), +    url(r'^(?P<area_name>\w+)?/?upload_file/((?P<category_id>\w+)/)?$', +                        'uploadFile', name='upload_file'), +  )  # At the end, because it catches large diff --git a/chimere/views.py b/chimere/views.py index 0cddd2c..6f71908 100644 --- a/chimere/views.py +++ b/chimere/views.py @@ -179,7 +179,8 @@ def uploadFile(request, category_id='', area_name=''):              routefile.save()              if not category_id:                  response_dct['gpx_id'] = routefile.pk -                return render_to_response('upload_file.html', response_dct) +                return render_to_response('chimere/upload_file.html', +                                          response_dct)              routefile.process()              if not routefile.route:                  response_dct['errors'] = _(u"Bad file. Please check it with an " @@ -197,7 +198,7 @@ def uploadFile(request, category_id='', area_name=''):          # An unbound form          form = Form()      response_dct.update({'form':form}) -    return render_to_response('upload_file.html', response_dct, +    return render_to_response('chimere/upload_file.html', response_dct,                                context_instance=RequestContext(request))  def processRouteFile(request, area_name='', file_id=None): diff --git a/chimere/widgets.py b/chimere/widgets.py index d12f2e6..b12ea97 100644 --- a/chimere/widgets.py +++ b/chimere/widgets.py @@ -32,14 +32,14 @@ def getMapJS(area_name=''):      '''Variable initialization for drawing the map      '''      # projection, center and bounds definitions -    js = u"var epsg_display_projection = new OpenLayers.Projection('EPSG:%d')\ -;\n" % settings.CHIMERE_EPSG_DISPLAY_PROJECTION +    js = u"var epsg_display_projection = new OpenLayers.Projection('EPSG:%d')"\ +         u";\n" % settings.CHIMERE_EPSG_DISPLAY_PROJECTION      js += u"OpenLayers.ImgPath = '%schimere/img/';\n" % settings.STATIC_URL      js += u"var epsg_projection = new OpenLayers.Projection('EPSG:%d');\n" % \ -                                                        settings.CHIMERE_EPSG_PROJECTION -    js += u"var centerLonLat = new OpenLayers.LonLat(%f,\ -%f).transform(epsg_display_projection, epsg_projection);\n" % \ -                                                         settings.CHIMERE_DEFAULT_CENTER +                                               settings.CHIMERE_EPSG_PROJECTION +    js += u"var centerLonLat = new OpenLayers.LonLat(%f,"\ +          u"%f).transform(epsg_display_projection, epsg_projection);\n" % \ +                                               settings.CHIMERE_DEFAULT_CENTER      js += u"var media_path = '%s';\n" % settings.STATIC_URL      js += u"var map_layer = %s;\n" % settings.CHIMERE_MAP_LAYER      js += u"var restricted_extent;\n" @@ -48,12 +48,11 @@ def getMapJS(area_name=''):          js += u"var area_name='%s';\n" % area_name      if settings.CHIMERE_RESTRICTED_EXTENT:          restricted_extent_str = [str(coord) \ -                                 for coord in settings.CHIMERE_RESTRICTED_EXTENT] +                                for coord in settings.CHIMERE_RESTRICTED_EXTENT]          js += u"restricted_extent = new OpenLayers.Bounds(%s);\n" %\                                             ", ".join(restricted_extent_str) -    js = u"""<script type="text/javascript"><!-- -%s// !--></script> -""" % js +    js = u"<script type='text/javascript'><!--\n"\ +         u"%s// !--></script>\n" % js      return js  class TextareaWidget(forms.Textarea): @@ -70,10 +69,12 @@ class PointChooserWidget(forms.TextInput):      """      class Media:          css = { -            "all": settings.OSM_CSS_URLS + ["%schimere/css/forms.css" % settings.STATIC_URL,] +            "all": settings.OSM_CSS_URLS + \ +                   ["%schimere/css/forms.css" % settings.STATIC_URL,]          } -        js = settings.OSM_JS_URLS + ["%schimere/js/edit_map.js" % settings.STATIC_URL, -                           "%schimere/js/base.js" % settings.STATIC_URL,] +        js = settings.OSM_JS_URLS + \ +                   ["%schimere/js/edit_map.js" % settings.STATIC_URL, +                    "%schimere/js/base.js" % settings.STATIC_URL,]      def render(self, name, value, attrs=None, area_name=''):          ''' @@ -94,28 +95,29 @@ class PointChooserWidget(forms.TextInput):              else:                  value = None          tpl = getMapJS(area_name) -        tpl += u'<script src="%schimere/js/edit_map.js"></script>\n' % settings.STATIC_URL -        tpl += u"""<div id='map_edit'></div> -<div id='live_lonlat'> -<p><label for='live_latitude'>%s</label>\ -<input type='texte' name='live_latitude' id='live_latitude' size='8' \ -disabled='true' value='%f'/></p> -<p><label for='live_longitude'>%s</label><input type='texte' \ -name='live_longitude' id='live_longitude' size='8' disabled='true' \ -value='%f'/></p> -</div> -<input type='hidden' name='%s' id='id_%s' value="%s"/> -""" % (_("Latitude"), value_y, _("Longitude"), value_x, name, name, val) +        tpl += u'<script src="%schimere/js/edit_map.js"></script>\n' % \ +                                                     settings.STATIC_URL +        tpl += u"<div id='map_edit'></div>"\ +               u"<div id='live_lonlat'>"\ +               u"    <p><label for='live_latitude'>%s</label>"\ +               u" <input type='texte' name='live_latitude' id='live_latitude' "\ +               u"size='8' disabled='true' value='%f'/></p>"\ +               u"<p><label for='live_longitude'>%s</label><input type='texte' "\ +               u"name='live_longitude' id='live_longitude' size='8' "\ +               u"disabled='true' value='%f'/></p>"\ +               u"</div>"\ +               u"<input type='hidden' name='%s' id='id_%s' value='%s'/>" % ( +                    _("Latitude"), value_y, _("Longitude"), value_x, name, name, +                    val)          tpl += "<script type='text/javascript'><!--\n"          tpl += "init();\n"          if value: -            tpl += '''var mylonlat = new OpenLayers.LonLat(%f,%f); -putMarker(mylonlat.transform(epsg_display_projection, -                             map.getProjectionObject()).clone(), true); -''' % (value_x, value_y) -        tpl += """// --></script> -<hr class='spacer'/> -""" +            tpl += u'var mylonlat = new OpenLayers.LonLat(%f,%f);\n'\ +                   u'putMarker(mylonlat.transform(epsg_display_projection,\n'\ +                   u'          map.getProjectionObject()).clone(), true);\n' % ( +                                                             value_x, value_y) +        tpl += "// --></script>\n"\ +               u"<hr class='spacer'/>\n"          return mark_safe(tpl)  class PointField(models.PointField): @@ -137,11 +139,12 @@ class RouteChooserWidget(forms.TextInput):      Manage the edition of route on a map      """      class Media: -        css = { -            "all": settings.OSM_CSS_URLS + ["%schimere/css/forms.css" % settings.STATIC_URL,] +        css = {"all": settings.OSM_CSS_URLS + \ +                      ["%schimere/css/forms.css" % settings.STATIC_URL,]          } -        js = ["%schimere/js/edit_route_map.js" % settings.STATIC_URL, -              "%schimere/js/base.js" % settings.STATIC_URL,] + settings.OSM_JS_URLS +        js = settings.OSM_JS_URLS + \ +             ["%schimere/js/edit_route_map.js" % settings.STATIC_URL, +              "%schimere/js/base.js" % settings.STATIC_URL,]      def render(self, name, value, attrs=None, area_name='', routefile_id=None):          ''' @@ -150,28 +153,29 @@ class RouteChooserWidget(forms.TextInput):          tpl = getMapJS(area_name)          help_create = ''          if not value: -            help_create = """<h3>%s</h3> -<p>%s</p> -<p>%s</p> -<p>%s</p> -<p>%s</p> -<p>%s</p>""" % (_(u"Creation mode"), -_(u"To start drawing the route click on the toggle button: \"Draw\"."), -_(u"Then click on the map to begin the drawing."), -_(u"You can add points by clicking again."), -_(u"To finish the drawing double click. When the drawing is finished you can \ -edit it."), -_(u"While creating to undo a drawing click again on the toggle button \"Stop \ -drawing\".")) -        help_modify = """<h3>%s</h3> -<p>%s</p> -<p>%s</p> -<p>%s</p>""" % (_(u"Modification mode"), -_(u"To move a point click on it and drag it to the desired position."), -_(u"To delete a point move the mouse cursor over it and press the \"d\" or \ -\"Del\" key."), -_(u"To add a point click in the middle of a segment and drag the new point to \ -the desired position")) +            help_create = u"<h3>%s</h3>\n"\ +            u"<p>%s</p>\n"\ +            u"<p>%s</p>\n"\ +            u"<p>%s</p>\n"\ +            u"<p>%s</p>\n"\ +            u"<p>%s</p>\n" % (_(u"Creation mode"), +            _(u"To start drawing the route click on the toggle button: "\ +              u"\"Draw\"."), +            _(u"Then click on the map to begin the drawing."), +            _(u"You can add points by clicking again."), +            _(u"To finish the drawing double click. When the drawing is "\ +              u"finished you can edit it."), +            _(u"While creating to undo a drawing click again on the toggle "\ +              u"button \"Stop drawing\".")) +        help_modify = u"<h3>%s</h3>\n"\ +        u"<p>%s</p>\n"\ +        u"<p>%s</p>\n"\ +        u"<p>%s</p>\n" % (_(u"Modification mode"), +        _(u"To move a point click on it and drag it to the desired position."), +        _(u"To delete a point move the mouse cursor over it and press the "\ +          u"\"d\" or \"Del\" key."), +        _(u"To add a point click in the middle of a segment and drag the new "\ +          u"point to the desired position"))          tpl += u'<script src="%sedit_route_map.js"></script>\n' % \                                                              settings.STATIC_URL          if not value: | 
