198 lines
7.5 KiB
HTML
198 lines
7.5 KiB
HTML
{% extends "adm/adm_base.html" %}
|
|
{% block content %}
|
|
{% load adm_tags %}
|
|
<div class="content-section col-12">
|
|
<h4>Agenturimport der Agentur {{agency.name}}</h4>
|
|
<small>Die Seite nicht verlassen oder neu laden!</small>
|
|
<hr>
|
|
<div>
|
|
<h5 id="groups_process">Es werden {{groups|length}} Gruppen angelegt...</h5>
|
|
<div id="groups_process_groups"></div>
|
|
<h5 id="user_process" style="display: none;">Es werden {{users|length}} Benutzer angelegt und in die Gruppen gepackt. Die Nutzer müssen sich dann ein neues Passwort setzen.</h5>
|
|
<div id="user_process_user" style="display: none;"></div>
|
|
<h5 id="cloud_process" style="display: none;">Es werden {{files|length}} Dateien und ({{dirids|length}}) Ordner angelegt und mit Zugriffsrechten gesetzt.</h5>
|
|
<div id="cloud_process_main" style="display: none;">Gruppenordner wird angelegt</div>
|
|
<div id="cloud_process_cloud" style="display: none;"></div>
|
|
</div>
|
|
<h5 id="migfinished" style="display: none;">Migration vollständig. Bitte diese Seite ausdrucken oder Speichern. Ein erneuter Import ist nicht möglich!</h5>
|
|
<script>
|
|
var userids = [{% for us in users %} "{{us.pk}}" {% if forloop.counter < users|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 dirids = [{% for d in dirs %} "{{d.pk}}" {% if forloop.counter < dirs|length %}, {% endif %} {% endfor %}];
|
|
|
|
$(document).ready(function(){
|
|
// FIRST CALL GROUPS, When Groups finished User will call by Groups
|
|
//createAgencyGroups(groupids[0]);
|
|
|
|
//DEV
|
|
addGroupFolder();
|
|
//addDirs(dirids[0]);
|
|
})
|
|
|
|
var groupcounter = 0;
|
|
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){
|
|
$("#groups_process_groups").append('<p>' + data['message'] + "</p>");
|
|
groupcounter += 1;
|
|
if(groupcounter < groupids.length){
|
|
createAgencyGroups(groupids[groupcounter]);
|
|
}
|
|
else {
|
|
createUsers(userids[0]);
|
|
}
|
|
}
|
|
},
|
|
error: function(e){
|
|
console.log(e);
|
|
}
|
|
});
|
|
}
|
|
|
|
var usercounter = 0;
|
|
function createUsers(userid){
|
|
$("#user_process").show();
|
|
$("#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}},
|
|
'userid' : userid
|
|
},
|
|
success: function(data){
|
|
if(data['status'] == true){
|
|
$("#user_process_user").append('<p>' + data['message'] + "</p>");
|
|
usercounter += 1;
|
|
if(usercounter < userids.length){
|
|
createUsers(userids[usercounter]);
|
|
}
|
|
else {
|
|
addGroupFolder();
|
|
}
|
|
}
|
|
},
|
|
error: function(e){
|
|
console.log(e);
|
|
}
|
|
});
|
|
}
|
|
|
|
var groupfolderid = "";
|
|
function addGroupFolder(){
|
|
$("#cloud_process").show();
|
|
$("#cloud_process_main").show();
|
|
$.ajax({
|
|
url: "{% url 'api:apiaddgf' %}",
|
|
headers: {
|
|
'Authorization':'Token {{ ncid }}',
|
|
"Access-Control-Allow-Origin" : "*"
|
|
},
|
|
method: 'POST',
|
|
dataType: 'json',
|
|
data: {
|
|
'agencyid' : {{agency.pk}},
|
|
},
|
|
success: function(data){
|
|
console.log(data);
|
|
if(data['status'] == true){
|
|
if(files[0] != undefined){
|
|
addFiles(files[0]);
|
|
}
|
|
}
|
|
},
|
|
error: function(e){
|
|
console.log(e);
|
|
}
|
|
});
|
|
}
|
|
|
|
filecounter = 0;
|
|
function addFiles(fileid){
|
|
$("#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}},
|
|
'fileid' : fileid,
|
|
},
|
|
success: function(data){
|
|
if(data['status'] == true){
|
|
$("#cloud_process_cloud").append('<p>' + data['message'] + "</p>");
|
|
filecounter += 1;
|
|
if(filecounter < files.length){
|
|
addFiles(files[filecounter]);
|
|
}
|
|
else {
|
|
if(dirids[0] != undefined){
|
|
addDirs(dirids[0]);
|
|
}
|
|
}
|
|
}
|
|
},
|
|
error: function(e){
|
|
console.log(e);
|
|
}
|
|
});
|
|
}
|
|
|
|
dircounter = 0;
|
|
function addDirs(dirid){
|
|
$("#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}},
|
|
'dirid' : dirid,
|
|
},
|
|
success: function(data){
|
|
if(data['status'] == true){
|
|
$("#cloud_process_cloud").append('<p>' + data['message'] + "</p>");
|
|
dircounter += 1;
|
|
if(dircounter < dirids.length){
|
|
console.log(dircounter < dirids.length);
|
|
addDirs(dirids[dircounter]);
|
|
}
|
|
else {
|
|
$("#migfinished").show();
|
|
}
|
|
}
|
|
},
|
|
error: function(e){
|
|
console.log(e);
|
|
}
|
|
});
|
|
}
|
|
</script>
|
|
</div>
|
|
{% endblock content %} |