mirror of https://github.com/Aidaho12/haproxy-wi
442 lines
12 KiB
JavaScript
442 lines
12 KiB
JavaScript
$( function() {
|
|
$("#backup_tabs").tabs();
|
|
$('#add-backup-button').click(function() {
|
|
addBackupDialog.dialog('open');
|
|
});
|
|
var backup_tabel_title = $( "#backup-add-table-overview" ).attr('title');
|
|
var addBackupDialog = $( "#backup-add-table" ).dialog({
|
|
autoOpen: false,
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 600,
|
|
modal: true,
|
|
title: backup_tabel_title,
|
|
show: {
|
|
effect: "fade",
|
|
duration: 200
|
|
},
|
|
hide: {
|
|
effect: "fade",
|
|
duration: 200
|
|
},
|
|
buttons: {
|
|
"Add": function () {
|
|
addBackup(this);
|
|
},
|
|
Cancel: function () {
|
|
$(this).dialog("close");
|
|
clearTips();
|
|
}
|
|
}
|
|
});
|
|
$('#add-backup-s3-button').click(function() {
|
|
addS3BackupDialog.dialog('open');
|
|
});
|
|
var s3_backup_tabel_title = $( "#s3-backup-add-table-overview" ).attr('title');
|
|
var addS3BackupDialog = $( "#s3-backup-add-table" ).dialog({
|
|
autoOpen: false,
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 600,
|
|
modal: true,
|
|
title: s3_backup_tabel_title,
|
|
show: {
|
|
effect: "fade",
|
|
duration: 200
|
|
},
|
|
hide: {
|
|
effect: "fade",
|
|
duration: 200
|
|
},
|
|
buttons: {
|
|
"Add": function () {
|
|
addS3Backup(this);
|
|
},
|
|
Cancel: function () {
|
|
$(this).dialog("close");
|
|
clearTips();
|
|
}
|
|
}
|
|
});
|
|
$('#add-git-button').click(function() {
|
|
addGitDialog.dialog('open');
|
|
});
|
|
var git_tabel_title = $( "#git-add-table-overview" ).attr('title');
|
|
var addGitDialog = $( "#git-add-table" ).dialog({
|
|
autoOpen: false,
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 600,
|
|
modal: true,
|
|
title: git_tabel_title,
|
|
show: {
|
|
effect: "fade",
|
|
duration: 200
|
|
},
|
|
hide: {
|
|
effect: "fade",
|
|
duration: 200
|
|
},
|
|
buttons: {
|
|
"Add": function () {
|
|
addGit(this);
|
|
},
|
|
Cancel: function () {
|
|
$(this).dialog("close");
|
|
clearTips();
|
|
}
|
|
}
|
|
});
|
|
$('#git-init').click(function() {
|
|
if ($('#git-init').is(':checked')) {
|
|
$('.git-init-params').show();
|
|
} else {
|
|
$('.git-init-params').hide();
|
|
}
|
|
});
|
|
$( "#ajax-backup-table input" ).change(function() {
|
|
var id = $(this).attr('id').split('-');
|
|
updateBackup(id[2])
|
|
});
|
|
$( "#ajax-backup-table select" ).on('selectmenuchange',function() {
|
|
var id = $(this).attr('id').split('-');
|
|
updateBackup(id[2])
|
|
});
|
|
$("#backup_tabs ul li").click(function() {
|
|
$('.menu li ul li').each(function () {
|
|
$(this).find('a').css('border-left', '0px solid var(--right-menu-blue-rolor)');
|
|
$(this).find('a').css('padding-left', '20px')
|
|
$(this).children(".backup").css('padding-left', '30px');
|
|
$(this).children(".backup").css('border-left', '4px solid var(--right-menu-blue-rolor)');
|
|
});
|
|
});
|
|
});
|
|
function loadBackup() {
|
|
$.ajax({
|
|
url: "/app/server/backup",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('danger') != '-1' || data.indexOf('unique') != '-1' || data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$('#backup').html(data);
|
|
$.getScript('/app/static/js/backup.js');
|
|
$("select").selectmenu();
|
|
$.getScript(awesome);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
function addBackup(dialog_id) {
|
|
var valid = true;
|
|
toastr.clear();
|
|
let allFields = $([]).add($('#backup-server')).add($('#rserver')).add($('#rpath')).add($('#backup-time')).add($('#backup-credentials'));
|
|
allFields.removeClass("ui-state-error");
|
|
valid = valid && checkLength($('#backup-server'), "backup server ", 1);
|
|
valid = valid && checkLength($('#rserver'), "remote server", 1);
|
|
valid = valid && checkLength($('#rpath'), "remote path", 1);
|
|
valid = valid && checkLength($('#backup-time'), "backup time", 1);
|
|
valid = valid && checkLength($('#backup-credentials'), "backup credentials", 1);
|
|
if (valid) {
|
|
$.ajax({
|
|
url: "/app/server/backup/create",
|
|
data: {
|
|
server: $('#backup-server').val(),
|
|
rserver: $('#rserver').val(),
|
|
rpath: $('#rpath').val(),
|
|
type: $('#backup-type').val(),
|
|
time: $('#backup-time').val(),
|
|
cred: $('#backup-credentials').val(),
|
|
description: $('#backup-description').val(),
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else if (data.indexOf('info: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.info(data);
|
|
} else if (data.indexOf('warning: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.warning(data);
|
|
} else {
|
|
common_ajax_action_after_success(dialog_id, 'newbackup', 'ajax-backup-table', data);
|
|
$("select").selectmenu();
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
function addS3Backup(dialog_id) {
|
|
var valid = true;
|
|
toastr.clear();
|
|
allFields = $([]).add($('#s3-backup-server')).add($('#s3_server')).add($('#s3_bucket')).add($('#s3_secret_key')).add($('#s3_access_key'))
|
|
allFields.removeClass("ui-state-error");
|
|
valid = valid && checkLength($('#s3-backup-server'), "backup server ", 1);
|
|
valid = valid && checkLength($('#s3_server'), "S3 server", 1);
|
|
valid = valid && checkLength($('#s3_bucket'), "S3 bucket", 1);
|
|
valid = valid && checkLength($('#s3_secret_key'), "S3 secret key", 1);
|
|
valid = valid && checkLength($('#s3_access_key'), "S3 access key", 1);
|
|
if (valid) {
|
|
$.ajax({
|
|
url: "/app/server/s3backup/create",
|
|
data: {
|
|
s3_backup_server: $('#s3-backup-server').val(),
|
|
s3_server: $('#s3_server').val(),
|
|
s3_bucket: $('#s3_bucket').val(),
|
|
s3_secret_key: $('#s3_secret_key').val(),
|
|
s3_access_key: $('#s3_access_key').val(),
|
|
time: $('#s3-backup-time').val(),
|
|
description: $('#s3-backup-description').val(),
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else if (data.indexOf('info: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.info(data);
|
|
} else if (data.indexOf('warning: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.warning(data);
|
|
} else if (data.indexOf('error: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.error(data);
|
|
} else {
|
|
common_ajax_action_after_success(dialog_id, 'newbackup', 'ajax-backup-s3-table', data);
|
|
$("select").selectmenu();
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
function addGit(dialog_id) {
|
|
var valid = true;
|
|
toastr.clear();
|
|
allFields = $([]).add($('#git-server')).add($('#git-service')).add($('#git-time')).add($('#git-credentials')).add($('#git-branch'))
|
|
allFields.removeClass("ui-state-error");
|
|
valid = valid && checkLength($('#git-server'), "Server ", 1);
|
|
valid = valid && checkLength($('#git-service'), "Service", 1);
|
|
valid = valid && checkLength($('#git-credentials'), "Credentials", 1);
|
|
valid = valid && checkLength($('#git-branch'), "Branch name", 1);
|
|
var git_init = 0;
|
|
if ($('#git-init').is(':checked')) {
|
|
git_init = '1';
|
|
}
|
|
if (valid) {
|
|
$.ajax({
|
|
url: "/app/server/git/create",
|
|
data: {
|
|
server: $('#git-server').val(),
|
|
git_service: $('#git-service').val(),
|
|
git_init: git_init,
|
|
git_repo: $('#git-repo').val(),
|
|
git_branch: $('#git-branch').val(),
|
|
time: $('#git-time').val(),
|
|
cred: $('#git-credentials').val(),
|
|
description: $('#git-description').val(),
|
|
git_deljob: 0,
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else if (data.indexOf('success: ') != '-1') {
|
|
common_ajax_action_after_success(dialog_id, 'newgit', 'ajax-git-table', data);
|
|
$("select").selectmenu();
|
|
} else if (data.indexOf('info: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.info(data);
|
|
} else if (data.indexOf('warning: ') != '-1') {
|
|
toastr.clear();
|
|
toastr.warning(data);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
function confirmDeleteBackup(id) {
|
|
$("#dialog-confirm").dialog({
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 400,
|
|
modal: true,
|
|
title: delete_word + " " + $('#backup-server-' + id).val() + "?",
|
|
buttons: [{
|
|
text: delete_word,
|
|
click: function () {
|
|
$(this).dialog("close");
|
|
removeBackup(id);
|
|
}
|
|
}, {
|
|
text: cancel_word,
|
|
click: function () {
|
|
$(this).dialog("close");
|
|
}
|
|
}]
|
|
});
|
|
}
|
|
function confirmDeleteS3Backup(id) {
|
|
$("#dialog-confirm").dialog({
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 400,
|
|
modal: true,
|
|
title: delete_word + " " + $('#backup-s3-server-' + id).val() + "?",
|
|
buttons: [{
|
|
text: delete_word,
|
|
click: function () {
|
|
$(this).dialog("close");
|
|
removeS3Backup(id);
|
|
}
|
|
}, {
|
|
text: cancel_word,
|
|
click: function () {
|
|
$(this).dialog("close");
|
|
}
|
|
}]
|
|
});
|
|
}
|
|
function confirmDeleteGit(id) {
|
|
$("#dialog-confirm").dialog({
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 400,
|
|
modal: true,
|
|
title: delete_word + " " + $('#git-server-' + id).text() + "?",
|
|
buttons: [{
|
|
text: delete_word,
|
|
click: function () {
|
|
$(this).dialog("close");
|
|
removeGit(id);
|
|
}
|
|
}, {
|
|
text: cancel_word,
|
|
click: function () {
|
|
$(this).dialog("close");
|
|
}
|
|
}]
|
|
});
|
|
}
|
|
function cloneBackup(id) {
|
|
$( "#add-backup-button" ).trigger( "click" );
|
|
$('#rserver').val($('#backup-rserver-'+id).val())
|
|
$('#rpath').val($('#backup-rpath-'+id).val())
|
|
$('#backup-type').val($('#backup-type-'+id+' option:selected').val()).change()
|
|
$('#backup-type').selectmenu("refresh");
|
|
$('#backup-time').val($('#backup-time-'+id+' option:selected').val()).change()
|
|
$('#backup-time').selectmenu("refresh");
|
|
$('#backup-credentials').val($('#backup-credentials-'+id+' option:selected').val()).change()
|
|
$('#backup-credentials').selectmenu("refresh");
|
|
}
|
|
function removeBackup(id) {
|
|
$("#backup-table-" + id).css("background-color", "#f2dede");
|
|
$.ajax({
|
|
url: "/app/server/backup/delete",
|
|
data: {
|
|
deljob: id,
|
|
cred: $('#backup-credentials-' + id).val(),
|
|
server: $('#backup-server-' + id).text(),
|
|
rserver: $('#backup-rserver-' + id).val(),
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('ok') != '-1') {
|
|
$("#backup-table-" + id).remove();
|
|
} else if (data.indexOf('error:') != '-1' || data.indexOf('unique') != '-1') {
|
|
toastr.error(data);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
function removeS3Backup(id) {
|
|
$("#backup-table-s3-" + id).css("background-color", "#f2dede");
|
|
$.ajax({
|
|
url: "/app/server/s3backup/delete",
|
|
data: {
|
|
dels3job: id,
|
|
s3_bucket: $('#bucket-' + id).text(),
|
|
s3_backup_server: $('#backup-s3-server-' + id).text(),
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('ok') != '-1') {
|
|
$("#s3-backup-table-" + id).remove();
|
|
} else if (data.indexOf('error:') != '-1' || data.indexOf('unique') != '-1') {
|
|
toastr.error(data);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
function removeGit(id) {
|
|
$("#git-table-" + id).css("background-color", "#f2dede");
|
|
$.ajax({
|
|
url: "/app/server/git/delete",
|
|
data: {
|
|
git_backup: id,
|
|
git_deljob: 1,
|
|
git_init: 0,
|
|
repo: 0,
|
|
branch: 0,
|
|
time: 0,
|
|
cred: $('#git-credentials-id-' + id).text(),
|
|
server: $('#git-server-id-' + id).text(),
|
|
git_service: $('#git-service-id-' + id).text(),
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('ok') != '-1') {
|
|
$("#git-table-" + id).remove();
|
|
} else if (data.indexOf('error:') != '-1' || data.indexOf('unique') != '-1') {
|
|
toastr.error(data);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
function updateBackup(id) {
|
|
toastr.clear();
|
|
if ($("#backup-type-" + id + " option:selected").val() == "-------" || $('#backup-rserver-' + id).val() == '' || $('#backup-rpath-' + id).val() == '') {
|
|
toastr.error('All fields must be completed');
|
|
} else {
|
|
$.ajax({
|
|
url: "/app/server/backup/update",
|
|
data: {
|
|
backupupdate: id,
|
|
server: $('#backup-server-' + id).text(),
|
|
rserver: $('#backup-rserver-' + id).val(),
|
|
rpath: $('#backup-rpath-' + id).val(),
|
|
type: $('#backup-type-' + id).val(),
|
|
time: $('#backup-time-' + id).val(),
|
|
cred: $('#backup-credentials-' + id).val(),
|
|
description: $('#backup-description-' + id).val(),
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function (data) {
|
|
data = data.replace(/\s+/g, ' ');
|
|
if (data.indexOf('error:') != '-1' || data.indexOf('unique') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
toastr.clear();
|
|
$("#backup-table-" + id).addClass("update", 1000);
|
|
setTimeout(function () {
|
|
$("#backup-table-" + id).removeClass("update");
|
|
}, 2500);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|