diff --git a/TEMPLATE.env b/TEMPLATE.env index d40ebb7..ad5403c 100644 --- a/TEMPLATE.env +++ b/TEMPLATE.env @@ -82,4 +82,13 @@ BLOCK_ALL_IPS=False # that IP collection is also disabled, and external keys (primary # keys) aren't supplied. It will also prevent sessions from spanning # one day to another. -AGGRESSIVE_HASH_SALTING=True \ No newline at end of file +AGGRESSIVE_HASH_SALTING=True + +# Custom location url to link to in frontend. +# $LATITUDE will get replaced by the latitude, $LONGITUDE will get +# replaced by the longitude. +# Examples: +# - https://www.openstreetmap.org/?mlat=$LATITUDE&mlon=$LONGITUDE (default) +# - https://www.google.com/maps/search/?api=1&query=$LATITUDE,$LONGITUDE +# - https://www.mapquest.com/near-$LATITUDE,$LONGITUDE +LOCATION_URL=https://www.openstreetmap.org/?mlat=$LATITUDE&mlon=$LONGITUDE \ No newline at end of file diff --git a/app.json b/app.json index 329ff37..c238587 100644 --- a/app.json +++ b/app.json @@ -122,6 +122,11 @@ "description": "Set to 'False' if you do not want the version to be displayed on the frontend.", "value": "True", "required": false + }, + "LOCATION_URL": { + "description": "Custom location url to link to in frontend.", + "value": "https://www.openstreetmap.org/?mlat=$LATITUDE&mlon=$LONGITUDE", + "required": false } } } diff --git a/shynet/dashboard/templates/dashboard/pages/service_session.html b/shynet/dashboard/templates/dashboard/pages/service_session.html index d48a0e0..2c9f545 100644 --- a/shynet/dashboard/templates/dashboard/pages/service_session.html +++ b/shynet/dashboard/templates/dashboard/pages/service_session.html @@ -51,7 +51,7 @@

Location

{% if session.latitude %} - Open + Open in Maps ↗ {% else %} Unknown diff --git a/shynet/dashboard/templatetags/helpers.py b/shynet/dashboard/templatetags/helpers.py index 701f735..f456be4 100644 --- a/shynet/dashboard/templatetags/helpers.py +++ b/shynet/dashboard/templatetags/helpers.py @@ -225,3 +225,6 @@ def contextual_url(*args, **kwargs): urlnode = url_tag(*args, **kwargs) return ContextualURLNode(urlnode) +@register.filter +def location_url(session): + return settings.LOCATION_URL.replace("$LATITUDE", str(session.latitude)).replace("$LONGITUDE", str(session.longitude)) diff --git a/shynet/shynet/settings.py b/shynet/shynet/settings.py index 30332b5..847cb1f 100644 --- a/shynet/shynet/settings.py +++ b/shynet/shynet/settings.py @@ -340,3 +340,6 @@ BLOCK_ALL_IPS = os.getenv("BLOCK_ALL_IPS", "False") == "True" # Include date and service ID in salt? AGGRESSIVE_HASH_SALTING = os.getenv("AGGRESSIVE_HASH_SALTING", "False") == "True" + +# What location url should be linked to in the frontend? +LOCATION_URL = os.getenv("LOCATION_URL", "https://www.openstreetmap.org/?mlat=$LATITUDE&mlon=$LONGITUDE")