summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/views/uploads.py33
-rw-r--r--settings.py4
-rw-r--r--templates/renameform.html37
3 files changed, 66 insertions, 8 deletions
diff --git a/core/views/uploads.py b/core/views/uploads.py
index 655738f..9fd9d44 100644
--- a/core/views/uploads.py
+++ b/core/views/uploads.py
@@ -407,7 +407,37 @@ def expofilerename(request, filepath):
and it returns control to the original wallet edit page
"""
def rotate_image():
- print("ROTATE")
+ wallet = str(Path(filepath).parent).lstrip("surveyscans/")
+ cwd = settings.SCANS_ROOT / wallet
+ print(f"ROTATE \n{cwd=} \n{filename=}")
+ mogrify = settings.MOGRIFY
+ rot = subprocess.run(
+ [mogrify, "-rotate", "90", filename], cwd=cwd, capture_output=True, text=True
+ )
+ msgdata = (
+ rot.stderr
+ + "\n"
+ + rot.stdout
+ + "\nreturn code: "
+ + str(rot.returncode)
+ )
+ message = f'! - ROTATE - Success: rotated this file {filename}.' + msgdata
+ print(message)
+ if rot.returncode != 0:
+ msgdata = (
+ "Ask a nerd to fix this.\n\n"
+ + rot.stderr
+ + "\n\n"
+ + rot.stdout
+ + "\n\nreturn code: "
+ + str(rot.returncode)
+ )
+ message = (
+ f"! - ROTATE - CANNOT blurk for this file {filename}. \n"
+ + msgdata
+ )
+ print(message)
+
return simple_get()
def simple_get():
@@ -427,6 +457,7 @@ def expofilerename(request, filepath):
)
if filepath:
+ # using EXPOFILES not SCANS_ROOT in case we want to extend this to other parts of the system
actualpath = Path(settings.EXPOFILES) / Path(filepath)
else:
message = f'\n File to rename not specified "{filepath}"'
diff --git a/settings.py b/settings.py
index e428b9c..80a1de2 100644
--- a/settings.py
+++ b/settings.py
@@ -31,7 +31,11 @@ EPOCH = date.fromisoformat('1970-01-01')
# default value, then gets overwritten by real secrets
SECRET_KEY = "not-the-real-secret-key-a#vaeozn0---^fj!355qki*vj2"
+# executables:
GIT = "git" # command for running git
+CAVERN = "cavern" # for parsing .svx files and producing .3d files
+SURVEXPORT = "survexport" # for parsing .3d files and producing .pos files
+MOGRIFY = "mogrify" # for rotating images
# Note that this builds upon the django system installed
# global settings in
diff --git a/templates/renameform.html b/templates/renameform.html
index aae489b..1217968 100644
--- a/templates/renameform.html
+++ b/templates/renameform.html
@@ -1,10 +1,10 @@
{% extends "base.html" %}
-{% block title %}File rename form{% endblock %}
+{% block title %}File rename or rotate form{% endblock %}
{% block content %}
-<h2>Renaming "{{filename}}"</h2>
+<h2>Renaming or Rotating "{{filename}}"</h2>
<a href="/expofiles/{{filepath|urlencode}}">
<figure class=onleft>
<img src="/expofiles/{{filepath|urlencode}}" width=150px>
@@ -23,26 +23,49 @@
{% csrf_token %}
<br>
<input class="fancybutton2" style="padding: 0.5em 25px; margin-left: 110px "
- label = "Rename to" name = "renameto" id="renameto"
+
+ label = "Rename to" name = "renametoname" id="renameto"
pattern="[A-Za-z][A-Za-z0-9_-\.]*"/>
<label
style="padding: 0.5em 25px; margin-left: 110px"
- for="renameto">type in the new name for this file<br></label>
+ for="renametoname">type in the new name for this file<br></label>
<br><br><br>
- <button class="fancybutton2" style="padding: 0.5em 25px; margin-left: 110px" type = "submit" value = "Upload" >
+ <button class="fancybutton2" style="padding: 0.5em 25px; margin-left: 110px" name="rename" type = "submit" value = "Rename" >
Rename it
</button>
</form>
+ <br />
+ <form method ='post' >
+ {% csrf_token %}
+ <button class="fancybutton2" style="padding: 0.5em 25px; margin-left: 110px" name="rotate" type = "submit" value = "Rotate" >
+ Rotate it
+ </button>
+ </form>
<br /><br /><br />
- Full urlencoded path for this file in expofiles is <a href="/expofiles/{{filepath|urlencode}}"><em>{{filepath|urlencode}}</em></a>
+ Full urlencoded path for this file in expofiles is <a href="/expofiles/{{filepath|urlencode}}"><em>{{filepath|urlencode}}</em></a>
</div>
<br />
-
<hr />
+{% for np in notpics %}
+ <a href="/expofilerename/{{walletpath|urlencode}}/{{np|urlencode}}">{{np}}</a> <br />
+{% endfor %}
+<br />
+{% for filename in files %}
+<a href="/expofilerename/{{walletpath|urlencode}}/{{filename|urlencode}}">
+ <figure class=onleft>
+ <img src="/expofiles/{{walletpath|urlencode}}/{{filename|urlencode}}" width=75px>
+ <figcaption style="font-variant-caps: normal;">{{filename}}
+ </figcaption>
+ </figure></a>
+
+{% empty %}
+No files found.<br />
+{% endfor %}
+
{% endblock %} \ No newline at end of file