From 48e3e84b4c6db8a5f9f1c8ac2fc7652f2f9475e5 Mon Sep 17 00:00:00 2001 From: mpeltriaux Date: Thu, 21 Apr 2022 14:19:35 +0200 Subject: [PATCH] #151 Dynamic parcel table * refactors parcel table into a dynamic table, which does not show all content at once but rather supports pagination and a button which triggers loading of more content * adds translation --- .../detail/compensation/view.html | 2 +- .../compensation/detail/eco_account/view.html | 2 +- .../report/compensation/report.html | 2 +- .../report/eco_account/report.html | 2 +- ema/templates/ema/detail/view.html | 2 +- ema/templates/ema/report/report.html | 2 +- .../templates/intervention/detail/view.html | 2 +- .../templates/intervention/report/report.html | 2 +- .../parcels/parcel_table_content.html | 22 ++++++++++ .../parcel_table_frame.html} | 13 +----- .../includes/{ => parcels}/parcels.html | 0 konova/urls.py | 5 ++- konova/views.py | 41 +++++++++++++++++- locale/de/LC_MESSAGES/django.mo | Bin 42105 -> 42175 bytes locale/de/LC_MESSAGES/django.po | 28 +++++++----- 15 files changed, 91 insertions(+), 34 deletions(-) create mode 100644 konova/templates/konova/includes/parcels/parcel_table_content.html rename konova/templates/konova/includes/{parcel_table.html => parcels/parcel_table_frame.html} (75%) rename konova/templates/konova/includes/{ => parcels}/parcels.html (100%) diff --git a/compensation/templates/compensation/detail/compensation/view.html b/compensation/templates/compensation/detail/compensation/view.html index 80b5c0f0..8e1b1267 100644 --- a/compensation/templates/compensation/detail/compensation/view.html +++ b/compensation/templates/compensation/detail/compensation/view.html @@ -122,7 +122,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/comment_card.html' %} diff --git a/compensation/templates/compensation/detail/eco_account/view.html b/compensation/templates/compensation/detail/eco_account/view.html index 116b6670..0eb354fe 100644 --- a/compensation/templates/compensation/detail/eco_account/view.html +++ b/compensation/templates/compensation/detail/eco_account/view.html @@ -104,7 +104,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/comment_card.html' %} diff --git a/compensation/templates/compensation/report/compensation/report.html b/compensation/templates/compensation/report/compensation/report.html index 66205739..7088ff07 100644 --- a/compensation/templates/compensation/report/compensation/report.html +++ b/compensation/templates/compensation/report/compensation/report.html @@ -38,7 +38,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/report/qrcodes.html' %} diff --git a/compensation/templates/compensation/report/eco_account/report.html b/compensation/templates/compensation/report/eco_account/report.html index 823a30fb..a3632ee2 100644 --- a/compensation/templates/compensation/report/eco_account/report.html +++ b/compensation/templates/compensation/report/eco_account/report.html @@ -51,7 +51,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/report/qrcodes.html' %} diff --git a/ema/templates/ema/detail/view.html b/ema/templates/ema/detail/view.html index 020b7d4b..31d26e0b 100644 --- a/ema/templates/ema/detail/view.html +++ b/ema/templates/ema/detail/view.html @@ -90,7 +90,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/comment_card.html' %} diff --git a/ema/templates/ema/report/report.html b/ema/templates/ema/report/report.html index 40b11084..43b64865 100644 --- a/ema/templates/ema/report/report.html +++ b/ema/templates/ema/report/report.html @@ -38,7 +38,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/report/qrcodes.html' %} diff --git a/intervention/templates/intervention/detail/view.html b/intervention/templates/intervention/detail/view.html index c5f9b9c1..2d9628cd 100644 --- a/intervention/templates/intervention/detail/view.html +++ b/intervention/templates/intervention/detail/view.html @@ -137,7 +137,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/comment_card.html' %} diff --git a/intervention/templates/intervention/report/report.html b/intervention/templates/intervention/report/report.html index e6f13c35..6e238fa2 100644 --- a/intervention/templates/intervention/report/report.html +++ b/intervention/templates/intervention/report/report.html @@ -97,7 +97,7 @@ {% include 'map/geom_form.html' %}
- {% include 'konova/includes/parcels.html' %} + {% include 'konova/includes/parcels/parcels.html' %}
{% include 'konova/includes/report/qrcodes.html' %} diff --git a/konova/templates/konova/includes/parcels/parcel_table_content.html b/konova/templates/konova/includes/parcels/parcel_table_content.html new file mode 100644 index 00000000..0cb5ce11 --- /dev/null +++ b/konova/templates/konova/includes/parcels/parcel_table_content.html @@ -0,0 +1,22 @@ +{% load l10n i18n %} +{% for parcel in parcels %} + + {{parcel.parcel_group.name|default_if_none:"-"}} + {{parcel.parcel_group.key|default_if_none:"-"}} + {{parcel.flr|default_if_none:"-"|unlocalize}} + {{parcel.flrstck_zhlr|default_if_none:"-"|unlocalize}} + {{parcel.flrstck_nnr|default_if_none:"-"|unlocalize}} + +{% endfor %} +{% if next_page %} + + + + + +{% endif %} \ No newline at end of file diff --git a/konova/templates/konova/includes/parcel_table.html b/konova/templates/konova/includes/parcels/parcel_table_frame.html similarity index 75% rename from konova/templates/konova/includes/parcel_table.html rename to konova/templates/konova/includes/parcels/parcel_table_frame.html index 76503572..4b4a760d 100644 --- a/konova/templates/konova/includes/parcel_table.html +++ b/konova/templates/konova/includes/parcels/parcel_table_frame.html @@ -36,17 +36,8 @@ {% trans 'Parcel number' %} - - {% for parcel in parcels %} - - {{parcel.parcel_group.name|default_if_none:"-"}} - {{parcel.parcel_group.key|default_if_none:"-"}} - {{parcel.flr|default_if_none:"-"|unlocalize}} - {{parcel.flrstck_zhlr|default_if_none:"-"|unlocalize}} - {{parcel.flrstck_nnr|default_if_none:"-"|unlocalize}} - - {% endfor %} - + + {% include 'konova/includes/parcels/parcel_table_content.html' %} {% endif %} diff --git a/konova/templates/konova/includes/parcels.html b/konova/templates/konova/includes/parcels/parcels.html similarity index 100% rename from konova/templates/konova/includes/parcels.html rename to konova/templates/konova/includes/parcels/parcels.html diff --git a/konova/urls.py b/konova/urls.py index d2458f50..00386a11 100644 --- a/konova/urls.py +++ b/konova/urls.py @@ -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, get_geom_parcels_content sso_client = KonovaSSOClient(SSO_SERVER, SSO_PUBLIC_KEY, SSO_PRIVATE_KEY) urlpatterns = [ @@ -40,7 +40,8 @@ urlpatterns = [ path('cl/', include("codelist.urls")), path('analysis/', include("analysis.urls")), path('api/', include("api.urls")), - path('geom//parcels', get_geom_parcels, name="geometry-parcels"), + path('geom//parcels/', get_geom_parcels, name="geometry-parcels"), + path('geom//parcels/', get_geom_parcels_content, name="geometry-parcels-content"), # Autocomplete paths for all apps path("atcmplt/eco-accounts", EcoAccountAutocomplete.as_view(), name="accounts-autocomplete"), diff --git a/konova/views.py b/konova/views.py index 2fd5ff91..db830750 100644 --- a/konova/views.py +++ b/konova/views.py @@ -115,7 +115,7 @@ def get_geom_parcels(request: HttpRequest, id: str): # HTTP code 286 states that the HTMX should stop polling for updates # https://htmx.org/docs/#polling status_code = 286 - template = "konova/includes/parcel_table.html" + template = "konova/includes/parcels/parcel_table_frame.html" geom = get_object_or_404(Geometry, id=id) parcels = geom.get_underlying_parcels() geos_geom = geom.geom @@ -133,9 +133,18 @@ def get_geom_parcels(request: HttpRequest, id: str): parcels = parcels.order_by("-municipal", "flr", "flrstck_zhlr", "flrstck_nnr") municipals = parcels.order_by("municipal").distinct("municipal").values("municipal__id") municipals = Municipal.objects.filter(id__in=municipals) + + rpp = 50 + parcels = parcels[:rpp] + next_page = 1 + if len(parcels) < rpp: + next_page = None + context = { "parcels": parcels, "municipals": municipals, + "geom_id": str(id), + "next_page": next_page, } html = render_to_string(template, context, request) return HttpResponse(html, status=status_code) @@ -143,6 +152,36 @@ def get_geom_parcels(request: HttpRequest, id: str): return HttpResponse(None, status=404) +@login_required +def get_geom_parcels_content(request:HttpRequest, id: str, page: int): + if page < 0: + raise AssertionError("Parcel page can not be negative") + + # HTTP code 286 states that the HTMX should stop polling for updates + # https://htmx.org/docs/#polling + status_code = 286 + template = "konova/includes/parcels/parcel_table_content.html" + geom = get_object_or_404(Geometry, id=id) + parcels = geom.get_underlying_parcels() + + parcels = parcels.order_by("-municipal", "flr", "flrstck_zhlr", "flrstck_nnr") + rpp = 50 + from_p = rpp * (page-1) + to_p = rpp * (page) + next_page = page + 1 + parcels = parcels[from_p:to_p] + if len(parcels) < rpp: + next_page = None + + context = { + "parcels": parcels, + "geom_id": str(id), + "next_page": next_page, + } + html = render_to_string(template, context, request) + return HttpResponse(html, status=status_code) + + def get_404_view(request: HttpRequest, exception=None): """ Returns a 404 handling view diff --git a/locale/de/LC_MESSAGES/django.mo b/locale/de/LC_MESSAGES/django.mo index 9626e763ea04a135d76675baf28ba22d85ea7eea..4557506492ae0c22aef1fdb700430c20118e8ffa 100644 GIT binary patch delta 11797 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 diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po index 2a78deb7..35ee2c5c 100644 --- a/locale/de/LC_MESSAGES/django.po +++ b/locale/de/LC_MESSAGES/django.po @@ -26,7 +26,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-04-19 13:28+0200\n" +"POT-Creation-Date: 2022-04-21 14:16+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1582,7 +1582,7 @@ msgid "Search for file number" msgstr "Nach Aktenzeichen suchen" #: konova/filters/mixins.py:85 -#: konova/templates/konova/includes/parcel_table.html:13 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:13 msgid "District" msgstr "Kreis" @@ -1595,7 +1595,7 @@ msgid "Search for parcel gmrkng" msgstr "Nach Gemarkung suchen" #: konova/filters/mixins.py:111 -#: konova/templates/konova/includes/parcel_table.html:34 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:34 msgid "Parcel" msgstr "Flur" @@ -1604,7 +1604,7 @@ msgid "Search for parcel" msgstr "Nach Flur suchen" #: konova/filters/mixins.py:124 -#: konova/templates/konova/includes/parcel_table.html:35 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:35 msgid "Parcel counter" msgstr "Flurstückzähler" @@ -1613,7 +1613,7 @@ msgid "Search for parcel counter" msgstr "Nach Flurstückzähler suchen" #: konova/filters/mixins.py:138 -#: konova/templates/konova/includes/parcel_table.html:36 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:36 msgid "Parcel number" msgstr "Flurstücknenner" @@ -1748,33 +1748,37 @@ msgstr "" msgid "English" msgstr "" -#: konova/templates/konova/includes/parcel_table.html:5 +#: konova/templates/konova/includes/parcels/parcel_table_content.html:18 +msgid "Show more..." +msgstr "Mehr anzeigen..." + +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:5 msgid "Parcels can not be calculated, since no geometry is given." msgstr "" "Flurstücke können nicht berechnet werden, da keine Geometrie eingegeben " "wurde." -#: konova/templates/konova/includes/parcel_table.html:11 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:11 msgid "Municipal" msgstr "Gemeinde" -#: konova/templates/konova/includes/parcel_table.html:12 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:12 msgid "Municipal key" msgstr "Gemeindeschlüssel" -#: konova/templates/konova/includes/parcel_table.html:14 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:14 msgid "District key" msgstr "Kreisschlüssel" -#: konova/templates/konova/includes/parcel_table.html:32 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:32 msgid "Parcel group" msgstr "Gemarkung" -#: konova/templates/konova/includes/parcel_table.html:33 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:33 msgid "Parcel group key" msgstr "Gemarkungsschlüssel" -#: konova/templates/konova/includes/parcels.html:7 +#: konova/templates/konova/includes/parcels/parcels.html:7 msgid "Spatial reference" msgstr "Raumreferenz"