//CHARGEMENT DE LA PAGE function init_plugin_docker(){ switch($.urlParam('page')){ case 'sheet.docker.environment': docker_environment_change_ssl(); $('#docker-environment-tab li a').click(function(){ var tab = $(this).attr("href").substring(1); $("#docker-environment-tab-content").load("action.php?action=docker_environment_tab&id="+$.urlParam('id')+"&tab="+tab,function(){ init_components("#docker-environment-tab-content"); }); }); if($.urlParam('id')){ $('.docker .environment-detail').removeClass('hidden'); $('#docker-environment-tab li:eq(0) a').click(); } break; default: break; } } //Enregistrement des configurations function docker_setting_save(){ $.action({ action : 'docker_setting_save', fields : $('#docker-setting-form').toJson() },function(){ $.message('info','Configuration enregistrée'); }); } /** DOCKERENVIRONMENT **/ //Récuperation d'une liste de dockerenvironment dans le tableau #dockerenvironments function docker_environment_search(callback,exportMode){ var box = new FilterBox('#filters'); $('#docker-environments').fill({ action:'docker_environment_search', filters : box.filters(), sort : $('#docker-environments').sortable_table('get'), export: !exportMode ? false : exportMode },function(response){ $('.results-count span').text(response.pagination.total); if(callback!=null) callback(); }); } //Ajout ou modification d'élément dockerenvironment function docker_environment_save(){ var data = $('#docker-environment-form').toJson(); $.action(data,function(r){ $('#docker-environment-form').attr('data-id',r.id); $.urlParam('id',r.id); $.message('success','Enregistré'); $('.docker .environment-detail').removeClass('hidden'); }); } function docker_environment_docker_create(event){ event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_docker_create'; $('.btn-docker-create').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); $.message('success','Créé'); }); } function docker_environment_docker_remove(event){ if(!confirm('Êtes vous sûr de vouloir supprimer ce conteneur ? Toutes les données seront supprimées')) return; event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_docker_remove'; $('.btn-docker-remove').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); $.message('success','Supprimé'); }); } function docker_environment_pma_create(event){ event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_pma_create'; $('.btn-pma-create').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); $.message('success','Créé'); }); } function docker_environment_pma_remove(event){ event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_pma_remove'; $('.btn-pma-remove').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); $.message('success','Créé'); }); } function docker_environment_utm_create(event){ event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_utm_create'; $('.btn-utm-create').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); $.message('success','Créé'); }); } function docker_environment_domain_create(event){ event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_domain_create'; $('.btn-domain-create').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); $.message('success','Créé'); }); } function docker_environment_git_create(event){ event.stopPropagation(); var data = $('#docker-environment-form').toJson(); data.action='docker_environment_git_create'; $('.btn-git-create').addClass('btn-preloader'); $.action(data,function(r){ $('#logs').html(r.logs); document.location.reload(true); $.message('success','Créé'); }); } function docker_environment_migrate_path(){ var tpl = $('template.migrationPath').html(); var data = {}; data.login = $('#login').val(); data.password = $('#password').val(); data.ip = $('#ip').val(); data.root = $('#root').val(); data.relative_destination = data.root.split('/'); data.relative_destination = data.relative_destination.splice(-1,1); data.relative_destination = data.relative_destination[0]; var chain = Mustache.render(tpl,data); $('code.migrationPath').html(chain); } function docker_environment_change_ssl(){ var ssl = $('#ssl').prop('checked'); if(!ssl){ $('#certificate-block').addClass('hidden'); return; } $('#certificate-block').removeClass('hidden'); $('#certificate').html(''); $.action({ action : 'docker_environment_certificate_search', },function(r){ $('#certificate').html(''); var preset = $('#certificate').attr('data-value'); for(var k in r.rows){ $('#certificate').append(''); } }); } //Suppression d'élement dockerenvironment function docker_environment_delete(element){ if(!confirm('Êtes vous sûr de vouloir supprimer cet item ?')) return; var line = $(element).closest('tr'); $.action({ action : 'docker_environment_delete', id : line.attr('data-id') },function(r){ line.remove(); $.message('info','Élement supprimé'); }); } /** MACHINE **/ //Récuperation d'une liste machine dans le tableau #machines function docker_machine_search(callback,exportMode){ var box = new FilterBox('#filters'); $('#machines').fill({ action:'docker_machine_search', filters: box.filters(), sort: $('#machines').sortable_table('get'), export: !exportMode ? false : exportMode },function(response){ $('.results-count span').text(response.pagination.total); if(callback!=null) callback(); }); } //Ajout ou modification machine function docker_machine_save(){ var data = $('#machine-form').toJson(); $.action(data,function(r){ $('#machine-form').attr('data-id',r.id); $.urlParam('id',r.id); $.message('success','Enregistré'); }); } //Suppression machine function docker_machine_delete(element){ if(!confirm('Êtes vous sûr de vouloir supprimer cet item ?')) return; var line = $(element).closest('.item-line'); $.action({ action: 'docker_machine_delete', id: line.attr('data-id') },function(r){ line.remove(); $.message('info','Item supprimé'); }); }