mirror of https://github.com/Aidaho12/haproxy-wi
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
392 lines
9.8 KiB
392 lines
9.8 KiB
var cur_url = window.location.href.split('/').pop();
|
|
cur_url = cur_url.split('?');
|
|
function showHapservers(serv, hostnamea, service) {
|
|
var i;
|
|
for (i = 0; i < serv.length; i++) {
|
|
showHapserversCallBack(serv[i], hostnamea[i], service)
|
|
}
|
|
}
|
|
function showHapserversCallBack(serv, hostnamea, service) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
act: "overviewHapservers",
|
|
serv: serv,
|
|
service: service,
|
|
token: $('#token').val()
|
|
},
|
|
beforeSend: function() {
|
|
$("#"+hostnamea).html('<img class="loading_small_haproxyservers" src="/inc/images/loading.gif" />');
|
|
},
|
|
type: "POST",
|
|
success: function( data ) {
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$("#" + hostnamea).empty();
|
|
$("#" + hostnamea).html(data);
|
|
}
|
|
}
|
|
} );
|
|
}
|
|
function overviewHapserverBackends(serv, hostnamea, service) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
act: "overviewHapserverBackends",
|
|
serv: serv[0],
|
|
service: service,
|
|
token: $('#token').val()
|
|
},
|
|
beforeSend: function() {
|
|
$("#top-"+hostnamea).html('<img class="loading_small" style="padding-left: 45%;" src="/inc/images/loading.gif" />');
|
|
},
|
|
type: "POST",
|
|
success: function( data ) {
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$("#top-" + hostnamea).empty();
|
|
$("#top-" + hostnamea).html(data);
|
|
}
|
|
}
|
|
} );
|
|
}
|
|
function showOverview(serv, hostnamea) {
|
|
showOverviewHapWI()
|
|
var i;
|
|
for (i = 0; i < serv.length; i++) {
|
|
showOverviewCallBack(serv[i], hostnamea[i])
|
|
}
|
|
}
|
|
function showOverviewCallBack(serv, hostnamea) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
act: "overview",
|
|
serv: serv,
|
|
token: $('#token').val()
|
|
},
|
|
beforeSend: function() {
|
|
$("#"+hostnamea).html('<img class="loading_small" src="/inc/images/loading.gif" />');
|
|
},
|
|
type: "POST",
|
|
success: function( data ) {
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$("#" + hostnamea).empty();
|
|
$("#" + hostnamea).html(data);
|
|
}
|
|
}
|
|
} );
|
|
}
|
|
function showOverviewServer(name,ip,id, service) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
act: "overviewServers",
|
|
name: name,
|
|
serv: ip,
|
|
id: id,
|
|
service: service,
|
|
page: 'hapservers.py',
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function( data ) {
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$("#ajax-server-" + id).empty();
|
|
$("#ajax-server-" + id).css('display', 'block');
|
|
$("#ajax-server-" + id).css('background-color', '#fbfbfb');
|
|
$("#ajax-server-" + id).css('border', '1px solid #A4C7F5');
|
|
$(".ajax-server").css('display', 'block');
|
|
$(".div-server").css('clear', 'both');
|
|
$(".div-pannel").css('clear', 'both');
|
|
$(".div-pannel").css('display', 'block');
|
|
$(".div-pannel").css('padding-top', '10px');
|
|
$(".div-pannel").css('height', '70px');
|
|
$("#div-pannel-" + id).insertBefore('#up-pannel')
|
|
$("#ajax-server-" + id).html(data);
|
|
$.getScript("/inc/fontawesome.min.js")
|
|
getChartDataHapWiRam()
|
|
getChartDataHapWiCpu()
|
|
}
|
|
}
|
|
} );
|
|
|
|
}
|
|
function ajaxActionServers(action, id) {
|
|
var bad_ans = 'Bad config, check please';
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
action_hap: action,
|
|
serv: id,
|
|
token: $('#token').val()
|
|
},
|
|
success: function( data ) {
|
|
data = data.replace(/\s+/g,' ');
|
|
if( data == 'Bad config, check please ' ) {
|
|
toastr.error(data);
|
|
} else {
|
|
if (cur_url[0] == "hapservers.py") {
|
|
location.reload()
|
|
} else {
|
|
setTimeout(showOverview(ip, hostnamea), 2000)
|
|
}
|
|
}
|
|
},
|
|
error: function(){
|
|
alert(w.data_error);
|
|
}
|
|
} );
|
|
}
|
|
function ajaxActionNginxServers(action, id) {
|
|
var bad_ans = 'Bad config, check please';
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
action_nginx: action,
|
|
serv: id,
|
|
token: $('#token').val()
|
|
},
|
|
success: function( data ) {
|
|
data = data.replace(/\s+/g,' ');
|
|
if( data == 'Bad config, check please ' ) {
|
|
alert(data);
|
|
} else {
|
|
if (cur_url[0] == "hapservers.py") {
|
|
location.reload()
|
|
} else {
|
|
setTimeout(showOverview(ip, hostnamea), 2000)
|
|
}
|
|
}
|
|
},
|
|
error: function(){
|
|
alert(w.data_error);
|
|
}
|
|
} );
|
|
}
|
|
function ajaxActionWafServers(action, id) {
|
|
var bad_ans = 'Bad config, check please';
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
action_waf: action,
|
|
serv: id,
|
|
token: $('#token').val()
|
|
},
|
|
success: function( data ) {
|
|
data = data.replace(/\s+/g,' ');
|
|
if( data == 'Bad config, check please ' ) {
|
|
toastr.error(data);
|
|
} else {
|
|
setTimeout(showOverviewWaf(ip, hostnamea), 2000)
|
|
}
|
|
},
|
|
error: function(){
|
|
alert(w.data_error);
|
|
}
|
|
} );
|
|
}
|
|
$( function() {
|
|
ChartsIntervalId = setInterval(updatingCpuRamCharts, 30000);
|
|
$(window).focus(function(){
|
|
ChartsIntervalId = setInterval(updatingCpuRamCharts, 30000);
|
|
});
|
|
$(window).blur(function(){
|
|
clearInterval(ChartsIntervalId);
|
|
});
|
|
$( "#show-all-users" ).click( function() {
|
|
$( ".show-users" ).show("fast");
|
|
$( "#show-all-users" ).text("Hide");
|
|
$( "#show-all-users" ).attr("title", "Hide all users");
|
|
$( "#show-all-users" ).attr("id", "hide-all-users");
|
|
|
|
$("#hide-all-users").click(function() {
|
|
$( ".show-users" ).hide("fast");
|
|
$( "#hide-all-users" ).attr("title", "Show all users");
|
|
$( "#hide-all-users" ).text("Show all");
|
|
$( "#hide-all-users" ).attr("id", "show-all-users");
|
|
});
|
|
});
|
|
|
|
$( "#show-all-groups" ).click( function() {
|
|
$( ".show-groups" ).show("fast");
|
|
$( "#show-all-groups" ).text("Hide");
|
|
$( "#show-all-groups" ).attr("title", "Hide all groups");
|
|
$( "#show-all-groups" ).attr("id", "hide-all-groups");
|
|
|
|
$( "#hide-all-groups" ).click( function() {
|
|
$( ".show-groups" ).hide("fast");
|
|
$( "#hide-all-groups" ).attr("title", "Show all groups");
|
|
$( "#hide-all-groups" ).text("Show all");
|
|
$( "#hide-all-groups" ).attr("id", "show-all-groups");
|
|
});
|
|
});
|
|
|
|
$( "#show-all-haproxy-wi-log" ).click( function() {
|
|
$( ".show-haproxy-wi-log" ).show("fast");
|
|
$( "#show-all-haproxy-wi-log" ).text("Show less log");
|
|
$( "#show-all-haproxy-wi-log" ).attr("title", "Show less log");
|
|
$( "#show-all-haproxy-wi-log" ).attr("id", "hide-all-haproxy-wi-log");
|
|
|
|
$( "#hide-all-haproxy-wi-log" ).click( function() {
|
|
$( ".show-haproxy-wi-log" ).hide("fast");
|
|
$( "#hide-all-haproxy-wi-log" ).attr("title", "Show more log");
|
|
$( "#hide-all-haproxy-wi-log" ).text("Show more log");
|
|
$( "#hide-all-haproxy-wi-log" ).attr("id", "show-all-haproxy-wi-log");
|
|
});
|
|
});
|
|
|
|
if (cur_url[0] == "overview.py" || cur_url[0] == "waf.py" || cur_url[0] == "metrics.py") {
|
|
$('#secIntervals').css('display', 'none');
|
|
}
|
|
$('#apply_close').click( function() {
|
|
$("#apply").css('display', 'none');
|
|
localStorage.removeItem('restart');
|
|
});
|
|
$( ".server-act-links" ).change(function() {
|
|
var id = $(this).attr('id').split('-');
|
|
|
|
try {
|
|
var service_name = id[2]
|
|
}
|
|
catch (err) {
|
|
var service_name = 'haproxy'
|
|
}
|
|
|
|
updateHapWIServer(id[1], service_name)
|
|
});
|
|
});
|
|
function confirmAjaxAction(action, service, id) {
|
|
$( "#dialog-confirm" ).dialog({
|
|
resizable: false,
|
|
height: "auto",
|
|
width: 400,
|
|
modal: true,
|
|
title: "Are you sure you want to "+ action + " " + id + "?",
|
|
buttons: {
|
|
"Sure": function() {
|
|
$( this ).dialog( "close" );
|
|
if(service == "hap") {
|
|
ajaxActionServers(action, id);
|
|
if(action == "restart" || action == "reload") {
|
|
if(localStorage.getItem('restart')) {
|
|
localStorage.removeItem('restart');
|
|
$("#apply").css('display', 'none');
|
|
}
|
|
}
|
|
} else if (service == "waf") {
|
|
ajaxActionWafServers(action, id)
|
|
} else if (service == "nginx") {
|
|
ajaxActionNginxServers(action, id)
|
|
}
|
|
},
|
|
Cancel: function() {
|
|
$( this ).dialog( "close" );
|
|
}
|
|
}
|
|
});
|
|
}
|
|
function updateHapWIServer(id, service_name) {
|
|
var alert_en = 0;
|
|
var metrics = 0;
|
|
var active = 0;
|
|
if ($('#alert-'+id).is(':checked')) {
|
|
alert_en = '1';
|
|
}
|
|
if ($('#metrics-'+id).is(':checked')) {
|
|
metrics = '1';
|
|
}
|
|
if ($('#active-'+id).is(':checked')) {
|
|
active = '1';
|
|
}
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
updatehapwiserver: id,
|
|
name: $('#server-name-'+id).val(),
|
|
metrics: metrics,
|
|
alert_en: alert_en,
|
|
active: active,
|
|
service_name: service_name,
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
success: function( data ) {
|
|
data = data.replace(/\s+/g,' ');
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
toastr.clear();
|
|
$("#server-"+id+"-"+service_name).addClass( "update", 1000 );
|
|
setTimeout(function() {
|
|
$( "#server-"+id+"-"+service_name).removeClass( "update" );
|
|
}, 2500 );
|
|
}
|
|
}
|
|
} );
|
|
}
|
|
function change_pos(pos, id) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
change_pos: pos,
|
|
serv: id,
|
|
token: $('#token').val()
|
|
},
|
|
error: function(){
|
|
console.log(w.data_error);
|
|
}
|
|
} );
|
|
}
|
|
function showBytes(serv) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
showBytes: serv,
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
beforeSend: function() {
|
|
$("#show_bin_bout").html('<img class="loading_small_bin_bout" src="/inc/images/loading.gif" />');
|
|
$("#sessions").html('<img class="loading_small_bin_bout" src="/inc/images/loading.gif" />');
|
|
},
|
|
success: function( data ) {
|
|
data = data.replace(/\s+/g,' ');
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$("#bin_bout").html(data);
|
|
$.getScript("/inc/fontawesome.min.js")
|
|
}
|
|
}
|
|
} );
|
|
}
|
|
function showNginxConnections(serv) {
|
|
$.ajax( {
|
|
url: "options.py",
|
|
data: {
|
|
nginxConnections: serv,
|
|
token: $('#token').val()
|
|
},
|
|
type: "POST",
|
|
beforeSend: function() {
|
|
$("#sessions").html('<img class="loading_small_bin_bout" src="/inc/images/loading.gif" />');
|
|
},
|
|
success: function( data ) {
|
|
data = data.replace(/\s+/g,' ');
|
|
if (data.indexOf('error:') != '-1') {
|
|
toastr.error(data);
|
|
} else {
|
|
$("#bin_bout").html(data);
|
|
$.getScript("/inc/fontawesome.min.js")
|
|
}
|
|
}
|
|
} );
|
|
}
|