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

View File

@ -740,6 +740,10 @@ def createAgGroupFolder(request, agencypk):
"aid" : str(agency.pk), "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) 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)
print(r.text) json_response = json.loads(r.text)
return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!'}) 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. 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): 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) aggroup = AgencyGroup.objects.get(group=group)
agency = aggroup.agency agency = aggroup.agency
newgroupid = create_group_id(aggroup.agencygroupname, agency) newgroupid = create_group_id(aggroup.agencygroupname, agency)
@ -194,13 +194,10 @@ def NCAddGroup(request):
"name": aggroup.agencygroupname, "name": aggroup.agencygroupname,
"id" : newgroupid "id" : newgroupid
} }
headers = { 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)
'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))
return JsonResponse({'status' : True, 'message': 'Gruppe ' + aggroup.agencygroupname + ' erzeugt - ID: ' + newgroupid}) 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: else:
return JsonResponse({'status' : True, 'message': 'Gruppe ' + aggroup.agencygroupname + ' (ID '+aggroup.group.name+') konnte nicht erzeugt werden. Bitte manuell prüfen'}) return JsonResponse({'status' : True, 'message': 'Gruppe ' + aggroup.agencygroupname + ' (ID '+aggroup.group.name+') konnte nicht erzeugt werden. Bitte manuell prüfen'})
#except: #except:
@ -211,11 +208,11 @@ def NCAddGroup(request):
''' '''
Hier werden die Nutzer angelegt. Hier werden die Nutzer angelegt.
''' '''
@api_view(['POST'], ) @api_view(['GET'], )
def NCAddUser(request): def NCAddUser(request):
if request.method == "POST": if request.method == "GET":
agency = Agency.objects.get(pk=request.POST.get('agencyid')) agency = Agency.objects.get(pk=request.GET.get('agencyid'))
user = User.objects.get(pk=request.POST['userid']) user = User.objects.get(pk=request.GET['userid'])
# Check, that only users in the same agency can do that! # Check, that only users in the same agency can do that!
if(user.profile.agency == agency): if(user.profile.agency == agency):
# Load all groups the User is in and get AgencyGroup for NC-Group-Name # 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 'Authorization': 'Bearer ' + request.user.profile.nc_sid
} }
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)
print(r.text)
print(r.text)
return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!' + r.text}) return JsonResponse({'status' : True, 'message': 'Gruppenordner angelegt!' + r.text})
return JsonResponse({"status" : "NO AUTH"}) return JsonResponse({"status" : "NO AUTH"})
@ -285,11 +280,11 @@ import os
''' '''
Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt. Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt.
''' '''
@api_view(['POST'], ) @api_view(['GET'], )
def NCAddFiles(request): def NCAddFiles(request):
if request.method == "POST": if request.method == "GET":
agency = Agency.objects.get(pk=request.POST.get('agencyid')) agency = Agency.objects.get(pk=request.GET.get('agencyid'))
file_to_load = DataFile.objects.get(pk=request.POST.get('fileid')) file_to_load = DataFile.objects.get(pk=request.GET.get('fileid'))
datadir_parent = None datadir_parent = None
datadir_parent_dirnames = [] datadir_parent_dirnames = []
if(file_to_load.parent != None): if(file_to_load.parent != None):
@ -327,11 +322,11 @@ def NCAddFiles(request):
''' '''
Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt. Hier werden die Dateien angelegt und entsprechende Zugriffsrechte der Gruppen gesetzt.
''' '''
@api_view(['POST'], ) @api_view(['GET'], )
def NCAddDirs(request): def NCAddDirs(request):
if request.method == "POST": if request.method == "GET":
agency = Agency.objects.get(pk=request.POST.get('agencyid')) agency = Agency.objects.get(pk=request.GET.get('agencyid'))
dir_to_create = DataDir.objects.get(pk=request.POST.get('dirid')) dir_to_create = DataDir.objects.get(pk=request.GET.get('dirid'))
sharestring = "" sharestring = ""
if(dir_to_create.visibleby.all().count() > 0): if(dir_to_create.visibleby.all().count() > 0):
sharestring = " Ordner nur sichtbar durch: " sharestring = " Ordner nur sichtbar durch: "