This commit is contained in:
parent
3ddc8e14ef
commit
720439c798
70
api/views.py
70
api/views.py
|
|
@ -379,41 +379,43 @@ def NCAddStandardFiles(request):
|
||||||
def NCAddDirs(request):
|
def NCAddDirs(request):
|
||||||
if request.method == "GET":
|
if request.method == "GET":
|
||||||
agency = Agency.objects.get(pk=request.GET.get('agencyid'))
|
agency = Agency.objects.get(pk=request.GET.get('agencyid'))
|
||||||
dir_to_create = DataDir.objects.get(pk=request.GET.get('dirid'))
|
if(DataDir.objects.get(pk=request.GET.get('dirid')).exists()):
|
||||||
sharestring = ""
|
dir_to_create = DataDir.objects.get(pk=request.GET.get('dirid'))
|
||||||
if(dir_to_create.visibleby.all().count() > 0):
|
sharestring = ""
|
||||||
sharestring = " Ordner nur sichtbar durch: "
|
if(dir_to_create.visibleby.all().count() > 0):
|
||||||
for cd in dir_to_create.visibleby.all():
|
sharestring = " Ordner nur sichtbar durch: "
|
||||||
sharestring += cd.agencygroupname + " (" + cd.nc_name + ")"
|
for cd in dir_to_create.visibleby.all():
|
||||||
# Dir has no parent, create
|
sharestring += cd.agencygroupname + " (" + cd.nc_name + ")"
|
||||||
if(len(dir_to_create.parent.name) == 0):
|
# Dir has no parent, create
|
||||||
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk)+ '/' + dir_to_create.name, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
if(len(dir_to_create.parent.name) == 0):
|
||||||
return JsonResponse({'status' : True, 'message': 'Ordner ' + dir_to_create.name + ' angelegt. ' + sharestring + " RESP: " + r.text})
|
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk)+ '/' + dir_to_create.name, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
# Dir has parents, start thinking :)
|
return JsonResponse({'status' : True, 'message': 'Ordner ' + dir_to_create.name + ' angelegt. ' + sharestring + " RESP: " + r.text})
|
||||||
|
# Dir has parents, start thinking :)
|
||||||
|
else:
|
||||||
|
datadir_parent = None
|
||||||
|
datadir_parent_dirnames = []
|
||||||
|
if(dir_to_create.parent != None and len(dir_to_create.parent.name) > 0):
|
||||||
|
datadir_parent = dir_to_create.parent
|
||||||
|
datadir_parent_dirnames = [dir_to_create.parent.name]
|
||||||
|
|
||||||
|
if(datadir_parent.parent != None):
|
||||||
|
while(datadir_parent.parent != None and len(datadir_parent.parent.name) > 0):
|
||||||
|
datadir_parent_dirnames.append(datadir_parent.parent.name)
|
||||||
|
datadir_parent = datadir_parent.parent
|
||||||
|
|
||||||
|
if(len(datadir_parent_dirnames) > 0):
|
||||||
|
datadir_parent_dirnames = datadir_parent_dirnames[::-1]
|
||||||
|
d_prestring = ""
|
||||||
|
for d in datadir_parent_dirnames:
|
||||||
|
new_folder = d_prestring + "/" +d
|
||||||
|
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk)+ '/' + new_folder, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
|
d_prestring += "/" + d
|
||||||
|
|
||||||
|
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk)+ d_prestring + "/" + dir_to_create.name, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
||||||
|
|
||||||
|
return JsonResponse({'status' : True, 'message': 'Ordner ' + dir_to_create.name + ' angelegt.' + sharestring + " RESP: " + r.text + " " + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk) + d_prestring + "/" + dir_to_create.name})
|
||||||
else:
|
else:
|
||||||
datadir_parent = None
|
return JsonResponse({'status' : False, 'message': 'Datei nicht gefunden'})
|
||||||
datadir_parent_dirnames = []
|
|
||||||
if(dir_to_create.parent != None and len(dir_to_create.parent.name) > 0):
|
|
||||||
datadir_parent = dir_to_create.parent
|
|
||||||
datadir_parent_dirnames = [dir_to_create.parent.name]
|
|
||||||
|
|
||||||
if(datadir_parent.parent != None):
|
|
||||||
while(datadir_parent.parent != None and len(datadir_parent.parent.name) > 0):
|
|
||||||
datadir_parent_dirnames.append(datadir_parent.parent.name)
|
|
||||||
datadir_parent = datadir_parent.parent
|
|
||||||
|
|
||||||
if(len(datadir_parent_dirnames) > 0):
|
|
||||||
datadir_parent_dirnames = datadir_parent_dirnames[::-1]
|
|
||||||
d_prestring = ""
|
|
||||||
for d in datadir_parent_dirnames:
|
|
||||||
new_folder = d_prestring + "/" +d
|
|
||||||
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk)+ '/' + new_folder, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
|
||||||
d_prestring += "/" + d
|
|
||||||
|
|
||||||
r = requests.request("MKCOL", settings.NEXTCLOUD_URL + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk)+ d_prestring + "/" + dir_to_create.name, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
|
|
||||||
|
|
||||||
return JsonResponse({'status' : True, 'message': 'Ordner ' + dir_to_create.name + ' angelegt.' + sharestring + " RESP: " + r.text + " " + "remote.php/dav/files/vhdadjangoapi_8fjz47epc6/Agenturdaten_" + str(agency.pk) + d_prestring + "/" + dir_to_create.name})
|
|
||||||
|
|
||||||
|
|
||||||
return JsonResponse({'status' : False, 'message': 'AUTH ERROR'})
|
return JsonResponse({'status' : False, 'message': 'AUTH ERROR'})
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue