summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Sargent <philip.sargent@klebos.com>2020-07-23 02:16:08 +0100
committerPhilip Sargent <philip.sargent@klebos.com>2020-07-23 02:16:08 +0100
commit809633bdd3c70159312a9b22de54dfdeffd325e0 (patch)
tree87e2cf369df0f9c7387d011c08fe2ecbe7e2206b
parent64727e0d3a924bc1ba592b2d3d7be10bc0c0898b (diff)
downloadtroggle-809633bdd3c70159312a9b22de54dfdeffd325e0.tar.gz
troggle-809633bdd3c70159312a9b22de54dfdeffd325e0.tar.bz2
troggle-809633bdd3c70159312a9b22de54dfdeffd325e0.zip
Fixed QMs in Admin control panel &remv. OtherCave
-rw-r--r--core/TESTS/tests.py2
-rw-r--r--core/admin.py10
-rw-r--r--core/models_caves.py15
-rw-r--r--parsers/logbooks.py28
4 files changed, 27 insertions, 28 deletions
diff --git a/core/TESTS/tests.py b/core/TESTS/tests.py
index 98b3215..9ec0c57 100644
--- a/core/TESTS/tests.py
+++ b/core/TESTS/tests.py
@@ -45,7 +45,7 @@ class SimpleTest(SimpleTestCase):
from django.template.defaultfilters import slugify
from django.utils.timezone import get_current_timezone, make_aware
from troggle.core.models import DataIssue, Expedition
- from troggle.core.models_caves import Cave, OtherCaveName, LogbookEntry, PersonTrip
+ from troggle.core.models_caves import Cave, LogbookEntry, PersonTrip
from parsers.people import GetPersonExpeditionNameLookup
def test_import_core_views_caves(self):
from django.http import HttpResponse, HttpResponseRedirect
diff --git a/core/admin.py b/core/admin.py
index 35cddb7..26377b5 100644
--- a/core/admin.py
+++ b/core/admin.py
@@ -6,7 +6,7 @@ from django.core import serializers
from troggle.core.views_other import downloadLogbook
from troggle.core.models import Person, PersonExpedition, Expedition, DataIssue
-from troggle.core.models_caves import Cave, Area, Entrance, CaveAndEntrance, OtherCaveName, LogbookEntry, PersonTrip, QM
+from troggle.core.models_caves import Cave, Area, Entrance, CaveAndEntrance, LogbookEntry, PersonTrip, QM
from troggle.core.models_survex import SurvexBlock, SurvexPersonRole, SurvexStation, ScansFolder, SingleScan
@@ -30,9 +30,9 @@ class SurvexBlockAdmin(TroggleModelAdmin):
inlines = (RoleInline,)
-class OtherCaveInline(admin.TabularInline):
- model = OtherCaveName
- extra = 1
+# class OtherCaveInline(admin.TabularInline):
+ # model = OtherCaveName
+ # extra = 1
class SurveyAdmin(TroggleModelAdmin):
@@ -98,7 +98,7 @@ class PersonExpeditionAdmin(TroggleModelAdmin):
class CaveAdmin(TroggleModelAdmin):
search_fields = ('official_name','kataster_number','unofficial_number')
- inlines = (OtherCaveInline,)
+ #inlines = (OtherCaveInline,)
extra = 4
diff --git a/core/models_caves.py b/core/models_caves.py
index b872489..17b372a 100644
--- a/core/models_caves.py
+++ b/core/models_caves.py
@@ -202,11 +202,11 @@ class Cave(TroggleModel):
pass
return lowestareas[0]
-class OtherCaveName(TroggleModel):
- name = models.CharField(max_length=160)
- cave = models.ForeignKey(Cave,on_delete=models.CASCADE)
- def __str__(self):
- return str(self.name)
+# class OtherCaveName(TroggleModel):
+ # name = models.CharField(max_length=160)
+ # cave = models.ForeignKey(Cave,on_delete=models.CASCADE)
+ # def __str__(self):
+ # return str(self.name)
class EntranceSlug(models.Model):
entrance = models.ForeignKey('Entrance',on_delete=models.CASCADE)
@@ -503,7 +503,10 @@ class QM(TroggleModel):
return "%s %s" % (self.code(), self.grade)
def code(self):
- return "%s-%s-%s" % (str(self.found_by.cave)[6:], self.found_by.date.year, self.number)
+ if self.found_by:
+ return "%s-%s-%s" % (str(self.found_by.cave)[6:], self.found_by.date.year, self.number)
+ else:
+ return "%s" % (self.number)
def get_absolute_url(self):
#return settings.URL_ROOT + '/cave/' + self.found_by.cave.kataster_number + '/' + str(self.found_by.date.year) + '-' + '%02d' %self.number
diff --git a/parsers/logbooks.py b/parsers/logbooks.py
index 2ecef42..a8f0cca 100644
--- a/parsers/logbooks.py
+++ b/parsers/logbooks.py
@@ -11,7 +11,7 @@ from django.template.defaultfilters import slugify
from django.utils.timezone import get_current_timezone, make_aware
from troggle.core.models import DataIssue, Expedition
-from troggle.core.models_caves import Cave, OtherCaveName, LogbookEntry, PersonTrip, GetCaveLookup
+from troggle.core.models_caves import Cave, LogbookEntry, PersonTrip, GetCaveLookup
from parsers.people import GetPersonExpeditionNameLookup
from utils import save_carefully
@@ -50,35 +50,31 @@ def GetTripPersons(trippeople, expedition, logtime_underground):
return res, author
def GetTripCave(place):
- #need to be fuzzier about matching here. Already a very slow function...
- # print "Getting cave for " , place
try:
katastNumRes=[]
katastNumRes=list(Cave.objects.filter(kataster_number=int(place)))
except ValueError:
- pass
+ message = " ! - ValueError on finding place " + str(place) + " entered. " + tripdate + " - " + year
+ DataIssue.objects.create(parser='logbooks', message=message)
+ logdataissues["author"]=message
officialNameRes=list(Cave.objects.filter(official_name=place))
tripCaveRes=officialNameRes+katastNumRes
if len(tripCaveRes)==1:
- # print "Place " , place , "entered as" , tripCaveRes[0]
return tripCaveRes[0]
-
- elif OtherCaveName.objects.filter(name=place):
- tripCaveRes=OtherCaveName.objects.filter(name__icontains=place)[0].cave
- # print "Place " , place , "entered as" , tripCaveRes
- return tripCaveRes
-
elif len(tripCaveRes)>1:
- print(("Ambiguous place " + str(place) + " entered. Choose from " + str(tripCaveRes)))
- correctIndex=eval(input("type list index of correct cave"))
- return tripCaveRes[correctIndex]
+ message = " ! - Ambiguous place " + str(place) + " entered. " + tripdate + " - " + year + " " + str(tripCaveRes)
+ DataIssue.objects.create(parser='logbooks', message=message)
+ logdataissues["author"]=message
+ return tripCaveRes[0]
else:
- print(("No cave found for place " , place))
+ print((" " , place))
+ message = " ! - No cave found for place:" + str(place) + tripdate + " - " + year
+ DataIssue.objects.create(parser='logbooks', message=message)
+ logdataissues["author"]=message
return None
-
logentries = [] # the entire logbook for one year is a single object: a list of entries
noncaveplaces = [ "QMplaceholder", "Journey", "Loser Plateau", "UNKNOWN", 'plateau',
'base camp', 'basecamp', 'top camp', 'topcamp' ]