mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2025-12-15 21:17:07 +00:00
begun to do fields, blue
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import re
|
||||
from pathlib import Path
|
||||
|
||||
import django.forms as forms
|
||||
@@ -23,6 +24,38 @@ is 'katastered', ie.e moves from an informal number, such as
|
||||
"""
|
||||
|
||||
def kataster(request, slug):
|
||||
"""Create the page which analyses how to rename a cave and all the files from the unofficial_number
|
||||
identifier, e.g. 1623-2023-mg-03 to the kataster number e.g. 1623-999
|
||||
"""
|
||||
def do_file_finding():
|
||||
|
||||
global cavefilename, cave_data, entrance_data, loser_name, loser_data
|
||||
|
||||
cavefilename = str(cave) + ".html"
|
||||
|
||||
cave_data = Path( "cave_data", cavefilename )
|
||||
if not (settings.CAVEDESCRIPTIONS / cavefilename).is_file: # settings.EXPOWEB / cave_data
|
||||
cave_data = "does not exist"
|
||||
|
||||
ent_dir = settings.ENTRANCEDESCRIPTIONS # settings.EXPOWEB / "entrance_data"
|
||||
|
||||
entrance_data = []
|
||||
for ent in ent_dir.iterdir():
|
||||
if str(ent.name).startswith(str(cave)):
|
||||
print(ent.name)
|
||||
entrance_data.append("entrance_data/"+ent.name)
|
||||
|
||||
loser_name = f"caves-{str(cave.areacode)}/{str(cave.unofficial_number)}"
|
||||
loser_dir = settings.SURVEX_DATA / loser_name
|
||||
loser_data = []
|
||||
if (loser_dir).is_dir():
|
||||
print(loser_dir)
|
||||
for svx in loser_dir.iterdir():
|
||||
print(svx)
|
||||
loser_data.append(Path(loser_dir , svx).name)
|
||||
|
||||
|
||||
|
||||
if cave := get_cave_from_slug(slug.lower()):
|
||||
pass
|
||||
elif cave := get_cave_from_slug(slug.upper()):
|
||||
@@ -31,29 +64,25 @@ def kataster(request, slug):
|
||||
return HttpResponseRedirect("/caves")
|
||||
|
||||
knum = 9999
|
||||
filename = str(cave) + ".html"
|
||||
|
||||
cave_data = Path( "cave_data", filename )
|
||||
if not (settings.EXPOWEB / cave_data).is_file:
|
||||
cave_data = "does not exist"
|
||||
do_file_finding()
|
||||
|
||||
ent_dir = settings.EXPOWEB / "entrance_data"
|
||||
try:
|
||||
# this is a python generator idiom.
|
||||
# see https://realpython.com/introduction-to-python-generators/
|
||||
with open(settings.CAVEDESCRIPTIONS / cavefilename, 'r') as f:
|
||||
for line in f:
|
||||
if match := re.search(r'<entranceslug>(.*?)</entranceslug>', line):
|
||||
entrance = match.group(1)
|
||||
print(entrance)
|
||||
|
||||
except PermissionError as e:
|
||||
msg=f"CANNOT save this file.\nPERMISSIONS incorrectly set on server for this file {filepath}. Ask a nerd to fix this: {e}"
|
||||
print(msg)
|
||||
raise
|
||||
except Exception as e:
|
||||
msg=f"CANNOT write this file {filepath}. Ask a nerd to fix this: {e}"
|
||||
print(msg)
|
||||
|
||||
entrance_data = []
|
||||
for ent in ent_dir.iterdir():
|
||||
if str(ent.name).startswith(str(cave)):
|
||||
print(ent.name)
|
||||
entrance_data.append("entrance_data/"+ent.name)
|
||||
|
||||
loser_name = f"caves-{str(cave.areacode)}/{str(cave.unofficial_number)}"
|
||||
loser_dir = settings.SURVEX_DATA / loser_name
|
||||
loser_data = []
|
||||
if (loser_dir).is_dir():
|
||||
print(loser_dir)
|
||||
for svx in loser_dir.iterdir():
|
||||
print(svx)
|
||||
loser_data.append(Path(loser_dir , svx).name)
|
||||
|
||||
if request.method == "POST": # If the form has been submitted...
|
||||
form = KatasterForm(request.POST) # A form bound to the POST data
|
||||
if form.is_valid():
|
||||
|
||||
Reference in New Issue
Block a user