2
0
mirror of https://expo.survex.com/repositories/troggle/.git synced 2025-12-17 11:57:04 +00:00

renaming script

This commit is contained in:
2025-01-31 19:19:04 +00:00
parent 43634fb475
commit 062ab3e5f8
2 changed files with 38 additions and 10 deletions

View File

@@ -34,14 +34,15 @@ def kataster(request, slug):
mvscript = f"cd {settings.CAVEDESCRIPTIONS }\n"
cavefilename = str(cave) + ".html"
target= f"{cave.areacode}-{str(knum)}"
cave_data = Path( "cave_data", cavefilename )
if not (settings.CAVEDESCRIPTIONS / cavefilename).is_file: # settings.EXPOWEB / cave_data
cave_data = "does not exist"
mvscript += f"mv {cavefilename} {cave.areacode}-{str(knum)}.html\n"
mvscript += f"mv {cavefilename} {target}.html\n"
ent_dir = settings.ENTRANCEDESCRIPTIONS # settings.EXPOWEB / "entrance_data"
mvscript += f"cd {settings.ENTRANCEDESCRIPTIONS }\n"
mvscript += f"\ncd {settings.ENTRANCEDESCRIPTIONS }\n"
entrance_data = []
for ent in ent_dir.iterdir():
if str(ent.name).startswith(str(cave)):
@@ -58,7 +59,21 @@ def kataster(request, slug):
print(svx)
loser_data.append(Path(loser_dir , svx).name)
return mvscript
def script_loser(knum):
global cavefilename, cave_data, entrance_data, loser_name, loser_data
target= f"caves-{cave.areacode}/{str(knum)}"
l_script = f"\ncd {settings.SURVEX_DATA}\n"
l_script +=f"mv {loser_name} {target}\n"
l_script +=f"cd {target}\n# But note that git ignores .log and .3d files\n"
for filename in loser_data:
l_script +=f"mv {filename} {filename.replace(str(cave.unofficial_number),str(knum))}\n"
return l_script
knum = 9999
@@ -95,8 +110,11 @@ def kataster(request, slug):
msg=f"CANNOT write this file {filepath}. Ask a nerd to fix this: {e}"
print(msg)
script = ""
# Restart script with POST data
script = "# Conversion script\n# When doing it by hand, it is less error-prone to do the file re-namings last,\n"
script += "# but in a script it does not matter so much, so long as everything is consistent and tested,\n"
script += "# except that reversing changes using git does not always restore directories exactly.\n\n"
script += "# Be careful with the directory names, they might not be the same on your PC as on the server\n\n"
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():
@@ -110,6 +128,9 @@ def kataster(request, slug):
form = KatasterForm()
script += do_file_finding(knum)
script += script_loser(knum)
script_rows = str(min(35,3+script.count('\n')))
return render(
request,
@@ -119,7 +140,7 @@ def kataster(request, slug):
"cave": cave, "entrances": entrances,
"cave_data": cave_data, "entrance_data": entrance_data,
"loser_name": loser_name, "loser_data": loser_data,
"knum": knum, "script": script,
"knum": knum, "script": script, "rows": script_rows,
}, )
class KatasterForm(forms.Form):