summaryrefslogtreecommitdiffstats
path: root/core/models
diff options
context:
space:
mode:
authorPhilip Sargent <philip.sargent@klebos.com>2021-05-05 00:35:10 +0100
committerPhilip Sargent <philip.sargent@klebos.com>2021-05-05 00:35:10 +0100
commitd374779c473a65fca4740d83942bae24c10f683d (patch)
tree76805079a17b1570a87c996665b9748c3c9fd1f8 /core/models
parent44b6770b6a562bb8a7d453ddfd1b0b547013a958 (diff)
downloadtroggle-d374779c473a65fca4740d83942bae24c10f683d.tar.gz
troggle-d374779c473a65fca4740d83942bae24c10f683d.tar.bz2
troggle-d374779c473a65fca4740d83942bae24c10f683d.zip
dwg upload and django admin extra search
Diffstat (limited to 'core/models')
-rw-r--r--core/models/caves.py16
-rw-r--r--core/models/survex.py53
2 files changed, 27 insertions, 42 deletions
diff --git a/core/models/caves.py b/core/models/caves.py
index 259854d..7bbe21b 100644
--- a/core/models/caves.py
+++ b/core/models/caves.py
@@ -432,7 +432,7 @@ class LogbookEntry(TroggleModel):
# #return super(LogbookEntry, self).__init__(*args, **kwargs) # works in py3.5
# #return TroggleModel.__init__(*args, **kwargs) # fails in py3.5, runtime fail in 3.8
- def cave(self): # Why didn't he just make this a foreign key to Cave ? Replaces __egtattrribute__ sillyness.
+ def cave(self): # Why didn't he just make this a foreign key to Cave ? Replaces __getattrribute__ sillyness.
c = CaveSlug.objects.get(slug=self.cave_slug, primary=True).cave
return c
@@ -540,13 +540,13 @@ class PersonTrip(TroggleModel):
def __str__(self):
return f'{self.personexpedition} ({self.logbook_entry.date})'
-scansFileStorage = FileSystemStorage(location=settings.SURVEY_SCANS, base_url=settings.SURVEYS_URL)
-def get_scan_path(instance, filename):
- year=instance.survey.expedition.year
- number=str(instance.survey.wallet_number)
- if str(instance.survey.wallet_letter) != "None":
- number=str(instance.survey.wallet_letter) + number #two strings formatting because convention is 2009#01 or 2009#X01
- return os.path.join('./',year,year+r'#'+number,str(instance.contents)+str(instance.number_in_wallet)+r'.jpg')
+# scansFileStorage = FileSystemStorage(location=settings.SURVEY_SCANS, base_url=settings.SURVEYS_URL)
+# def get_scan_path(instance, filename):
+ # year=instance.survey.expedition.year
+ # number=str(instance.survey.wallet_number)
+ # if str(instance.survey.wallet_letter) != "None":
+ # number=str(instance.survey.wallet_letter) + number #two strings formatting because convention is 2009#01 or 2009#X01
+ # return os.path.join('./',year,year+r'#'+number,str(instance.contents)+str(instance.number_in_wallet)+r'.jpg')
Gcavelookup = None
Gcave_count = None
diff --git a/core/models/survex.py b/core/models/survex.py
index 50173f4..1273a8b 100644
--- a/core/models/survex.py
+++ b/core/models/survex.py
@@ -15,10 +15,10 @@ class SurvexDirectory(models.Model):
class Meta:
ordering = ('id',)
+ verbose_name_plural = "Survex directories"
- # Don't change from the default as that breaks troggle webpages and internal referencing!
- # def __str__(self):
- # return "[SurvexDirectory:"+str(self.path) + "-" + str(self.primarysurvexfile.path) + "-" + str(self.cave)+"]"
+ def __str__(self):
+ return "[SurvexDirectory:"+str(self.path) + "-" + str(self.primarysurvexfile.path) + "-" + str(self.cave)+"]"
class SurvexFile(models.Model):
@@ -53,7 +53,9 @@ class SurvexFile(models.Model):
survexdirectory.save()
self.survexdirectory = survexdirectory
self.save()
-
+
+ def __str__(self):
+ return self.path
class SurvexStationLookUpManager(models.Manager):
def lookup(self, name):
@@ -122,11 +124,11 @@ class SurvexBlock(models.Model):
class Meta:
ordering = ('id',)
- # Don't change from the original as that breaks troggle webpages and internal referencing!
- # def __str__(self):
- # return "[SurvexBlock:"+ str(self.name) + "-path:" + \
- # str(self.survexpath) + "-cave:" + \
- # str(self.cave) + "]"
+ def __str__(self):
+ return "[SurvexBlock:"+ str(self.name) + "-path:" + \
+ str(self.survexpath) + "-cave:" + \
+ str(self.cave) + "]"
+
def __str__(self):
return self.name and str(self.name) or 'no name'
@@ -134,40 +136,19 @@ class SurvexBlock(models.Model):
return True
def GetPersonroles(self):
- '''To do: excise the 'role' bit of this while retaining personrole
- which is used in some later logic
-
+ '''
But apparently never used !?
'''
res = [ ]
for personrole in self.survexpersonrole_set.order_by('personexpedition'):
- # if res and res[-1]['person'] == personrole.personexpedition.person:
- # res[-1]['roles'] += ", " + str(personrole.nrole)
- # else:
- # res.append({'person':personrole.personexpedition.person, 'expeditionyear':personrole.personexpedition.expedition.year, 'roles':str(personrole.nrole)})
res.append({'person':personrole.personexpedition.person, 'expeditionyear':personrole.personexpedition.expedition.year})
return res
def DayIndex(self):
return list(self.expeditionday.survexblock_set.all()).index(self)
-#
-# member of a SurvexBlock
-#
-# ROLE_CHOICES = (
- # ('insts','Instruments'),
- # ('dog','Other'),
- # ('notes','Notes'),
- # ('pics','Pictures'),
- # ('tape','Tape measure'),
- # ('useless','Useless'),
- # ('helper','Helper'),
- # ('disto','Disto'),
- # ('consultant','Consultant'),
- # )
class SurvexPersonRole(models.Model):
survexblock = models.ForeignKey('SurvexBlock',on_delete=models.CASCADE)
-# nrole = models.CharField(choices=ROLE_CHOICES, max_length=200, blank=True, null=True)
# increasing levels of precision
personname = models.CharField(max_length=100)
person = models.ForeignKey('Person', blank=True, null=True,on_delete=models.SET_NULL)
@@ -176,7 +157,7 @@ class SurvexPersonRole(models.Model):
expeditionday = models.ForeignKey("ExpeditionDay", null=True,on_delete=models.SET_NULL)
def __str__(self):
- return str(self.person) + " - " + str(self.survexblock) + " - " + str(self.nrole)
+ return str(self.person) + " - " + str(self.survexblock)
class Wallet(models.Model):
fpath = models.CharField(max_length=200)
@@ -189,7 +170,7 @@ class Wallet(models.Model):
return urljoin(settings.URL_ROOT, reverse('singlewallet', kwargs={"path":re.sub("#", "%23", self.walletname)}))
def __str__(self):
- return str(self.walletname) + " (Survey Scans Folder)"
+ return str(self.walletname) + " (Wallet)"
class SingleScan(models.Model):
ffile = models.CharField(max_length=200)
@@ -216,4 +197,8 @@ class DrawingFile(models.Model):
survexfiles = models.ManyToManyField("SurvexFile") # direct link to SVX files - not populated yet
class Meta:
- ordering = ('dwgpath',) \ No newline at end of file
+ ordering = ('dwgpath',)
+
+ def __str__(self):
+ return "Drawing File: " + str(self.dwgname) + " (" + str(self.filesize) + " bytes)"
+ \ No newline at end of file