diff options
Diffstat (limited to 'chimere/views.py')
-rw-r--r-- | chimere/views.py | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/chimere/views.py b/chimere/views.py index 421c03e..b6c03b8 100644 --- a/chimere/views.py +++ b/chimere/views.py @@ -1011,14 +1011,35 @@ def getTinyfiedUrl(request, parameters, area_name=''): if not url.startswith('http'): url = get_base_uri(request) + url url = re.sub("([^:])\/\/", "\g<1>/", url) - text = response_dct['area'].name - if 'current_feature' in parameters: - for item in parameters.split('&'): - if 'current_feature' in item: - try: - text = str(models.Marker.objects.get(id=item.split('=')[1])) - except (IndexError, models.Marker.DoesNotExist): - pass + current_site = get_current_site(request) + map_name = current_site.name + if response_dct['area']: + map_name += " - " + response_dct["area"].name + + text = "" + item_id = parameters.split(';')[4] + if item_id and "-" in item_id: + cls = None + if item_id.startswith('point-'): + cls = models.Marker + elif item_id.startswith('route-'): + cls = models.Route + elif item_id.startswith('polygon-'): + cls = models.Polygon + item_id = item_id.split("-")[1] + if cls: + try: + text = str(cls.objects.get(id=item_id)) + text = str( + _("Share a point of interest on the map {}: ") + ).format(map_name) + text + except (cls.DoesNotExist): + pass + if not text: + text = str( + _("Share a point of interest on the map {}") + ).format(map_name) + data["urn"] = urlquote(urn) data["url"] = urlquote(url) data["text"] = urlquote(text) |