let next_table = null;
let next_list = null;
function nextTable(list){
next_list = list;
if(next_list.length > 0){
let html_content = '';
let index = 0;
next_list.forEach(function(installation){
let insturl = installation.hasOwnProperty('url') ? installation.url : 'http://' + installation.domain;
let dbinf = '';
if(installation.hasOwnProperty('db_result') && installation.db_result.result != 'success'){
let dbtitle = '{{langmod.ADDDBNOT}}: ' + handleDBError(installation.db_result.code);
dbinf = '<span class="fa-stack fa-xs" title="' + dbtitle + '" data-toggle="tooltip" data-placement="top" aria-hidden="true">' +
'<i class="fa fa-circle fa-stack-2x"></i>' +
'<i class="fa fa-info fa-stack-1x fa-inverse"></i>' +
'</span>';
}
html_content += '<tr id="tdnext_' + index + '">' +
'<td>' + installation.domain + '<br>' +
'<a href="' + insturl + '" target="_blank">' + insturl + '</a></td>' +
'<td><div class="addon-td-item">' + installation.path + '</div></td>' +
'<td><div class="addon-td-item">' + installation.version + '</div></td>' +
'<td>' +
'<div class="database-info-td">' +
'<div><b>{{langmod.ADDSHORTDB}}: </b> ' + installation.nextbd + '<br><b>{{langmod.ADDSHORTUDB}}: </b>' + installation.nextuserdb + '</div>' +
dbinf +
'</div>' +
'</td>' +
'<td>' +
'<div class="addon-td-item text-center"><button title="{{langmod.ADDDWP3}}" data-traddon="#tdnext_' + index + '" data-type="next" data-installation=\'' + JSON.stringify(installation) + '\' data-toggle="tooltip" data-placement="top" aria-hidden="true" class="btn btn-danger btn-xs btn-delete" onclick="return deleteAddon(this, 0)">' +
'<i aria-hidden="true" class="fa fa-trash"></i>' +
'</button></div>' +
'</td>' +
'</tr>';
index++;
});
let table_html = '<table class="table table-striped next-table">' +
'<thead>' +
'<tr>' +
'<th>{{langmod.ADDDOMLAB}}</th>' +
'<th>{{langmod.ADDPATHLAB}}</th>' +
'<th>{{langmod.ADDVERLAB}}</th>' +
'<th>{{langmod.ADDBDUDB}}</th>' +
'<th class="text-center"></th>' +
'</tr>' +
'</thead>' +
'<tbody id="trpaneljl">' +
html_content +
'</tbody>' +
'</table>';
$('#table_next_container').html(table_html);
$('.next-table').DataTable().destroy();
next_table = $('.next-table').DataTable();
}else{
$('#table_next_container').html('<div class="empty_list"><h4 class="text-success">Thre\'s not NextCloud installations</h4></div>');
}
$('[data-toggle="tooltip"]').tooltip();
}
function nextInit(){
if(next_list == null){
nextReList();
}
}
function nextReList(){
$('#table_next_container').html(loader);
getList('next', function(response){
nextTable(response);
});
}
function cancelnext(idCollapse){
uchip.slideToggle('#next_list','#next_form', function(){
});
$('#nextdomain').val('');
$('#nextpach').val('next');
$('#nextpassbd').val('');
$('#nextpassbd').pwstrength('forceUpdate');
$('#nextbd').val('next{{mod.extra_data.randbd}}');
$('#nextuserdb').val('next{{mod.extra_data.randbd}}');
uchip.validator('.reqnext', true);
cancelGeneral(idCollapse);
}
function addNext(){
if(uchip.validator('.reqnext')){
let psurl = $("#nexturl").val();
let psdomain = $("#nextdomain").val();
let psbd = $("#nextbd").val();
let psuserdb = $("#nextuserdb").val();
let psuseradmin = $("#nextuseradmin").val();
let psuserpass = $("#nextuserpass").val();
let psuseremail = $("#nextuseremail").val();
let pspassbd = $("#nextpassbd").val();
let pspach = $("#nextpach").val();
let dompath = $('#nextdomain option:selected').data('path');
let domssl = $('#nextdomain option:selected').data('ssl');
let data = 'nextuseremail='+psuseremail+'&nextuserpass='+psuserpass+'&nextuseradmin='+psuseradmin+'&nexturl=' + psurl + '&nextdomain=' + psdomain + '&nextbd=' + psbd + '&nextuserdb=' + psuserdb + '&nextpassbd=' + pspassbd +
'&nextpach=' + pspach + '&dompath=' + dompath + '&domssl=' + domssl;
let details = [
{
title : '{{langmod.ADDDOMLAB}}',
value : psdomain
},
{
title : '{{langmod.ADDURLLAB}}',
value : (domssl == 1 ? 'https' : 'http') + '://' + psdomain + '/' + pspach
},
{
title : '{{langmod.ADDPATHLAB}}',
value : dompath + '/' + pspach
},
{
title : '{{langmod.ADDDWP20}}',
value : psbd
},
{
title : '{{langmod.ADDDBUSERLAB}}',
value : psuserdb
}
];
confirmInstallation({
type: 'next',
script: 'NextCloud',
data : data,
wholepath: dompath + '/' + pspach,
callback: function(response){
if(response.hasOwnProperty('result') && response.result == 'success'){
if(response.db_result.result != 'success'){
noti_bubble('{{langmod.ADDINSTALLDET}} ' + handleDBError(response.db_result.code),'{{langmod.ADDATENTION}}!','warning',false,false,'6500',true);
}else{
noti_bubble('{{langmod.ADDINSTALLSUCC}}','{{langmod.SUCCESS}}','success',false,false,'3000',true);
}
}else{
noti_bubble('{{langmod.ADDERRORGEN}}','{{langmod.FERROR}}','error',false,false,'3000',true);
}
var variableHTML='';
var modulin='next';
if($("#instaled_"+modulin).html()==undefined){
variableHTML+='<div class="panel panel-default" id="instaled_'+modulin+'">'+
' <div class="panel-heading white-bg script-container-title">'+
'<a class="accordion-toggle" style="width: 100%" data-toggle="collapse" ' +
'aria-expanded="true" aria-controls="panel_'+modulin+'_container" ' +
'data-parent="#accordion1" data-target="#panel_'+modulin+'_container">'+
'<h4 class="panel-title"><i class="more-less glyphicon-plus font-weight-bolder"></i></h4>' +
'<h4 class="panel-title">Nextcloud Installations</h4></a></div>' +
'<div id="panel_'+modulin+'_container" class="panel-collapse collapse">' +
'<div class="panel-body" id="table_'+modulin+'_container"><div class="table_cron_loader"><span>' +
'<i class="fa fa-circle-o-notch fa-spin"></i></span></div></div></div></div>'
$( "#accordion1" ).append( variableHTML );
$(".accordion-toggle").click(function(){
$("#"+$(this).prop('data-target')).slideToggle('slow');
});
}
$("#instaledEmpty").hide();
nextTable(response.list);
cancelnext('next');
},
details: details
});
}else{
noti_bubble('{{langmod.ADDREQFIELDS}}','{{langmod.FERROR}}','error',false,false,'3000',true);
}
}
|