diff --git a/core/models/survex.py b/core/models/survex.py
index 6d662e9..b30f231 100644
--- a/core/models/survex.py
+++ b/core/models/survex.py
@@ -114,7 +114,7 @@ class SurvexBlock(models.Model):
survexfile = models.ForeignKey("SurvexFile", blank=True, null=True,on_delete=models.SET_NULL)
survexpath = models.CharField(max_length=200) # the path for the survex stations
- scansfolder = models.ForeignKey("Wallet", null=True,on_delete=models.SET_NULL)
+ scanswallet = models.ForeignKey("Wallet", null=True,on_delete=models.SET_NULL)
legsall = models.IntegerField(null=True) # summary data for this block
legslength = models.FloatField(null=True)
@@ -180,24 +180,24 @@ class Wallet(models.Model):
ordering = ('walletname',)
def get_absolute_url(self):
- return urljoin(settings.URL_ROOT, reverse('scanswallet', kwargs={"path":re.sub("#", "%23", self.walletname)}))
+ return urljoin(settings.URL_ROOT, reverse('singlewallet', kwargs={"path":re.sub("#", "%23", self.walletname)}))
def __str__(self):
return str(self.walletname) + " (Survey Scans Folder)"
class SingleScan(models.Model):
- ffile = models.CharField(max_length=200)
- name = models.CharField(max_length=200)
- scansfolder = models.ForeignKey("Wallet", null=True,on_delete=models.SET_NULL)
+ ffile = models.CharField(max_length=200)
+ name = models.CharField(max_length=200)
+ wallet = models.ForeignKey("Wallet", null=True,on_delete=models.SET_NULL)
class Meta:
ordering = ('name',)
def get_absolute_url(self):
- return urljoin(settings.URL_ROOT, reverse('scansingle', kwargs={"path":re.sub("#", "%23", self.scansfolder.walletname), "file":self.name}))
+ return urljoin(settings.URL_ROOT, reverse('scansingle', kwargs={"path":re.sub("#", "%23", self.wallet.walletname), "file":self.name}))
def __str__(self):
- return "Survey Scan Image: " + str(self.name) + " in " + str(self.scansfolder)
+ return "Survey Scan Image: " + str(self.name) + " in " + str(self.wallet)
class DrawingFile(models.Model):
dwgpath = models.CharField(max_length=200)
diff --git a/core/views/surveys.py b/core/views/surveys.py
index 952aa77..56168f6 100644
--- a/core/views/surveys.py
+++ b/core/views/surveys.py
@@ -20,11 +20,11 @@ need to check if inavlid query string is invalid, or produces multiple replies
and render a user-friendly error page.
'''
-def scanswallet(request, path):
+def singlewallet(request, path):
#print [ s.walletname for s in Wallet.objects.all() ]
try:
- scansfolder = Wallet.objects.get(walletname=urlunquote(path))
- return render(request, 'scansfolder.html', { 'scansfolder':scansfolder, 'settings': settings })
+ wallet = Wallet.objects.get(walletname=urlunquote(path))
+ return render(request, 'wallet.html', { 'wallet':wallet, 'settings': settings })
except:
message = f'Scan folder error or not found \'{path}\' .'
return render(request, 'errors/generic.html', {'message': message})
@@ -33,8 +33,8 @@ def scansingle(request, path, file):
'''sends a single binary file to the user for display - browser decides how using mimetype
'''
try:
- scansfolder = Wallet.objects.get(walletname=urlunquote(path))
- singlescan = SingleScan.objects.get(scansfolder=scansfolder, name=file)
+ wallet = Wallet.objects.get(walletname=urlunquote(path))
+ singlescan = SingleScan.objects.get(wallet=wallet, name=file)
# print(" - scansingle {}:{}:{}:".format(path, file, getmimetype(file)))
return HttpResponse(content=open(singlescan.ffile,"rb"), content_type=getmimetype(file)) # any type of image
except:
@@ -42,7 +42,7 @@ def scansingle(request, path, file):
return render(request, 'errors/generic.html', {'message': message})
-def scanswallets(request):
+def allwallets(request):
manywallets = Wallet.objects.all()
return render(request, 'manywallets.html', { 'manywallets':manywallets, 'settings': settings })
diff --git a/parsers/survex.py b/parsers/survex.py
index 9686b2e..ea1e061 100644
--- a/parsers/survex.py
+++ b/parsers/survex.py
@@ -86,7 +86,7 @@ class LoadingSurvex():
"""A 'survex block' is a *begin...*end set of cave data.
A survex file can contain many begin-end blocks, which can be nested, and which can *include
other survex files.
- A 'scansfolder' is what we today call a "survey scans folder" or a "wallet".
+ A 'scanswallet' is what we today call a "survey scans folder" or a "wallet".
"""
rx_begin = re.compile(r'(?i)begin')
rx_end = re.compile(r'(?i)end$')
@@ -475,7 +475,7 @@ class LoadingSurvex():
DataIssue.objects.create(parser='survex', message=message)
manywallets = Wallet.objects.filter(walletname=refscan)
if manywallets:
- survexblock.scansfolder = manywallets[0] # this is a ForeignKey field
+ survexblock.scanswallet = manywallets[0] # this is a ForeignKey field
print(manywallets[0])
survexblock.save()
if len(manywallets) > 1:
diff --git a/parsers/surveys.py b/parsers/surveys.py
index cfe8db9..f9ca56a 100644
--- a/parsers/surveys.py
+++ b/parsers/surveys.py
@@ -58,10 +58,10 @@ def GetListDir(sdir):
return res
-def LoadListScansFile(scansfolder):
+def LoadListScansFile(wallet):
gld = [ ]
# flatten out any directories in these wallet folders - should not be any
- for (fyf, ffyf, fisdiryf) in GetListDir(scansfolder.fpath):
+ for (fyf, ffyf, fisdiryf) in GetListDir(wallet.fpath):
if fisdiryf:
gld.extend(GetListDir(ffyf))
else:
@@ -70,7 +70,7 @@ def LoadListScansFile(scansfolder):
c=0
for (fyf, ffyf, fisdiryf) in gld:
if re.search(r"\.(?:png|jpg|jpeg|pdf|svg|gif)(?i)$", fyf):
- singlescan = SingleScan(ffile=ffyf, name=fyf, scansfolder=scansfolder)
+ singlescan = SingleScan(ffile=ffyf, name=fyf, wallet=wallet)
singlescan.save()
c+=1
if c>=10:
@@ -107,35 +107,35 @@ def LoadListScans():
print("%s" % f, end=' ')
for fy, ffy, fisdiry in GetListDir(ff):
if fisdiry:
- scansfolder = Wallet(fpath=ffy, walletname=fy)
- scansfolder.save()
- LoadListScansFile(scansfolder)
+ wallet = Wallet(fpath=ffy, walletname=fy)
+ wallet.save()
+ LoadListScansFile(wallet)
# do the
elif f != "thumbs":
- scansfolder = Wallet(fpath=ff, walletname=f)
- scansfolder.save()
- LoadListScansFile(scansfolder)
+ wallet = Wallet(fpath=ff, walletname=f)
+ wallet.save()
+ LoadListScansFile(wallet)
def find_tunnel_scan(dwgfile, path):
'''Is given a line of text 'path' which may or may not contain a recognisable name of a scanned file
which we have already seen when we imported all the files we could find in the surveyscans direstories
'''
- scansfolder, scansfile = None, None
+ wallet, scansfile = None, None
mscansdir = re.search(r"(\d\d\d\d#X?\d+\w?|1995-96kh|92-94Surveybookkh|1991surveybook|smkhs)/(.*?(?:png|jpg|pdf|jpeg))$", path)
if mscansdir:
- scansfolderl = Wallet.objects.filter(walletname=mscansdir.group(1))
+ scanswalletl = Wallet.objects.filter(walletname=mscansdir.group(1))
# This should properly detect if a list of folders is returned and do something sensible, not just pick the first.
- if len(scansfolderl):
- scansfolder = scansfolderl[0]
- if len(scansfolderl) > 1:
+ if len(scanswalletl):
+ wallet = scanswalletl[0]
+ if len(scanswalletl) > 1:
message = "! More than one scan FOLDER matches filter query. [{}]: {} {} {} {}".format(scansfilel[0], mscansdir.group(1), mscansdir.group(2), dwgfile.dwgpath, path)
print(message)
DataIssue.objects.create(parser='Tunnel', message=message)
- if scansfolder:
- scansfilel = scansfolder.singlescan_set.filter(name=mscansdir.group(2))
+ if wallet:
+ scansfilel = wallet.singlescan_set.filter(name=mscansdir.group(2))
if len(scansfilel):
if len(scansfilel) > 1:
message = "! More than one image FILENAME matches filter query. [{}]: {} {} {} {}".format(scansfilel[0], mscansdir.group(1), mscansdir.group(2), dwgfile.dwgpath, path)
@@ -143,8 +143,8 @@ def find_tunnel_scan(dwgfile, path):
DataIssue.objects.create(parser='Tunnel', message=message)
scansfile = scansfilel[0]
- if scansfolder:
- dwgfile.manywallets.add(scansfolder)
+ if wallet:
+ dwgfile.manywallets.add(wallet)
if scansfile:
dwgfile.scans.add(scansfile)
diff --git a/requirements.txt b/requirements.txt
index a7a7711..cba36bf 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,8 +1,10 @@
+asgiref==3.3.4
confusable-homoglyphs==3.2.0
-Django==2.2.19
+Django==2.2.20
docutils==0.14
gunicorn==20.1.0
Pillow==5.4.1
pytz==2019.1
sqlparse==0.2.4
+typing-extensions==3.7.4.3
Unidecode==1.0.23
diff --git a/requirements3.2.txt b/requirements3.2.txt
new file mode 100644
index 0000000..06995ab
--- /dev/null
+++ b/requirements3.2.txt
@@ -0,0 +1,10 @@
+asgiref==3.3.4
+confusable-homoglyphs==3.2.0
+Django==3.2
+docutils==0.14
+gunicorn==20.1.0
+Pillow==5.4.1
+pytz==2019.1
+sqlparse==0.2.4
+typing-extensions==3.7.4.3
+Unidecode==1.0.23
diff --git a/templates/base.html b/templates/base.html
index 0ae254d..c10f2ab 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -31,7 +31,7 @@
Survex-204 |
Survex |
All Survex |
- Scans |
+ Scans |
Drawings |
290 (FGH) |
291 (GSH) |
diff --git a/templates/dwgfiles.html b/templates/dwgfiles.html
index a89bca3..d850976 100644
--- a/templates/dwgfiles.html
+++ b/templates/dwgfiles.html
@@ -17,8 +17,8 @@
{{dwgfile.npaths}} |
- {% for scansfolder in dwgfile.manywallets.all %}
- {{scansfolder.walletname}}
+ {% for scanswallet in dwgfile.manywallets.all %}
+ {{scanswallet.walletname}}
{% endfor %}
|
diff --git a/templates/expowebbase.html b/templates/expowebbase.html
index 5261e8a..097c4e0 100644
--- a/templates/expowebbase.html
+++ b/templates/expowebbase.html
@@ -17,7 +17,7 @@
{% if cavepage %}