forked from expo/troggle
Bug fixes
This commit is contained in:
parent
6bdd9be092
commit
251e3bf844
@ -1,6 +1,8 @@
|
|||||||
import re, os
|
import re, os
|
||||||
import subprocess
|
import subprocess
|
||||||
import json
|
import json
|
||||||
|
import settings
|
||||||
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
from django import forms
|
from django import forms
|
||||||
@ -18,6 +20,7 @@ from troggle.parsers.imports import import_caves, import_people, import_surveysc
|
|||||||
from troggle.parsers.imports import import_logbooks, import_QMs, import_drawingsfiles, import_survex
|
from troggle.parsers.imports import import_logbooks, import_QMs, import_drawingsfiles, import_survex
|
||||||
from troggle.parsers.scans import wallet_blank_json, wallet_blank_html, contentsjson, indexhtml
|
from troggle.parsers.scans import wallet_blank_json, wallet_blank_html, contentsjson, indexhtml
|
||||||
# from databaseReset import reinit_db # don't do this. databaseRest runs code *at import time*
|
# from databaseReset import reinit_db # don't do this. databaseRest runs code *at import time*
|
||||||
|
from troggle.core.models.troggle import DataIssue
|
||||||
from troggle.core.models.troggle import Expedition, Person, PersonExpedition
|
from troggle.core.models.troggle import Expedition, Person, PersonExpedition
|
||||||
from troggle.core.models.caves import LogbookEntry, QM, Cave, PersonTrip
|
from troggle.core.models.caves import LogbookEntry, QM, Cave, PersonTrip
|
||||||
from troggle.core.models.survex import DrawingFile
|
from troggle.core.models.survex import DrawingFile
|
||||||
@ -77,7 +80,8 @@ def scanupload(request, wallet=None):
|
|||||||
|
|
||||||
if int(wnumber) == 0:
|
if int(wnumber) == 0:
|
||||||
prev = f'{int(wnumber):02d}'
|
prev = f'{int(wnumber):02d}'
|
||||||
|
|
||||||
|
wurl = f"/scanupload/{wallet}"
|
||||||
wallet = wallet.replace(':','#')
|
wallet = wallet.replace(':','#')
|
||||||
dirpath = Path(settings.SURVEY_SCANS, year, wallet)
|
dirpath = Path(settings.SURVEY_SCANS, year, wallet)
|
||||||
contents_path = dirpath / contentsjson
|
contents_path = dirpath / contentsjson
|
||||||
@ -87,7 +91,7 @@ def scanupload(request, wallet=None):
|
|||||||
|
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
form = FilesForm(request.POST,request.FILES)
|
form = FilesForm(request.POST,request.FILES)
|
||||||
print(f'! - FilesForm POSTED')
|
#print(f'! - FilesForm POSTED')
|
||||||
|
|
||||||
if form.is_valid():
|
if form.is_valid():
|
||||||
f = request.FILES["uploadfiles"]
|
f = request.FILES["uploadfiles"]
|
||||||
@ -144,10 +148,13 @@ def scanupload(request, wallet=None):
|
|||||||
except:
|
except:
|
||||||
message = f"! Failed to load {contents_path} JSON file"
|
message = f"! Failed to load {contents_path} JSON file"
|
||||||
print(message)
|
print(message)
|
||||||
DataIssue.objects.create(parser='Scans', message=message)
|
DataIssue.objects.create(parser='scans', message=message, url=wurl) # set URL to this wallet folder
|
||||||
raise
|
raise
|
||||||
if not waldata["people"]:
|
if not waldata["people"]:
|
||||||
waldata["people"]=["NOBODY"]
|
waldata["people"]=["NOBODY"]
|
||||||
|
|
||||||
|
cave =""
|
||||||
|
psg = ""
|
||||||
if waldata["cave"]:
|
if waldata["cave"]:
|
||||||
cave = waldata["cave"]
|
cave = waldata["cave"]
|
||||||
if waldata["name"]:
|
if waldata["name"]:
|
||||||
@ -155,6 +162,13 @@ def scanupload(request, wallet=None):
|
|||||||
if waldata["survex file"]:
|
if waldata["survex file"]:
|
||||||
if not isinstance(waldata["survex file"], list):
|
if not isinstance(waldata["survex file"], list):
|
||||||
waldata["survex file"] = [waldata["survex file"]]
|
waldata["survex file"] = [waldata["survex file"]]
|
||||||
|
|
||||||
|
for svx in waldata["survex file"]:
|
||||||
|
print(f'{svx}')
|
||||||
|
if not (Path(settings.SURVEX_DATA) / svx).is_file():
|
||||||
|
message = f"! Incorrect survex file in wallet data: {svx} not found in LOSER repo"
|
||||||
|
print(message)
|
||||||
|
DataIssue.objects.create(parser='scans', message=message, url=wurl) # set URL to this wallet folder
|
||||||
|
|
||||||
|
|
||||||
context = {'year': year, 'prev': prev, 'next': next, 'prevy': prevy, 'nexty': nexty,
|
context = {'year': year, 'prev': prev, 'next': next, 'prevy': prevy, 'nexty': nexty,
|
||||||
@ -265,7 +279,7 @@ def dwgupload(request, folder=None, gitdisable='no'):
|
|||||||
'''
|
'''
|
||||||
if name in [ '.gitignore', ]:
|
if name in [ '.gitignore', ]:
|
||||||
return False
|
return False
|
||||||
if Path(name).suffix.lower() in ['.xml', '.th', '.th2', '', '.svg', '.txt', '.jpg', '.jpeg', '.png', '.pdf']:
|
if Path(name).suffix.lower() in ['.xml', '.th', '.th2', '', '.svg', '.txt', '.jpg', '.jpeg', '.png', '.pdf', '.topo']:
|
||||||
return True # dangerous, we should check the actual file binary signature
|
return True # dangerous, we should check the actual file binary signature
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
@ -33,19 +33,25 @@ def parseCaveQMs(cave,inputFile):
|
|||||||
try:
|
try:
|
||||||
steinBr=Cave.objects.get(official_name="Steinbrückenhöhle")
|
steinBr=Cave.objects.get(official_name="Steinbrückenhöhle")
|
||||||
except Cave.DoesNotExist:
|
except Cave.DoesNotExist:
|
||||||
print("Steinbruckenhoehle is not in the database. Please run parsers.")
|
message = f' ! - {qmPath} Steinbruckenhoehle is not in the database. Please run cave parser'
|
||||||
|
print(message)
|
||||||
|
DataIssue.objects.create(parser='QMs', message=message)
|
||||||
return
|
return
|
||||||
elif cave=='234-Hauch':
|
elif cave=='234-Hauch':
|
||||||
try:
|
try:
|
||||||
hauchHl=Cave.objects.get(official_name="Hauchhöhle")
|
hauchHl=Cave.objects.get(official_name="Hauchhöhle")
|
||||||
except Cave.DoesNotExist:
|
except Cave.DoesNotExist:
|
||||||
print("Hauchhoehle is not in the database. Please run parsers.")
|
message = f' ! - {qmPath} Hauchhoehle is not in the database. Please run cave parser'
|
||||||
|
print(message)
|
||||||
|
DataIssue.objects.create(parser='QMs', message=message)
|
||||||
return
|
return
|
||||||
elif cave =='161-KH':
|
elif cave =='161-KH':
|
||||||
try:
|
try:
|
||||||
kh=Cave.objects.get(official_name="Kaninchenhöhle")
|
kh=Cave.objects.get(official_name="Kaninchenhöhle")
|
||||||
except Cave.DoesNotExist:
|
except Cave.DoesNotExist:
|
||||||
print("KH is not in the database. Please run parsers.")
|
message = f' ! - {qmPath} KH is not in the database. Please run cave parser'
|
||||||
|
print(message)
|
||||||
|
DataIssue.objects.create(parser='QMs', message=message)
|
||||||
parse_KH_QMs(kh, inputFile=inputFile)
|
parse_KH_QMs(kh, inputFile=inputFile)
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -103,9 +109,14 @@ def parseCaveQMs(cave,inputFile):
|
|||||||
newQM.save()
|
newQM.save()
|
||||||
|
|
||||||
except KeyError: #check on this one
|
except KeyError: #check on this one
|
||||||
|
message = f' ! - {qmPath} KeyError {str(line)} '
|
||||||
|
print(message)
|
||||||
|
DataIssue.objects.create(parser='QMs', message=message)
|
||||||
continue
|
continue
|
||||||
except IndexError:
|
except IndexError:
|
||||||
print("Index error in " + str(line))
|
message = f' ! - {qmPath} IndexError {str(line)} '
|
||||||
|
print(message)
|
||||||
|
DataIssue.objects.create(parser='QMs', message=message)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
def parse_KH_QMs(kh, inputFile):
|
def parse_KH_QMs(kh, inputFile):
|
||||||
|
@ -105,6 +105,7 @@ def load_all_scans():
|
|||||||
SingleScan.objects.all().delete()
|
SingleScan.objects.all().delete()
|
||||||
Wallet.objects.all().delete()
|
Wallet.objects.all().delete()
|
||||||
print(' - deleting all scansFolder and scansSingle objects')
|
print(' - deleting all scansFolder and scansSingle objects')
|
||||||
|
DataIssue.objects.filter(parser='scans').delete()
|
||||||
|
|
||||||
# first do the smkhs (large kh survey scans) directory
|
# first do the smkhs (large kh survey scans) directory
|
||||||
manywallets_smkhs = Wallet(fpath=os.path.join(settings.SURVEY_SCANS, "../surveys/smkhs"), walletname="smkhs")
|
manywallets_smkhs = Wallet(fpath=os.path.join(settings.SURVEY_SCANS, "../surveys/smkhs"), walletname="smkhs")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user