summaryrefslogtreecommitdiffstats
path: root/core/views_survex.py
diff options
context:
space:
mode:
Diffstat (limited to 'core/views_survex.py')
-rw-r--r--core/views_survex.py19
1 files changed, 16 insertions, 3 deletions
diff --git a/core/views_survex.py b/core/views_survex.py
index 3b4fe43..76b4851 100644
--- a/core/views_survex.py
+++ b/core/views_survex.py
@@ -8,7 +8,7 @@ from django.http import HttpResponseRedirect, HttpResponse
from django.shortcuts import render_to_response, render
#from django.core.context_processors import csrf
from django.template.context_processors import csrf
-
+from django.core.exceptions import ObjectDoesNotExist
from django.http import HttpResponse, Http404
import troggle.settings as settings
@@ -295,6 +295,7 @@ def identifycavedircontents(gcavedir):
# direct local non-database browsing through the svx file repositories
# perhaps should use the database and have a reload button for it
+# why is caves-1623 HARD CODED here ?! That must be wrong..
def survexcaveslist(request):
cavesdir = os.path.join(settings.SURVEX_DATA, "caves-1623")
#cavesdircontents = { }
@@ -312,6 +313,7 @@ def survexcaveslist(request):
for num, cavedir in fnumlist:
# these have sub dirs /cucc/ /arge/ /old/ but that is no reason to hide them in this webpage
+ # so these are now treated the same as 142 and 113 which also had a /cucc/ sub dir
#if cavedir in ["144", "40"]:
# continue
@@ -350,9 +352,20 @@ def survexcaveslist(request):
# doesn't use recursion. just writes it twice
# currently not showing Explorers or Titles. link test from SurvexFile page is "dates and explorers"
+# Should explicity fix the kataster number thing.
def survexcavesingle(request, survex_cave):
breload = False
- cave = Cave.objects.get(kataster_number=survex_cave)
if breload:
parsers.survex.ReloadSurvexCave(survex_cave) # does not exit now, needs re-writing to work.
- return render_to_response('svxcavesingle.html', {'settings': settings, "cave":cave })
+ try:
+ cave = Cave.objects.get(kataster_number=survex_cave)
+ return render_to_response('svxcavesingle.html', {'settings': settings, "cave":cave })
+ except ObjectDoesNotExist:
+ # can get here if the survex file is in a directory labelled with unofficial number not kataster number.
+ cave = Cave.objects.get(unofficial_number=survex_cave)
+ return render_to_response('svxcavesingle.html', {'settings': settings, "cave":cave })
+ # should produce useful error message for person trying to upload or manage survex files
+ except:
+ raise Http404()
+
+