summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/views/survex.py7
-rw-r--r--core/views/uploads.py8
-rw-r--r--parsers/scans.py20
3 files changed, 29 insertions, 6 deletions
diff --git a/core/views/survex.py b/core/views/survex.py
index c07ce2d..610ee47 100644
--- a/core/views/survex.py
+++ b/core/views/survex.py
@@ -3,6 +3,7 @@ import os
import datetime
import difflib
from pathlib import Path
+import socket
from django import forms
from django.http import HttpResponseRedirect, HttpResponse, Http404
@@ -165,7 +166,11 @@ class SvxForm(forms.Form):
res = fout.write("\n")
fout.close()
- only_commit(fname, f"Online survex edit: {self.data['filename']}.svx")
+ if socket.gethostname() == "expo":
+ comment = f"Online survex edit: {self.data['filename']}.svx"
+ else:
+ comment = f"Online survex edit: {self.data['filename']}.svx on dev machine '{socket.gethostname()}' "
+ only_commit(fname, comment)
return "SAVED and committed to git"
diff --git a/core/views/uploads.py b/core/views/uploads.py
index 3a7e67b..490b432 100644
--- a/core/views/uploads.py
+++ b/core/views/uploads.py
@@ -1,4 +1,4 @@
-import re, os
+import re, os, socket
import subprocess
import json
import settings
@@ -270,7 +270,10 @@ def scanupload(request, path=None):
print(message)
return render(request,'errors/generic.html', {'message': message})
else:
- dr_commit = subprocess.run([git, "commit", "-m", f'JSON update for wallet {wallet}'], cwd=destfolder, capture_output=True, text=True)
+ if socket.gethostname() != "expo":
+ comment = f"on dev machine '{socket.gethostname()}' "
+
+ dr_commit = subprocess.run([git, "commit", "-m", f'JSON update for wallet {wallet} {comment}'], cwd=destfolder, capture_output=True, text=True)
# This produces return code = 1 if it commits OK
if dr_commit.returncode != 0:
msgdata = 'Ask a nerd to fix this.\n\n' + dr_commit.stderr + '\n\n' + dr_commit.stdout + '\n\nreturn code: ' + str(dr_commit.returncode)
@@ -441,6 +444,7 @@ def scanupload(request, path=None):
chkpland = ""
svxfiles = []
checked = {}
+ context = {}
if waldata:
if not waldata["people"]:
waldata["people"]=["NOBODY"]
diff --git a/parsers/scans.py b/parsers/scans.py
index 10c659f..b18dd64 100644
--- a/parsers/scans.py
+++ b/parsers/scans.py
@@ -110,11 +110,25 @@ def load_all_scans():
CheckEmptyPeople(wallet)
wallet.save()
LoadListScansFile(wallet)
-
-
+
+
else:
# but We should load all the scans, even for nonstandard names.
print(f'\n - IGNORE {walletname} - {fpath}')
-
+
+ # but we also need to check if JSON exists, even if there are no uploaded scan files
+ contents_path = Path(settings.DRAWINGS_DATA, "walletjson")
+ for yeardir in contents_path.iterdir():
+ if yeardir.is_dir():
+ for walletpath in yeardir.iterdir():
+ if Path(walletpath, contentsjson).is_file():
+ walletname = walletpath.name
+ wallet, created = Wallet.objects.update_or_create(walletname=walletname)
+ if created:
+ print(f"\n{walletname} created: only JSON, no actual uploaded scan files.", end=' ')
+ CheckEmptyDate(wallet)
+ CheckEmptyPeople(wallet)
+ wallet.save()
+
print("", flush=True)