#138 WIP NETGIS Map client

* adds functionality for address search widget
    * drops default proxy.php (replaced by own python call)
* reduces maxZoom in config.json
This commit is contained in:
2022-04-20 09:23:24 +02:00
parent d13c3e8094
commit 49c14a67b6
4 changed files with 31 additions and 26 deletions

View File

@@ -24,7 +24,7 @@ from konova.autocompletes import EcoAccountAutocomplete, \
ShareTeamAutocomplete, HandlerCodeAutocomplete
from konova.settings import SSO_SERVER, SSO_PUBLIC_KEY, SSO_PRIVATE_KEY, DEBUG
from konova.sso.sso import KonovaSSOClient
from konova.views import logout_view, home_view, get_geom_parcels
from konova.views import logout_view, home_view, get_geom_parcels, map_client_proxy_view
sso_client = KonovaSSOClient(SSO_SERVER, SSO_PUBLIC_KEY, SSO_PRIVATE_KEY)
urlpatterns = [
@@ -41,6 +41,7 @@ urlpatterns = [
path('analysis/', include("analysis.urls")),
path('api/', include("api.urls")),
path('geom/<id>/parcels', get_geom_parcels, name="geometry-parcels"),
path('client/proxy', map_client_proxy_view, name="map-client-proxy"),
# Autocomplete paths for all apps
path("atcmplt/eco-accounts", EcoAccountAutocomplete.as_view(), name="accounts-autocomplete"),

View File

@@ -5,9 +5,12 @@ Contact: michel.peltriaux@sgdnord.rlp.de
Created on: 16.11.20
"""
import json
import requests
from django.contrib.auth import logout
from django.contrib.auth.decorators import login_required
from django.http import HttpRequest, HttpResponse
from django.http import HttpRequest, HttpResponse, JsonResponse
from django.shortcuts import redirect, render, get_object_or_404
from django.template.loader import render_to_string
from django.utils import timezone
@@ -168,3 +171,26 @@ def get_500_view(request: HttpRequest):
"""
context = BaseContext.context
return render(request, "500.html", context, status=500)
@login_required
def map_client_proxy_view(request: HttpRequest):
""" Provides proxy functionality for NETGIS map client.
Used for fetching content of a provided url
Args:
request (HttpRequest): The incoming request
Returns:
"""
url = request.META.get("QUERY_STRING")
response = requests.get(url)
body = json.loads(response.content)
if response.status_code != 200:
return JsonResponse({
"status_code": response.status_code,
"content": body,
})
return JsonResponse(body)