|
|
|
$.ajaxSetup({
|
|
|
|
cache: false
|
|
|
|
});
|
|
|
|
$(function() {
|
|
|
|
var say_up = $('#network_link_state').data('up');
|
|
|
|
var say_down = $('#network_link_state').data('down');
|
|
|
|
var say_speed_suffix = $('#network_link_speed').data('mbps');
|
|
|
|
//console.log('say_up: ['+say_up+'], say_down: ['+say_down+'], say_speed_suffix: ['+say_speed_suffix+']');
|
|
|
|
if($("#network_status").length) {
|
|
|
|
//console.log('network.json status file exists.');
|
|
|
|
setInterval(function() {
|
|
|
|
$.getJSON('/status/network.json', { get_param: 'value' }, function(data) {
|
|
|
|
$.each(data.networks, function(index, element) {
|
|
|
|
|
|
|
|
//console.log('entry: ['+index+'], name: ['+element.name+'], mac: ['+element.mac+'], link: ['+element.link+'], up order: ['+element.order+']');
|
|
|
|
|
|
|
|
var link = say_up;
|
|
|
|
if (element.link == 0) {
|
|
|
|
link = say_down;
|
|
|
|
}
|
|
|
|
$("#"+element.name+"_mac").text(element.mac);
|
|
|
|
$("#"+element.name+"_link").text(link);
|
|
|
|
$("#"+element.name+"_speed").text(element.speed+' '+say_speed_suffix);
|
|
|
|
$("#"+element.name+"_order").text(element.order);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}, 1000);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
//alert('network status strings not loaded.');
|
|
|
|
}
|
|
|
|
if($("#disk_status").length) {
|
|
|
|
//alert('disk status exists.');
|
|
|
|
//$("#bar").text('B');
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
$( window ).on( "load", function()
|
|
|
|
{
|
|
|
|
// NOTE: Disabled for now. Breaks viewing the source.
|
|
|
|
// Clears the URL to remove everything off after '?'.
|
|
|
|
//var newURL = location.href.split("?")[0];
|
|
|
|
//window.history.pushState('object', document.title, newURL);
|
|
|
|
//console.log('onload fired.');
|
|
|
|
|
|
|
|
// Walk through the network.json file and use it to pre-fill the form.
|
|
|
|
$.getJSON('/status/network.json', { get_param: 'value' }, function(data) {
|
|
|
|
$.each(data.ips, function(index, element) {
|
|
|
|
//console.log('- entry: ['+index+'], on: ['+element.on+'], address: ['+element.address+'], subnet: ['+element.subnet+'].');
|
|
|
|
//console.log('- gateway: ['+element.gateway+'], dns: ['+element.dns+'], default gateway: ['+element.default_gateway+'].');
|
|
|
|
|
|
|
|
// If this is the default gateway, see about setting the Gateway IP and DNS.
|
|
|
|
if (element.default_gateway == '1') {
|
|
|
|
//console.log('This is the default gateway interface.');
|
|
|
|
//console.log('- Form value for gateway......: ['+$("#gateway").val()+'] and dns: ['+$("#dns").val()+'].');
|
|
|
|
//console.log('- Default values for gateway..: ['+$("#gateway_default").val()+'] and dns: ['+$("#dns_default").val()+'].');
|
|
|
|
//console.log('- Interface values for gateway: ['+element.gateway+'] and dns: ['+element.dns+'].');
|
|
|
|
if (($("#gateway").val() == '') && (element.gateway)) {
|
|
|
|
$("#gateway").val(element.gateway);
|
|
|
|
}
|
|
|
|
if (($("#dns").val() == '') && (element.dns)) {
|
|
|
|
$("#dns").val(element.dns);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// Does this IP match any of the fields?
|
|
|
|
if(element.on.match(new RegExp('_'))) {
|
|
|
|
var network_prefix = element.on.match(/^(.*)_/).pop();
|
|
|
|
var network_ip_key = network_prefix+'_ip'
|
|
|
|
var network_subnet_key = network_prefix+'_subnet'
|
|
|
|
//console.log('Matching: ['+network_ip_key+'] and: ['+network_subnet_key+'].');
|
|
|
|
|
|
|
|
if ($("#"+network_ip_key).val() == '')
|
|
|
|
{
|
|
|
|
$("#"+network_ip_key).val(element.address);
|
|
|
|
}
|
|
|
|
if ($("#"+network_subnet_key).val() == '')
|
|
|
|
{
|
|
|
|
$("#"+network_subnet_key).val(element.subnet);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
// If DNS or gateway are blank still and we have default values, set them.
|
|
|
|
//console.log('Form value for gateway......: ['+$("#gateway").val()+'] and dns: ['+$("#dns").val()+'].');
|
|
|
|
//console.log('Interface values for gateway: ['+$("#gateway_default").val()+'] and dns: ['+$("#dns_default").val()+'].');
|
|
|
|
if (($("#gateway").val() == '') && ($("#gateway_default").val())) {
|
|
|
|
$("#gateway").val($("#gateway_default").val());
|
|
|
|
}
|
|
|
|
if (($("#dns").val() == '') && ($("#dns_default").val())) {
|
|
|
|
$("#dns").val($("#dns_default").val());
|
|
|
|
}
|
|
|
|
|
|
|
|
// Now set any other default IP/subnets
|
|
|
|
jQuery.each("bcn sn ifn".split(" "), function(index, network) {
|
|
|
|
//console.log('Network: ['+network+'].');
|
|
|
|
if($("#"+network+"_count").val()) {
|
|
|
|
var count = $("#"+network+"_count").val();
|
|
|
|
//console.log(network+' count: ['+count+'].');
|
|
|
|
for (var i = 1; i <= count; i++) {
|
|
|
|
var network_name = network+i;
|
|
|
|
//console.log('Network: ['+network_name+'], IP set: ['+$("#"+network_name+"_ip").val()+'/'+$("#"+network_name+"_subnet").val()+'].');
|
|
|
|
//console.log('- default: ['+$("#"+network_name+"_ip_default").val()+'/'+$("#"+network_name+"_subnet_default").val()+'].');
|
|
|
|
|
|
|
|
if ($("#"+network_name+"_ip").val() == '')
|
|
|
|
{
|
|
|
|
var ip = $("#"+network_name+"_ip_default").val();
|
|
|
|
$("#"+network_name+"_ip").val(ip);
|
|
|
|
}
|
|
|
|
if ($("#"+network_name+"_subnet").val() == '')
|
|
|
|
{
|
|
|
|
var subnet = $("#"+network_name+"_subnet_default").val();
|
|
|
|
$("#"+network_name+"_subnet").val(subnet);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
// Look for interfaces with names we recognize and use them to select interfaces from the
|
|
|
|
// select lists.
|
|
|
|
$.each(data.networks, function(index, element) {
|
|
|
|
//console.log('Entry: ['+index+'], name: ['+element.name+'], mac: ['+element.mac+'].');
|
|
|
|
var mac_key = element.name+'_mac_to_set';
|
|
|
|
if ($("#"+mac_key).length) {
|
|
|
|
var select_value = $('#'+mac_key).find(":selected").text();
|
|
|
|
//console.log('- Field exists, current value: ['+select_value+'].');
|
|
|
|
if (select_value == '') {
|
|
|
|
//console.log('- Setting to: ['+element.mac+'].');
|
|
|
|
$("#"+mac_key).val(element.mac);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
$.getJSON('/status/jobs.json', { get_param: 'value' }, function(data) {
|
|
|
|
$.each(data.ips, function(index, element) {
|
|
|
|
//console.log('- entry: ['+index+'], on: ['+element.on+'], address: ['+element.address+'], subnet: ['+element.subnet+'].');
|
|
|
|
//console.log('- gateway: ['+element.gateway+'], dns: ['+element.dns+'], default gateway: ['+element.default_gateway+'].');
|
|
|
|
});
|
|
|
|
});
|
|
|
|
})
|