Import done

This commit is contained in:
holger.trampe 2021-08-12 11:12:16 +02:00
parent 2ed0afcbba
commit e820a52aa4
3 changed files with 33 additions and 50 deletions

View File

@ -24,10 +24,10 @@
$(document).ready(function(){
// FIRST CALL GROUPS, When Groups finished User will call by Groups
//createAgencyGroups(groupids[0]);
createAgencyGroups(groupids[0]);
//DEV
addGroupFolder();
//addGroupFolder();
//addDirs(dirids[0]);
})
@ -35,17 +35,13 @@
function createAgencyGroups(groupid){
$.ajax({
url: "{% url 'api:apiaddgroup' %}",
headers: {
'Authorization':'Token {{ ncid }}',
"Access-Control-Allow-Origin" : "*"
},
method: 'POST',
dataType: 'json',
data: {
'groupid' : groupid
},
success: function(data){
if(data['status'] == true){
console.log(data);
$("#groups_process_groups").append('<p>' + data['message'] + "</p>");
groupcounter += 1;
if(groupcounter < groupids.length){
@ -68,11 +64,6 @@
$("#user_process_user").show();
$.ajax({
url: "{% url 'api:apiadduser' %}",
headers: {
'Authorization':'Token {{ ncid }}',
"Access-Control-Allow-Origin" : "*"
},
method: 'POST',
dataType: 'json',
data: {
'agencyid' : {{agency.pk}},
@ -104,12 +95,15 @@
url: "{% url 'mig-groupfolder' agency.pk %}",
dataType: 'json',
success: function(data){
console.log(data);
if(data['status'] == true){
$("#cloud_process_main").html("Ordner erfolgreich angelegt. Starte mit Dateiimport...");
if(files[0] != undefined){
//addFiles(files[0]);
addFiles(files[0]);
}
}
else{
$("#cloud_process_main").html("FEHLER BEI GRUPPENORDNER! Import abgebrochen.");
}
},
error: function(e){
console.log(e);
@ -122,11 +116,6 @@
$("#cloud_process_cloud").show();
$.ajax({
url: "{% url 'api:apiaddfile' %}",
headers: {
'Authorization':'Token {{ ncid }}',
"Access-Control-Allow-Origin" : "*"
},
method: 'POST',
dataType: 'json',
data: {
'agencyid' : {{agency.pk}},
@ -157,11 +146,6 @@
$("#cloud_process_cloud").show();
$.ajax({
url: "{% url 'api:apiadddir' %}",
headers: {
'Authorization':'Token {{ ncid }}',
"Access-Control-Allow-Origin" : "*"
},
method: 'POST',
dataType: 'json',
data: {
'agencyid' : {{agency.pk}},

View File

@ -740,6 +740,10 @@ def createAgGroupFolder(request, agencypk):
"aid" : str(agency.pk),
}
r = requests.post(settings.NEXTCLOUD_URL + "ocs/v2.php/apps/da_agency/api/v1/creategf", auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), data=data)
print(r.text)
return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!'})
r = requests.post(settings.NEXTCLOUD_URL + "ocs/v2.php/apps/da_agency/api/v1/creategf?format=json", auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), data=data)
json_response = json.loads(r.text)
response_status = json_response['ocs']['data']['status']
if(response_status == "1"):
return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!'})
else:
return JsonResponse({'status' : False, 'message': 'Konnte nicht angelegt werden!'})

View File

@ -165,11 +165,11 @@ def create_group_id(agencygroupname, agency):
Diese Methode erstellt die Gruppen in NC nach dem Schemata, wie sie auch bei einer Registrierung aufgebaut werden.
'''
@api_view(['POST'], )
@api_view(['GET'], )
def NCAddGroup(request):
if request.method == "POST":
if request.method == "GET":
group = Group.objects.get(name=request.POST.get('groupid'))
group = Group.objects.get(name=request.GET.get('groupid'))
aggroup = AgencyGroup.objects.get(group=group)
agency = aggroup.agency
newgroupid = create_group_id(aggroup.agencygroupname, agency)
@ -194,13 +194,10 @@ def NCAddGroup(request):
"name": aggroup.agencygroupname,
"id" : newgroupid
}
headers = {
'Accept' : 'application/json',
'Access-Control-Allow-Headers' : 'OCS-APIRequest',
'OCS-APIRequest' : 'true'
}
r = requests.post(settings.NEXTCLOUD_URL + "apps/agency/regr", data=data, headers=headers, auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API))
r = requests.post(settings.NEXTCLOUD_URL + "ocs/v2.php/apps/da_agency/api/v1/renameagg?format=json", auth=(settings.NEXTCLOUD_USER_API, settings.NEXTCLOUD_PW_API), data=data)
return JsonResponse({'status' : True, 'message': 'Gruppe ' + aggroup.agencygroupname + ' erzeugt - ID: ' + newgroupid})
elif(r_status['ocs']['meta']['statuscode'] == 102):
return JsonResponse({'status' : True, 'message': 'Gruppe ' + aggroup.agencygroupname + ' (ID '+aggroup.group.name+') existiert bereits. Wird übersprungen. Bitte Namen prüfen!'})
else:
return JsonResponse({'status' : True, 'message': 'Gruppe ' + aggroup.agencygroupname + ' (ID '+aggroup.group.name+') konnte nicht erzeugt werden. Bitte manuell prüfen'})
#except:
@ -211,11 +208,11 @@ def NCAddGroup(request):
'''
Hier werden die Nutzer angelegt.
'''
@api_view(['POST'], )
@api_view(['GET'], )
def NCAddUser(request):
if request.method == "POST":
agency = Agency.objects.get(pk=request.POST.get('agencyid'))
user = User.objects.get(pk=request.POST['userid'])
if request.method == "GET":
agency = Agency.objects.get(pk=request.GET.get('agencyid'))
user = User.objects.get(pk=request.GET['userid'])
# Check, that only users in the same agency can do that!
if(user.profile.agency == agency):
# Load all groups the User is in and get AgencyGroup for NC-Group-Name
@ -274,8 +271,6 @@ def NCAddGroupFolder(request):
'Authorization': 'Bearer ' + request.user.profile.nc_sid
}
r = requests.post(settings.NEXTCLOUD_URL + "apps/agency/createagf", data=data, headers=headers)
print(r.text)
print(r.text)
return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!' + r.text})
return JsonResponse({"status" : "NO AUTH"})
@ -285,11 +280,11 @@ import os
'''
Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt.
'''
@api_view(['POST'], )
@api_view(['GET'], )
def NCAddFiles(request):
if request.method == "POST":
agency = Agency.objects.get(pk=request.POST.get('agencyid'))
file_to_load = DataFile.objects.get(pk=request.POST.get('fileid'))
if request.method == "GET":
agency = Agency.objects.get(pk=request.GET.get('agencyid'))
file_to_load = DataFile.objects.get(pk=request.GET.get('fileid'))
datadir_parent = None
datadir_parent_dirnames = []
if(file_to_load.parent != None):
@ -327,11 +322,11 @@ def NCAddFiles(request):
'''
Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt.
'''
@api_view(['POST'], )
@api_view(['GET'], )
def NCAddDirs(request):
if request.method == "POST":
agency = Agency.objects.get(pk=request.POST.get('agencyid'))
dir_to_create = DataDir.objects.get(pk=request.POST.get('dirid'))
if request.method == "GET":
agency = Agency.objects.get(pk=request.GET.get('agencyid'))
dir_to_create = DataDir.objects.get(pk=request.GET.get('dirid'))
sharestring = ""
if(dir_to_create.visibleby.all().count() > 0):
sharestring = " Ordner nur sichtbar durch: "