This commit is contained in:
Holger Trampe 2021-10-23 02:07:44 +02:00
parent 8dece8a7e6
commit bd6dc6215b
1 changed files with 12 additions and 8 deletions

View File

@ -443,16 +443,20 @@ def NCSwitchStandardFiles(request):
standard = Standards.objects.get(pk=request.GET.get('standardid'))
response_status = "OK"
for f in standard.addedfiles.all():
try:
filesearchdata = '<?xml version="1.0" encoding="UTF-8"?><d:searchrequest xmlns:d="DAV:" xmlns:oc="http://owncloud.org/ns"><d:basicsearch><d:select><d:prop><oc:fileid/><d:displayname/></d:prop></d:select><d:from><d:scope><d:href>/files/' + settings.NEXTCLOUD_USER_API + '/Agenturdaten_' + str(standard.agency.pk) + '</d:href><d:depth>infinity</d:depth></d:scope></d:from><d:where><d:like><d:prop><d:displayname/></d:prop><d:literal>' + f.name + '</d:literal></d:like></d:where></d:basicsearch></d:searchrequest>'
filesearchdata = '<?xml version="1.0" encoding="UTF-8"?><d:searchrequest xmlns:d="DAV:" xmlns:oc="http://owncloud.org/ns"><d:basicsearch><d:select><d:prop><oc:fileid/><d:displayname/></d:prop></d:select><d:from><d:scope><d:href>/files/' + settings.NEXTCLOUD_USER_API + '/Agenturdaten_' + str(standard.agency.pk) + '</d:href><d:depth>infinity</d:depth></d:scope></d:from><d:where><d:like><d:prop><d:displayname/></d:prop><d:literal>' + f.name + '</d:literal></d:like></d:where></d:basicsearch></d:searchrequest>'
r = requests.request("SEARCH", settings.NEXTCLOUD_URL + "remote.php/dav", data=filesearchdata, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), headers={'Content-Type' : 'text/xml'})
fileid = getFileIdFromXML(r.text)
if(fileid == None):
r = requests.request("SEARCH", settings.NEXTCLOUD_URL + "remote.php/dav", data=filesearchdata, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), headers={'Content-Type' : 'text/xml'})
fileid = getFileIdFromXML(r.text)
if(fileid == None):
response_status += " DATEI NICHT GEFUNDEN BEI STANDARD " + str(standard.pk) + " "
else:
ncfile = NCFile.objects.create(agency=standard.agency, nc_id=fileid, file_id=f)
standard.addedfiles_nc.add(ncfile)
return JsonResponse({"status" : response_status})
except:
response_status += " FEHLER BEI STANDARD " + str(standard.pk) + " "
else:
ncfile = NCFile.objects.create(agency=standard.agency, nc_id=fileid, file_id=f)
standard.addedfiles_nc.add(ncfile)
return JsonResponse({"status" : response_status})
return JsonResponse({"status" : response_status})
return JsonResponse({"status" : "NO AUTH"})