From 3390f17aa4b96827f2bdedf7eb4eab8773e7bfa6 Mon Sep 17 00:00:00 2001 From: Philip Sargent Date: Fri, 15 Sep 2023 22:41:02 +0300 Subject: [PATCH] .3d cave file links --- core/views/caves.py | 13 +++---------- templates/cave.html | 6 +++--- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/core/views/caves.py b/core/views/caves.py index fa51263e7..ef234c14d 100644 --- a/core/views/caves.py +++ b/core/views/caves.py @@ -146,26 +146,19 @@ def entranceindex(request): ) - def cave3d(request, cave_id=""): """This is used to create a download url in templates/cave.html if anyone wants to download the .3d file The caller template tries kataster first, then unofficial_number if that kataster number does not exist but only if Cave.survex_file is non-empty - - But the template file cave.html has its own ideas about the name of the file and thus the href. Ouch. - /cave/3d/ """ try: cave = getCave(cave_id) except ObjectDoesNotExist: return HttpResponseNotFound except Cave.MultipleObjectsReturned: - # But only one might have survex data? So scan and return the first that works. - caves = getCaves(cave_id) - for c in caves: - if c.survex_file: - # exists, but may not be a valid file path to a valid .svx file in the Loser repo - return file3d(request, c, c.slug) + # should really produce a better error message. This is a failure of ambiguous aliases probably. + caves = Cave.objects.filter(url=kpath) + return render(request, "svxcaveseveral.html", {"settings": settings, "caves": caves}) else: return file3d(request, cave, cave_id) diff --git a/templates/cave.html b/templates/cave.html index 3a791daae..c1a1c01cf 100644 --- a/templates/cave.html +++ b/templates/cave.html @@ -202,10 +202,10 @@ {% if cave.survex_file %} Primary survex file for this cave
- Download .3d file caves-{{ cave.areacode }}/{% if cave.kataster_number %}{{cave.kataster_number}}{% else %}{{cave.unofficial_number}}{% endif %}/{{svx3d}}.3d + Download .3d file {% url "cave3d" cave %}
-cave ID '{{cave.reference}}'
-cave survex path '{{ cave.areacode }}/{% if cave.kataster_number %}{{cave.kataster_number}}{% else %}{{cave.unofficial_number}}{% endif %}' +cave reference '{{cave.reference}}'
+cave survex path '{{ cave.areacode }}/{% if cave.kataster_number %}{{cave.kataster_number}}{% else %}{{cave.unofficial_number}}{% endif %}/'
{% endif %} {% endblock content %}