mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2024-11-25 00:31:55 +00:00
moved 2 funct, deletion of FileAbstraction pending
This commit is contained in:
parent
ac9ac5e397
commit
27816724f8
@ -48,7 +48,7 @@ class SimpleTest(SimpleTestCase):
|
|||||||
from django.http import HttpResponse, HttpResponseRedirect
|
from django.http import HttpResponse, HttpResponseRedirect
|
||||||
from django.shortcuts import get_object_or_404, render
|
from django.shortcuts import get_object_or_404, render
|
||||||
from troggle.core.models import Expedition
|
from troggle.core.models import Expedition
|
||||||
from troggle.core.models_caves import CaveSlug, Cave, CaveAndEntrance, Survey, QM, CaveDescription, EntranceSlug, Entrance, Area, SurvexStation
|
from troggle.core.models_caves import CaveSlug, Cave, CaveAndEntrance, QM, CaveDescription, EntranceSlug, Entrance, Area, SurvexStation
|
||||||
from troggle.core.forms import CaveForm, CaveAndEntranceFormSet, VersionControlCommentForm, EntranceForm, EntranceLetterForm
|
from troggle.core.forms import CaveForm, CaveAndEntranceFormSet, VersionControlCommentForm, EntranceForm, EntranceLetterForm
|
||||||
from troggle.helper import login_required_if_public
|
from troggle.helper import login_required_if_public
|
||||||
|
|
||||||
|
@ -1,44 +1,15 @@
|
|||||||
import troggle.settings as settings
|
# import troggle.settings as settings
|
||||||
import os
|
# import os
|
||||||
import urllib.request, urllib.parse, urllib.error
|
# import urllib.request, urllib.parse, urllib.error
|
||||||
from functools import reduce
|
# from functools import reduce
|
||||||
|
|
||||||
def urljoin(x, y): return x + "/" + y
|
# All unused, but kept pending deletion
|
||||||
|
|
||||||
def listdir(*path):
|
# def urljoin(x, y): return x + "/" + y
|
||||||
try:
|
|
||||||
strippedpath = [p for p in path if p]
|
|
||||||
root = os.path.join(settings.FILES, *strippedpath )
|
|
||||||
l = ""
|
|
||||||
#l = root + "\n"
|
|
||||||
isdir = os.path.isdir(root) #This seems to be required for os.path.isdir to work...
|
|
||||||
#l += str(isdir) + "\n"
|
|
||||||
for p in os.listdir(root):
|
|
||||||
if os.path.isdir(os.path.join(root, p)):
|
|
||||||
l += p + "/\n"
|
|
||||||
|
|
||||||
elif os.path.isfile(os.path.join(root, p)):
|
|
||||||
l += p + "\n"
|
|
||||||
#Ignore non-files and non-directories
|
|
||||||
return l
|
|
||||||
except:
|
|
||||||
if strippedpath:
|
|
||||||
c = reduce(urljoin, strippedpath)
|
|
||||||
else:
|
|
||||||
c = ""
|
|
||||||
c = c.replace("#", "%23")
|
|
||||||
print(("FILE: ", settings.FILES + "listdir/" + c))
|
|
||||||
return urllib.request.urlopen(settings.FILES + "listdir/" + c).read()
|
|
||||||
|
|
||||||
def dirsAsList(*path):
|
|
||||||
return [d for d in listdir(*path).split("\n") if len(d) > 0 and d[-1] == "/"]
|
|
||||||
|
|
||||||
def filesAsList(*path):
|
# def dirsAsList(*path):
|
||||||
return [d for d in listdir(*path).split("\n") if len(d) > 0 and d[-1] != "/"]
|
# return [d for d in listdir(*path).split("\n") if len(d) > 0 and d[-1] == "/"]
|
||||||
|
|
||||||
|
# def filesAsList(*path):
|
||||||
|
# return [d for d in listdir(*path).split("\n") if len(d) > 0 and d[-1] != "/"]
|
||||||
|
|
||||||
def readFile(*path):
|
|
||||||
try:
|
|
||||||
f = open(os.path.join(settings.FILES, *path))
|
|
||||||
except:
|
|
||||||
f = urllib.request.urlopen(settings.FILES + "download/" + reduce(urljoin, path))
|
|
||||||
return f.read()
|
|
@ -1,5 +1,5 @@
|
|||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from . import fileAbstraction
|
#from . import fileAbstraction
|
||||||
from django.shortcuts import render_to_response
|
from django.shortcuts import render_to_response
|
||||||
from django.http import HttpResponse, Http404
|
from django.http import HttpResponse, Http404
|
||||||
import os, stat
|
import os, stat
|
||||||
@ -8,10 +8,40 @@ from troggle.core.models_survex import SurvexScansFolder, SurvexScanSingle, Surv
|
|||||||
import parsers.surveys
|
import parsers.surveys
|
||||||
import urllib.request, urllib.parse, urllib.error
|
import urllib.request, urllib.parse, urllib.error
|
||||||
|
|
||||||
# inline fileabstraction into here if it's not going to be useful anywhere else
|
# inlined use of fileabstraction into here
|
||||||
# keep things simple and ignore exceptions everywhere for now
|
|
||||||
|
|
||||||
|
|
||||||
|
def fa_listdir(*path):
|
||||||
|
try:
|
||||||
|
strippedpath = [p for p in path if p]
|
||||||
|
root = os.path.join(settings.FILES, *strippedpath )
|
||||||
|
l = ""
|
||||||
|
#l = root + "\n"
|
||||||
|
isdir = os.path.isdir(root) #This seems to be required for os.path.isdir to work...
|
||||||
|
#l += str(isdir) + "\n"
|
||||||
|
for p in os.listdir(root):
|
||||||
|
if os.path.isdir(os.path.join(root, p)):
|
||||||
|
l += p + "/\n"
|
||||||
|
|
||||||
|
elif os.path.isfile(os.path.join(root, p)):
|
||||||
|
l += p + "\n"
|
||||||
|
#Ignore non-files and non-directories
|
||||||
|
return l
|
||||||
|
except:
|
||||||
|
if strippedpath:
|
||||||
|
c = reduce(urljoin, strippedpath)
|
||||||
|
else:
|
||||||
|
c = ""
|
||||||
|
c = c.replace("#", "%23")
|
||||||
|
print(("FILE: ", settings.FILES + "listdir/" + c))
|
||||||
|
return urllib.request.urlopen(settings.FILES + "listdir/" + c).read()
|
||||||
|
|
||||||
|
def fa_readFile(*path):
|
||||||
|
try:
|
||||||
|
f = open(os.path.join(settings.FILES, *path))
|
||||||
|
except:
|
||||||
|
f = urllib.request.urlopen(settings.FILES + "download/" + reduce(urljoin, path))
|
||||||
|
return f.read()
|
||||||
|
|
||||||
def getMimeType(extension):
|
def getMimeType(extension):
|
||||||
try:
|
try:
|
||||||
return {"txt": "text/plain",
|
return {"txt": "text/plain",
|
||||||
@ -24,7 +54,7 @@ def getMimeType(extension):
|
|||||||
|
|
||||||
def listdir(request, path):
|
def listdir(request, path):
|
||||||
#try:
|
#try:
|
||||||
return HttpResponse(fileAbstraction.listdir(path), content_type="text/plain")
|
return HttpResponse(fa_listdir(path), content_type="text/plain")
|
||||||
#except:
|
#except:
|
||||||
# raise Http404
|
# raise Http404
|
||||||
|
|
||||||
@ -34,7 +64,7 @@ def upload(request, path):
|
|||||||
def download(request, path):
|
def download(request, path):
|
||||||
#try:
|
#try:
|
||||||
|
|
||||||
return HttpResponse(fileAbstraction.readFile(path), content_type=getMimeType(path.split(".")[-1]))
|
return HttpResponse(fa_readFile(path), content_type=getMimeType(path.split(".")[-1]))
|
||||||
#except:
|
#except:
|
||||||
# raise Http404
|
# raise Http404
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user