From d6e7022470c46d93ca441ecaf23b8846893fc013 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 28 Sep 2018 12:01:00 +0200 Subject: Fix share of point of interest --- chimere/views.py | 37 +++++++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 8 deletions(-) (limited to 'chimere/views.py') 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) -- cgit v1.2.3