console.log(); let uchip = null; let domain_list = JSON.parse('{{mod.domains|json_encode|raw}}'); let domain_table = null; let subs_qty = {{mod.sub_domain_accounts}}; $(document).ready(function() { {% if mod.isie == 1 %} uchip = new $.Uchip(); {% else %} uchip = new Uchip(); {% endif %} table_domain(domain_list); $('[data-toggle="tooltip"]').tooltip() $('#newdomain').keyup(function(ev) { let newpath = $(this).val(); $('#pathdomain').val(newpath); }); $('#ssl_checkbox').change(function(){ if($(this).is(':checked')){ $('#san_selector').slideDown('fast'); $('#alert_info').fadeIn(); }else{ $('#san_selector').slideUp('fast'); $('#alert_info').fadeOut(); } }); }); function sendNewDomain(new_domain_data){ } function validateDomainSSL(data){ uchip.call('module=domains&acc=validdomains', { data: data, callback: function(response){ } }); } function saveNewDomain(){ let newdomain = $('#newdomain').val(); if(uchip.validator('#newdomain')){ let directory = $('#dirsel').text(); directory = directory.charAt(directory.length-1) == '/' ? directory : directory + '/'; let pathdomain = directory + $('#pathdomain').val(); if(pathdomain == '/'){ $('#pathdomain').addClass('error'); noti_bubble('{{langmod.DOMINVALIDPATH}}','{{langmod.DERROR}}','error',false,false,'3000',true); return false; } let autossl = 0; let sans_selected = []; if($('#ssl_checkbox').is(':checked')){ autossl = 1; let sans = $('.san-checkbox:checked'); if({{mod.sub_domain_pack}} > -1){ if((sans.length > {{mod.sub_domain_pack}} - subs_qty) && subs_qty > 0){ noti_bubble('{{langmod.DOMSUBLIMIT}}'+sans.length+' >>{{mod.sub_domain_pack}} '+subs_qty,'{{langmod.DERROR}}','error',false,false,'3000',true); return; } } sans.each(function(){ sans_selected.push($(this).val()); }); } uchip.handleButton('.btn-save-domain','fa-floppy-o'); uchip.handleButton('.btn-cancel-domain','fa-ban'); let new_domain_data = 'newdomain=' + $('#newdomain').val() + '&pathdomain=' + pathdomain + '&autossl=' + autossl + '&sans_selected=' + sans_selected.join(','); // if(autossl == 0){ uchip.call('module=domains&acc=newdomain', { data: new_domain_data, callback: function(response){ if(response.result != 'success'){ let message = ''; if(response.code == 1){ message = '{{langmod.DOMINVALIDDOM}}'; }else if(response.code == 2){ message = '{{langmod.DOMINVALIDPATH}}'; }else if(response.code == 409){ message = '{{langmod.DOMINVLIMITEX}}'; }else{ message = response.code; } noti_bubble(message,'{{langmod.DERROR}}','error',false,false,'3000',true); }else{ if(autossl == 1){ if(response.ssl_status.type == 'created' && response.ssl_status.san_excluded.length == 0){ noti_bubble('{{langmod.DOMSSLSUCCESS}}','{{langmod.DSUCCT}}','success',false,false,'3000',true); }else if(response.ssl_status.type == 'created' && response.ssl_status.san_excluded.length > 0){ noti_bubble('{{langmod.DOMSSLSUCCESS}}
' + '{{langmod.DOMREDIRWARNING}}
' + response.ssl_status.san_excluded.join(', '),'{{langmod.DSUCCT}}','warning',false,false,'6500',true); }else{ noti_bubble('{{langmod.DDOMAINEXIT}}
' + '{{langmod.DOMREDIRWARNING2}}','{{langmod.DSUCCT}}','warning',false,false,'6500',true); } }else { noti_bubble('{{langmod.DDOMAINEXIT}}','{{langmod.DSUCCT}}','success',false,false,'3000',true); } table_domain(response.list); calculateQuota(); cancelNewForm(); } uchip.handleButton('.btn-save-domain','fa-floppy-o', true); uchip.handleButton('.btn-cancel-domain','fa-ban', true); } }); // } } } function showExplorerEdit(path,domain){ $('#dir_explorer_domainEdit .modal-body').html('
'); $('#dir_explorer_domainEdit').modal('show'); callDirListEdit(path,domain); } function showExplorer(){ $('#dir_explorer_domain .modal-body').html('
'); $('#dir_explorer_domain').modal('show'); callDirList($('#dirsel').text()); } function changepath(domain,path){ showExplorerEdit(path.replace('/home/{{users}}',''),domain); return false; } function callDirListEdit(directory,domain){ uchip.handleButton('#sel_path_btnEdit', 'fa-thumb-tack'); $('#dir_explorer_domainEdit .modal-body').html('
'); uchip.call('module=domains&acc=dirlist', { data: 'basedir=' + directory, callback: function(response){ directory = directory.charAt(directory.length-1) == '/' ? directory : directory + '/'; renderDirSelectorEdit(directory, response,domain); uchip.handleButton('#sel_path_btnEdit', 'fa-thumb-tack', true); } }); } function selCurrentPath(){ let curpath = $('#current_path_dirsel').val(); $('.dir-sel-btn').attr('data-original-title',curpath); $('#dirsel').text(curpath); $('#dir_explorer_domain').modal('hide'); } function selCurrentPathEdit(){ let curpath = $('#current_path_dirselEdit').val(); $('.dir-sel-btn').attr('data-original-title',curpath); uchip.call('module=domains&acc=changepath', { data: 'path=' + curpath+'&domain='+$('#dir_explorer_domainEdit #domain').val()+'&type=domain', callback: function(response){ noti_bubble('{{langmod.DDOMAINEXIT}}','{{langmod.DSUCCT}}','success',false,false,'3000',true); table_domain(response.list); $('#dir_explorer_domainEdit').modal('hide'); } }); uchip.call('module=fix_acc_perm&acc=accFixIssues', { data: 'fix_permissions=1&internalError=0&removeHandler=0', callback: function(response){ return false; } }); } function callDirList(directory){ uchip.handleButton('#sel_path_btn', 'fa-thumb-tack'); $('#dir_explorer_domain .modal-body').html('
'); uchip.call('module=domains&acc=dirlist', { data: 'basedir=' + directory, callback: function(response){ directory = directory.charAt(directory.length-1) == '/' ? directory : directory + '/'; renderDirSelector(directory, response); uchip.handleButton('#sel_path_btn', 'fa-thumb-tack', true); } }); } function renderDirSelector(base, dirs){ let dirs_html = ''; dirs.forEach((dir) => { dirs_html += '
' + '
' + '' + dir + '
' + '
'; }); let html = ''; $('#dir_explorer_domain .modal-body').html(html); $('.dir-item').mouseover(function() { $(this).find('.fa').removeClass('fa-folder-o').addClass('fa-folder-open-o'); }) .mouseout(function() { $(this).find('.fa').removeClass('fa-folder-open-o').addClass('fa-folder-o'); }).click(function(){ let curpath = $('#current_path_dirsel').val(); let dir = $(this).data('dir'); if(dir == '..'){ let pieces = curpath.split('/'); pieces.pop(); pieces.pop(); dir = pieces.join('/') }else{ dir = curpath + dir; } callDirList(dir); }); $('#dir_list').slideDown('fast'); } function renderDirSelectorEdit(base, dirs,domain){ $("#dir_explorer_domainEdit #domain").val(domain); let dirs_html = ''; dirs.forEach((dir) => { dirs_html += '
' + '
' + '' + dir + '
' + '
'; }); let html = ''; $('#dir_explorer_domainEdit .modal-body').html(html); $('.dir-item').mouseover(function() { $(this).find('.fa').removeClass('fa-folder-o').addClass('fa-folder-open-o'); }) .mouseout(function() { $(this).find('.fa').removeClass('fa-folder-open-o').addClass('fa-folder-o'); }).click(function(){ let curpath = $('#current_path_dirselEdit').val(); let dir = $(this).data('dir'); if(dir == '..'){ let pieces = curpath.split('/'); pieces.pop(); pieces.pop(); dir = pieces.join('/') }else{ dir = curpath + dir; } callDirListEdit(dir,domain); }); $('#dir_listEdit').slideDown('fast'); } function table_domain(list){ domain_list = list; if(domain_list.length > 0){ let html_content = ''; let index = 0; domain_list.forEach(function(domain){ let ssl_stats = ''; if (domain.ssl != 0){ ssl_stats = ''; } let subdomains = ''; if(domain.sub > 0){ subdomains = ''; } let bandwidth_container = ''; if({{mod.pack_bandwidth}} > -1){ let barcolor = uchip.getBarColor(domain.porbanw); bandwidth_container = '
' + '
' + '
' + uchip.humanFileSize(domain.banw * 1024 * 2014) + ' / ' + uchip.humanFileSize({{mod.pack_bandwidth}} * 1024 * 1024); }else{ bandwidth_container = '
' + '
' + '
' + uchip.humanFileSize(domain.banw * 1024 * 2014) + ' / MB'; } let sublist = domain.sub_list.map(function(sub){ return sub.sub + '.' + sub.domain}).join(','); html_content += '' + '' + domain.domain + ' ' + '{{users}}' + '' + domain.path + ' ' + '' + bandwidth_container + '' + '' + subdomains + '' + '' + ssl_stats + '' + '' + '' + '' + ''; index++; }); let table_html = '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + html_content + '' + '
{{langmod.DDOMAIN}}{{langmod.DUSER}}{{langmod.DPATH}}{{langmod.DONLABEL11}}{{langmod.DSUB}}{{langmod.DONLABEL9}}{{langmod.DACTION}}
'; $('#table_domains_wrapper').html(table_html); $('.domain_table').DataTable().destroy(); domain_table = $('.domain_table').DataTable(); $('[data-toggle="tooltip"]').tooltip() }else{ $('#table_domains_wrapper').html('

{{langmod.DOMNOTCREATED}}

'); } } function showNewDomainForm(){ uchip.slideToggle('#new_form_wrapper','#list_wrapper'); } function cancelNewForm(){ uchip.slideToggle('#list_wrapper','#new_form_wrapper', function(){ $('#newdomain').val(''); $('#dirsel').text('/'); $('#pathdomain').val(''); $('#ssl_checkbox').prop('checked', false); $('.san-checkbox').prop('checked', false); $('.dir-sel-btn').attr('data-original-title','{{langmod.DOMCHOOBPAT}}'); $('#san_selector').hide(); }); } function calculateQuota(){ let plan = {{mod.domain_pack}}; $('#domains_used').text(domain_list.length); if(plan >= 0){ if(domain_list.length == plan){ $('#btn_add_domain').addClass('disabled'); $('#btn_add_domain').prop('disabled', true) }else{ $('#btn_add_domain').removeClass('disabled'); $('#btn_add_domain').prop('disabled', false) } let percent = ((domain_list.length * 100) / plan).toFixed(0); $('.stat-percent').text(percent + '%'); let barcolor = uchip.getBarColor(percent); $('#bardomindpor').removeClass(); $('#bardomindpor').addClass(barcolor); $('#bardomindpor').width(percent + '%'); } } function domaindelete(st,domain, index){ let sublist = $('#btn_del_' + index).data('sublist'); if(sublist != ''){ sublist = sublist.split(','); } if(st == 0){ // if(){ // // } let strheader = '' + ''; let strbody = '

{{langmod.DOMDELW1}}
' + '' + domain + ''; if(sublist != ''){ strbody += '

{{langmod.DOMDELW2}} ' + (sublist.length > 1 ? '{{langmod.DOMDELSUBPLU}}' : '{{langmod.DOMDELSUBSING}}') + ':
' + sublist.map(function(sub){ return '' + sub + ''}).join('
') + '
{{langmod.DOMDELSUBW}}
'; } strbody += '
{{langmod.DOMDELCONF}}

'; let strfooter = '' + ''; $("#deletemodaldomain .modal-footer").html(strfooter); $("#deletemodaldomain .modal-body").html(strbody); $("#deletemodaldomain .modal-header").html(strheader); $("#deletemodaldomain").modal('toggle'); }else{ $("#deletemodaldomain").modal('hide'); uchip.handleButton('#btn_del_' + index,'fa-trash'); let tr = $('#trdomain_' + index); tr.addClass('deleting_tr'); uchip.call('module=domains&acc=domaindelete', { data: 'domain=' + domain, callback: function(response){ if(response.result == 'success'){ noti_bubble('{{langmod.DSUCCT}}','{{langmod.DDELDOMAINALERT}}','success',false,false,'3000',true); tr.slideUp('fast', function(){ domain_table.row(this).remove().draw(); }); domain_list.splice(index, 1); calculateQuota(); subs_qty -= sublist.length; }else{ let message = ''; if(response.code == 1){ message = '{{langmod.DDELDOMAINALERTSUB}}'; }else{ message = '{{langmod.DOMERROUNKNOW}}'; } tr.removeClass('deleting_tr'); uchip.handleButton('#btn_del_' + index,'fa-trash', true); noti_bubble(message,'Error','error',false,false,'3000',true); } } }); } } function btn_save_domain(){ btnporcess('off','btn_save_domain','{{ langmod.DONLABEL10 }}'); if($("#newdomain").val()=='' || $("#pathdomain").val()==''){ noti_bubble('{{langmod.DDATEALL}}','{{langmod.DERROR}}','error',false,false,'3000',true); btnporcess('on','btn_save_domain','{{ langmod.DBNTADD }}'); return false; }else{ if ($('#autossl').prop('checked')){ var autossl=1; } else{ var autossl=0; } $.ajaxSetup({ headers: { 'csrftoken' : '{{ tokenajax }}' } }); $.ajax({ type: "POST", url: "./{{users}}/index.php?module=domains&acc=btn_save_domain", data: "newdomain="+$("#newdomain").val()+"&pathdomain="+$("#pathdomain").val()+"&autossl="+autossl, complete: function(datos){ //alert(datos.responseText); if(datos.responseText!='OK'){ noti_bubble(datos.responseText,'{{langmod.DERROR}}','error',false,false,'3000',true); btnporcess('on','btn_save_domain','{{ langmod.DBNTADD }}'); }else{ $("#newdomain").val(''); $("#pathdomain").val('/public_html/'); domainrefres(); refrespanelnew('domains'); noti_bubble('{{langmod.DDOMAINEXIT}}','{{langmod.DSUCCT}}','success',false,false,'3000',true); btnporcess('on','btn_save_domain','{{ langmod.DBNTADD }}'); canceladd(); } return false; } }); } } function btnadddomain(){ var headervar=''; var bodyvar='
{{ langmod.DDOMAIN }}:
{{ langmod.DPATH }}: /home/{{ users }}
{{ langmod.DONLABEL8 }}

{{ langmod.DONLABEL7 }}

'; var btnvar=' '; $("#addmodal .modal-header").html(headervar); $("#addmodal .modal-body").html(bodyvar); $("#addmodal .modal-footer").html(btnvar); $("#addmodal").modal('toggle'); } function domainrefres(){ $.ajaxSetup({ headers: { 'csrftoken' : '{{ tokenajax }}' } }); $.ajax({ type: "POST", url: "./{{users}}/index.php?module=domains&acc=domainrefres", complete: function(datos){ $('.dataTables-example').DataTable().destroy(); $("#contenttr").html(datos.responseText); $('.dataTables-example').DataTable(); return false; } }); } function canceladd(){ $("#addmodal").modal('hide'); }