forked from expo/troggle
Imports in control panel work again
This commit is contained in:
@@ -9,7 +9,9 @@ from django.shortcuts import render
|
||||
from django.template import Context, loader
|
||||
from django.core.files.storage import FileSystemStorage, default_storage
|
||||
|
||||
import troggle.parsers.imports
|
||||
from troggle.parsers.imports import import_caves, import_people, import_surveyscans
|
||||
from troggle.parsers.imports import import_logbooks, import_QMs, import_drawingsfiles, import_survex
|
||||
# from databaseReset import reinit_db # don't do this. databaseRest runs code *at import time*
|
||||
from troggle.core.models.troggle import Expedition, Person, PersonExpedition
|
||||
from troggle.core.models.caves import LogbookEntry, QM, Cave, PersonTrip
|
||||
from .login import login_required_if_public
|
||||
@@ -82,27 +84,60 @@ def frontpage(request):
|
||||
return render(request,'frontpage.html', locals())
|
||||
|
||||
|
||||
@login_required_if_public
|
||||
def controlpanel(request):
|
||||
'''This should be re-written to use ajax so that the user can see the progress
|
||||
of the actions.
|
||||
|
||||
Also need to add reinit_db option
|
||||
'''
|
||||
jobs_completed=[]
|
||||
if request.method=='POST':
|
||||
if request.user.is_superuser: # expoadmin is both .is_staff and ._is_superuser
|
||||
# NONE of this works now that databaseReset (now parsers.imports) has been so extensively rewritten
|
||||
reinit_db()
|
||||
|
||||
def process_imports():
|
||||
'''databaseReset.py
|
||||
jq.enq("reinit",reinit_db)
|
||||
jq.enq("caves",import_caves)
|
||||
jq.enq("people",import_people)
|
||||
jq.enq("scans",import_surveyscans)
|
||||
jq.enq("logbooks",import_logbooks)
|
||||
jq.enq("QMs",import_QMs)
|
||||
jq.enq("drawings",import_drawingsfiles)
|
||||
jq.enq("survex",import_survex)
|
||||
'''
|
||||
if request.POST.get("import_caves", False):
|
||||
import_caves()
|
||||
jobs_completed.append('Caves')
|
||||
if request.POST.get("import_people", False):
|
||||
import_people()
|
||||
jobs_completed.append('People')
|
||||
if request.POST.get("import_surveyscans", False):
|
||||
import_surveyscans()
|
||||
jobs_completed.append('Scans')
|
||||
if request.POST.get("import_logbooks", False):
|
||||
import_logbooks()
|
||||
jobs_completed.append('Logbooks')
|
||||
if request.POST.get("import_QMs", False):
|
||||
import_QMs()
|
||||
import_dwgfiles()
|
||||
import_survexblks()
|
||||
import_survexpos()
|
||||
else:
|
||||
if request.user.is_authenticated: #The user is logged in, but is not a superuser.
|
||||
return render(request,'controlPanel.html', {'caves':Cave.objects.all(),'error':'You must be a superuser to use that feature.'})
|
||||
else:
|
||||
return HttpResponseRedirect(reverse('auth_login'))
|
||||
jobs_completed.append('QMs')
|
||||
if request.POST.get("import_drawingsfiles", False):
|
||||
import_drawingsfiles()
|
||||
jobs_completed.append('Drawings')
|
||||
if request.POST.get("import_survex", False):
|
||||
import_survex()
|
||||
jobs_completed.append('Survex')
|
||||
|
||||
print("", flush=True)
|
||||
|
||||
if not request.user.is_superuser: # expoadmin is both .is_staff and ._is_superuser
|
||||
return render(request,'controlPanel.html', {'error': 'You are logged in, but not logged in as "expoadmin". \nLogout and login again to contnue.'})
|
||||
else:
|
||||
if request.method=='POST':
|
||||
#reinit_db()
|
||||
process_imports()
|
||||
return render(request,'controlPanel.html', {'expeditions':Expedition.objects.all(),'jobs_completed':jobs_completed})
|
||||
else:
|
||||
return render(request,'controlPanel.html', {'expeditions':Expedition.objects.all(),'jobs_completed':jobs_completed})
|
||||
|
||||
return render(request,'controlPanel.html', {'caves':Cave.objects.all(),'expeditions':Expedition.objects.all(),'jobs_completed':jobs_completed})
|
||||
|
||||
|
||||
def downloadlogbook(request,year=None,extension=None,queryset=None):
|
||||
|
||||
Reference in New Issue
Block a user