Standard Ordner Upload
This commit is contained in:
parent
e820a52aa4
commit
1bc3dcb703
|
|
@ -20,6 +20,7 @@
|
||||||
var groupids = [{% for g in groups %} "{{g.name}}" {% if forloop.counter < groups|length %}, {% endif %} {% endfor %}];
|
var groupids = [{% for g in groups %} "{{g.name}}" {% if forloop.counter < groups|length %}, {% endif %} {% endfor %}];
|
||||||
|
|
||||||
var files = [{% for f in files %} "{{f.pk}}" {% if forloop.counter < files|length %}, {% endif %} {% endfor %}];
|
var files = [{% for f in files %} "{{f.pk}}" {% if forloop.counter < files|length %}, {% endif %} {% endfor %}];
|
||||||
|
var standard_files = [{% for f in standard_files %} "{{f.pk}}" {% if forloop.counter < files|length %}, {% endif %} {% endfor %}];
|
||||||
var dirids = [{% for d in dirs %} "{{d.pk}}" {% if forloop.counter < dirs|length %}, {% endif %} {% endfor %}];
|
var dirids = [{% for d in dirs %} "{{d.pk}}" {% if forloop.counter < dirs|length %}, {% endif %} {% endfor %}];
|
||||||
|
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
|
|
@ -128,6 +129,44 @@
|
||||||
if(filecounter < files.length){
|
if(filecounter < files.length){
|
||||||
addFiles(files[filecounter]);
|
addFiles(files[filecounter]);
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
if(standard_files[0] != undefined){
|
||||||
|
addStandardFilesFiles(standard_files[0]);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if(dirids[0] != undefined){
|
||||||
|
addDirs(dirids[0]);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$("#migfinished").show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(e){
|
||||||
|
console.log(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
filecounters = 0;
|
||||||
|
function addStandardFilesFiles(fileid){
|
||||||
|
$("#cloud_process_cloud").show();
|
||||||
|
$.ajax({
|
||||||
|
url: "{% url 'api:apiaddstandardfile' %}",
|
||||||
|
dataType: 'json',
|
||||||
|
data: {
|
||||||
|
'agencyid' : {{agency.pk}},
|
||||||
|
'fileid' : fileid,
|
||||||
|
},
|
||||||
|
success: function(data){
|
||||||
|
if(data['status'] == true){
|
||||||
|
$("#cloud_process_cloud").append('<p>' + data['message'] + "</p>");
|
||||||
|
filecounters += 1;
|
||||||
|
if(filecounters < standard_files.length){
|
||||||
|
addStandardFilesFiles(standard_files[filecounters]);
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
if(dirids[0] != undefined){
|
if(dirids[0] != undefined){
|
||||||
addDirs(dirids[0]);
|
addDirs(dirids[0]);
|
||||||
|
|
|
||||||
19
adm/views.py
19
adm/views.py
|
|
@ -709,7 +709,13 @@ class AdmImportFlow(TemplateView):
|
||||||
context.update({'users' : User.objects.filter(profile__agency=agency)})
|
context.update({'users' : User.objects.filter(profile__agency=agency)})
|
||||||
|
|
||||||
# DataFiles
|
# DataFiles
|
||||||
context.update({'files' : DataFile.objects.filter(agency=agency)})
|
normal_files = []
|
||||||
|
|
||||||
|
for f in DataFile.objects.filter(agency=agency):
|
||||||
|
if(f.parent.name != "Standards Uploadbereich"):
|
||||||
|
normal_files.append(f)
|
||||||
|
|
||||||
|
context.update({'files' : normal_files})
|
||||||
|
|
||||||
# DataDirs
|
# DataDirs
|
||||||
context.update({'dirs' : DataDir.objects.filter(agency=agency).exclude(is_root=True)})
|
context.update({'dirs' : DataDir.objects.filter(agency=agency).exclude(is_root=True)})
|
||||||
|
|
@ -724,6 +730,17 @@ class AdmImportFlow(TemplateView):
|
||||||
|
|
||||||
context.update({'groups' : ag_groups})
|
context.update({'groups' : ag_groups})
|
||||||
|
|
||||||
|
# Loading Standard-Files
|
||||||
|
standards = Standards.objects.filter(agency=agency)
|
||||||
|
standard_files = []
|
||||||
|
for s in standards:
|
||||||
|
for f in s.addedfiles.all():
|
||||||
|
if(f.parent.name == "Standards Uploadbereich"):
|
||||||
|
standard_files.append(f)
|
||||||
|
|
||||||
|
|
||||||
|
context.update({'standard_files' : standard_files})
|
||||||
|
|
||||||
# LINK TO THE NC-INSTANCE
|
# LINK TO THE NC-INSTANCE
|
||||||
context.update({'nclink' : settings.NEXTCLOUD_URL})
|
context.update({'nclink' : settings.NEXTCLOUD_URL})
|
||||||
context.update({'ncid' : self.request.user.profile.nc_sid})
|
context.update({'ncid' : self.request.user.profile.nc_sid})
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ urlpatterns = [
|
||||||
path('adduser/', views.NCAddUser, name="apiadduser"),
|
path('adduser/', views.NCAddUser, name="apiadduser"),
|
||||||
path('addgf/', views.NCAddGroupFolder, name="apiaddgf"),
|
path('addgf/', views.NCAddGroupFolder, name="apiaddgf"),
|
||||||
path('addfile/', views.NCAddFiles, name="apiaddfile"),
|
path('addfile/', views.NCAddFiles, name="apiaddfile"),
|
||||||
|
path('addstandardfile/', views.NCAddFiles, name="apiaddstandardfile"),
|
||||||
path('adddir/', views.NCAddDirs, name="apiadddir"),
|
path('adddir/', views.NCAddDirs, name="apiadddir"),
|
||||||
|
|
||||||
path('setlog/', views.SetUserData, name="apisetlog"),
|
path('setlog/', views.SetUserData, name="apisetlog"),
|
||||||
|
|
|
||||||
26
api/views.py
26
api/views.py
|
|
@ -270,8 +270,13 @@ def NCAddGroupFolder(request):
|
||||||
headers = {
|
headers = {
|
||||||
'Authorization': 'Bearer ' + request.user.profile.nc_sid
|
'Authorization': 'Bearer ' + request.user.profile.nc_sid
|
||||||
}
|
}
|
||||||
|
# Groupfolder
|
||||||
r = requests.post(settings.NEXTCLOUD_URL + "apps/agency/createagf", data=data, headers=headers)
|
r = requests.post(settings.NEXTCLOUD_URL + "apps/agency/createagf", data=data, headers=headers)
|
||||||
return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!' + r.text})
|
|
||||||
|
# Standar Folder
|
||||||
|
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/admin/Agenturdaten_" + str(agency.pk)+ '/Standards Uploadbereich', auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
|
|
||||||
|
return JsonResponse({'status' : True, 'message': 'Gruppenordner und Standard-Ordner angelegt!' + r.text})
|
||||||
|
|
||||||
return JsonResponse({"status" : "NO AUTH"})
|
return JsonResponse({"status" : "NO AUTH"})
|
||||||
|
|
||||||
|
|
@ -318,6 +323,25 @@ def NCAddFiles(request):
|
||||||
|
|
||||||
return JsonResponse({"status" : "NO AUTH"})
|
return JsonResponse({"status" : "NO AUTH"})
|
||||||
|
|
||||||
|
'''
|
||||||
|
STANDARD FILES
|
||||||
|
'''
|
||||||
|
@api_view(['GET'], )
|
||||||
|
def apiaddstandardfile(request):
|
||||||
|
if request.method == "GET":
|
||||||
|
agency = Agency.objects.get(pk=request.GET.get('agencyid'))
|
||||||
|
file_to_load = DataFile.objects.get(pk=request.GET.get('fileid'))
|
||||||
|
# Uplod the file!
|
||||||
|
final_file_path = settings.NEXTCLOUD_URL + "remote.php/dav/files/admin/Agenturdaten_"+ str(agency.pk) + "/Standards Uploadbereich"
|
||||||
|
with open(file_to_load.file.path, 'rb') as f:
|
||||||
|
r = requests.put(final_file_path, data=f, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
|
if(len(r.text) == 0):
|
||||||
|
return JsonResponse({'status' : True, 'message': 'Datei ' + file_to_load.name + ' angelegt.'})
|
||||||
|
else:
|
||||||
|
return JsonResponse({'status' : True, 'message': 'Datei ' + file_to_load.name + ' konnte nicht angelegt. Bitte manuell prüfen!'})
|
||||||
|
|
||||||
|
return JsonResponse({"status" : "NO AUTH"})
|
||||||
|
|
||||||
|
|
||||||
'''
|
'''
|
||||||
Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt.
|
Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue