push all
This commit is contained in:
384
iforte/base.js
384
iforte/base.js
@@ -8,16 +8,22 @@ $(document).ready(function() {
|
|||||||
$('#pth').html(fixturename)
|
$('#pth').html(fixturename)
|
||||||
$(document).prop('title', fixturename)
|
$(document).prop('title', fixturename)
|
||||||
|
|
||||||
$('body').prepend(generateNavBar());
|
// handle RDM ident
|
||||||
var am = 0;
|
var idntb = $('#idnt img');
|
||||||
var mip = 0;
|
var idnt_status = sessionStorage.getItem('iforte_idnt')
|
||||||
mip = 1;
|
if (idnt_status == 1) {
|
||||||
var href = $(location).attr('pathname');
|
idntb.addClass("a");
|
||||||
if (href.indexOf('personality') != -1) am = 1;
|
}
|
||||||
if (href.indexOf('logs') != -1) am = 2;
|
$('#idnt').click(function() {
|
||||||
if (href.indexOf('sensors') != -1) am = 3;
|
var idnt_status = sessionStorage.getItem('iforte_idnt')
|
||||||
if (href.indexOf('discovery') != -1) am = (3 + mip);
|
if (idnt_status == 1) {
|
||||||
$('#navbar ul li').eq(am).addClass('active');
|
idntb.removeClass("a");
|
||||||
|
sessionStorage.setItem('iforte_idnt', '0')
|
||||||
|
} else {
|
||||||
|
idntb.addClass("a")
|
||||||
|
sessionStorage.setItem('iforte_idnt', '1')
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
//handle settings
|
//handle settings
|
||||||
$(document).on('click','#scfg',function() {
|
$(document).on('click','#scfg',function() {
|
||||||
@@ -61,12 +67,6 @@ $(document).ready(function() {
|
|||||||
populateUIFromSessionStorage()
|
populateUIFromSessionStorage()
|
||||||
showCustomModal('Cleared', 'Simulated page reset to default settings.')
|
showCustomModal('Cleared', 'Simulated page reset to default settings.')
|
||||||
});
|
});
|
||||||
|
|
||||||
// handle RDM ident
|
|
||||||
var idntb = $('#idnt img');
|
|
||||||
$('#idnt').click(function() {
|
|
||||||
idntb.toggleClass('a');
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// custom modal
|
// custom modal
|
||||||
@@ -94,11 +94,56 @@ function loader(showheader) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function do_ajax(p_url,p_data,f,i = -1,a = true) {
|
function do_ajax(p_url,p_data,f,i = -1,a = true) {
|
||||||
/*console.log("url : " + p_url);
|
loader(1);
|
||||||
console.log("data : " + p_data);
|
|
||||||
console.log("callback function : " + f);
|
// convert p_data to an Object
|
||||||
console.log("callback params : " + i);
|
const data_object = {}
|
||||||
console.log("async : " + a);*/
|
p_data.toString().split('&').forEach(element => {
|
||||||
|
var kvp = element.split('=');
|
||||||
|
data_object[kvp[0]] = kvp[1]
|
||||||
|
});
|
||||||
|
|
||||||
|
p_data = data_object
|
||||||
|
|
||||||
|
switch (p_url) {
|
||||||
|
case '/reset_hours':
|
||||||
|
if (p_data.rh == 0) {
|
||||||
|
sessionStorage.setItem('iforte_hr0', '0')
|
||||||
|
} else if (p_data.rh == 1){
|
||||||
|
sessionStorage.setItem('iforte_hr1', '0')
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case '/reset_temps':
|
||||||
|
if (p_data.rt == 0) {
|
||||||
|
sessionStorage.setItem('iforte_tmr0', sessionStorage.getItem('iforte_t0'))
|
||||||
|
} else if (p_data.rt == 3){
|
||||||
|
sessionStorage.setItem('iforte_tmr3', sessionStorage.getItem('iforte_t3'))
|
||||||
|
} else if (p_data.rt == 2){
|
||||||
|
sessionStorage.setItem('iforte_tmr2', sessionStorage.getItem('iforte_t2'))
|
||||||
|
} else if (p_data.rt == 1){
|
||||||
|
sessionStorage.setItem('iforte_tmr1', sessionStorage.getItem('iforte_t1'))
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
for (const [key, value] of Object.entries(p_data)) {
|
||||||
|
//sessionStorage.setItem(key, value)
|
||||||
|
console.log("key: %o", key)
|
||||||
|
console.log("val: %o", value)
|
||||||
|
|
||||||
|
if (key == 'iforte_tmpu') {
|
||||||
|
if (value == 0) {
|
||||||
|
sessionStorage.setItem('iforte_tu', 'C')
|
||||||
|
} else if (value == 1) {
|
||||||
|
sessionStorage.setItem('iforte_tu', 'F')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
populateUIFromSessionStorage()
|
||||||
|
loader(0)
|
||||||
|
close_modal()
|
||||||
}
|
}
|
||||||
|
|
||||||
function copy_form_values(dir) {
|
function copy_form_values(dir) {
|
||||||
@@ -162,7 +207,6 @@ function show_errors(s,ids) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function close_modal() {
|
function close_modal() {
|
||||||
|
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
$('#m-b').empty();
|
$('#m-b').empty();
|
||||||
$('#cfg-modal').modal('hide');
|
$('#cfg-modal').modal('hide');
|
||||||
@@ -235,118 +279,9 @@ function c_rad(name,legend,options,invalid_feedback_text,group_class) {
|
|||||||
return html;
|
return html;
|
||||||
}
|
}
|
||||||
|
|
||||||
function box(t,id,p,su = '',vid = '',bc = '') {
|
|
||||||
|
|
||||||
var s = '';
|
|
||||||
|
|
||||||
s += '<div class="col-md-6 col-xl-4 box-c' + bc + '">';
|
|
||||||
if (id >= 0) s += '<h2>' + t + '<a class="cfg" onclick="open_modal(' + id + ');"><img src="../files/settings.svg"></a></h2>';
|
|
||||||
else s += '<h2>' + t + '</h2>';
|
|
||||||
s += '<div class="box">';
|
|
||||||
for (var j in p) {
|
|
||||||
if (p[j][0].length > 0) s += '<h3>' + p[j][0] + '</h3>';
|
|
||||||
s += '<ul class="group">';
|
|
||||||
for (var i in p[j][1]) {
|
|
||||||
l = p[j][1][i].split(";");
|
|
||||||
if (l.length == 4) s += l[0];
|
|
||||||
else s += '<li>' + l[0] + '</li>';
|
|
||||||
}
|
|
||||||
s += '</ul>';
|
|
||||||
s += '<ul class="group vals" id="' + vid + '">';
|
|
||||||
for (var i in p[j][1]) {
|
|
||||||
l = p[j][1][i].split(";");
|
|
||||||
if (l.length == 4) {
|
|
||||||
var t = l[3].replace(/&DG/gi,'°');
|
|
||||||
s += t;
|
|
||||||
} else if (l.length == 3) s += l[2];
|
|
||||||
else if (l.length == 2) s += '<li><div id="' + l[1] + '_v">-</div></li>';
|
|
||||||
else s += '<li>-</li>';
|
|
||||||
}
|
|
||||||
s += '</ul>';
|
|
||||||
}
|
|
||||||
s += su;
|
|
||||||
s += '</div>';
|
|
||||||
s += '</div>';
|
|
||||||
|
|
||||||
return s;
|
|
||||||
}
|
|
||||||
|
|
||||||
function generateNavBar() {
|
|
||||||
var o = '<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">';
|
|
||||||
|
|
||||||
o += '<div class="container">';
|
|
||||||
o += '<a class="navbar-brand" href="./index.html"><img src="../files/robe_logo_white.svg"></a>';
|
|
||||||
o += '<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar">';
|
|
||||||
o += '<span class="navbar-toggler-icon"></span>';
|
|
||||||
o += '</button>';
|
|
||||||
o += '<div class="collapse navbar-collapse" id="navbar">';
|
|
||||||
o += '<ul class="navbar-nav mr-auto">';
|
|
||||||
o += '<li class="nav-item">';
|
|
||||||
o += '<a class="nav-link" href="./index.html">Status</a>';
|
|
||||||
o += '</li>';
|
|
||||||
o += '<li class="nav-item">';
|
|
||||||
o += '<a class="nav-link" href="./personality.html">Personality</a>';
|
|
||||||
o += '</li>';
|
|
||||||
o += '<li class="nav-item">';
|
|
||||||
o += '<a class="nav-link" href="./logs.html">Logs</a>';
|
|
||||||
|
|
||||||
o += '</li>';
|
|
||||||
o += '<li class="nav-item snz">';
|
|
||||||
o += '<a class="nav-link" href="./sensors.html">RAINS logs</a>';
|
|
||||||
o += '</li>';
|
|
||||||
|
|
||||||
o += '<li class="nav-item">';
|
|
||||||
o += '<a class="nav-link" href="./discovery.html">Discovery</a>';
|
|
||||||
o += '</li>';
|
|
||||||
o += '<li class="nav-item">';
|
|
||||||
o += '<a class="nav-link" href="#" id="scfg">Settings</a>';
|
|
||||||
o += '</li>';
|
|
||||||
o += '<li class="nav-item">';
|
|
||||||
o += '<a class="nav-link" href="#" id="idnt"><img class="rdmi" src="../files/identify.svg"></a>';
|
|
||||||
o += '</li>';
|
|
||||||
o += '</ul>';
|
|
||||||
|
|
||||||
o += '</div>';
|
|
||||||
o += '</div>';
|
|
||||||
o += '</nav>';
|
|
||||||
|
|
||||||
o += '<div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog">';
|
|
||||||
o += '<div class="modal-dialog" role="document">';
|
|
||||||
o += '<div class="modal-content">';
|
|
||||||
o += '<div class="modal-header">';
|
|
||||||
o += '<img src="../files/settings.svg">';
|
|
||||||
o += '<h5 class="modal-title" id="m-t"></h5>';
|
|
||||||
o += '<button type="button" class="close" data-dismiss="modal" aria-label="Close">';
|
|
||||||
o += '<span aria-hidden="true">×</span>';
|
|
||||||
o += '</button>';
|
|
||||||
o += '</div>';
|
|
||||||
o += '<div class="modal-body" id="m-b">';
|
|
||||||
o += '</div>';
|
|
||||||
o += '<div class="modal-footer" id="m-f">';
|
|
||||||
o += '<button type="button" class="btn btn-primary sb">Save</button>';
|
|
||||||
o += '</div>';
|
|
||||||
o += '</div>';
|
|
||||||
o += '</div>';
|
|
||||||
o += '</div>';
|
|
||||||
|
|
||||||
return o;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
var pre = '';
|
var pre = '';
|
||||||
var dmxsnf = '';
|
var dmxsnf = '';
|
||||||
|
|
||||||
function ptit(t) {
|
|
||||||
|
|
||||||
if (t == $('#pth').data('title')) return;
|
|
||||||
|
|
||||||
|
|
||||||
if (t.length) $('#pth').data('title',t);
|
|
||||||
$('#pth').html($('#pth').data('title') + dmxsnf);
|
|
||||||
$('#pt_v').html(pre + $('#pth').html());
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
function c_dt(n,t,e,c,it) {
|
function c_dt(n,t,e,c,it) {
|
||||||
|
|
||||||
var html = '<div class="form-group' + c + '">';
|
var html = '<div class="form-group' + c + '">';
|
||||||
@@ -401,6 +336,7 @@ function initSessionStorage() {
|
|||||||
sessionStorage.setItem('iforte_dmxp', '2') // dmx mode
|
sessionStorage.setItem('iforte_dmxp', '2') // dmx mode
|
||||||
sessionStorage.setItem('iforte_dmxi', '0') // input (wired0 wireless1 wirelessout2)
|
sessionStorage.setItem('iforte_dmxi', '0') // input (wired0 wireless1 wirelessout2)
|
||||||
sessionStorage.setItem('iforte_rdmn', 'Robin iForte') // rdm name
|
sessionStorage.setItem('iforte_rdmn', 'Robin iForte') // rdm name
|
||||||
|
sessionStorage.setItem('iforte_idnt', '0') // rdm idnt
|
||||||
|
|
||||||
sessionStorage.setItem('iforte_h0', '1206') // power on time
|
sessionStorage.setItem('iforte_h0', '1206') // power on time
|
||||||
sessionStorage.setItem('iforte_hr0', '1206') // resetable
|
sessionStorage.setItem('iforte_hr0', '1206') // resetable
|
||||||
@@ -464,28 +400,25 @@ function initSessionStorage() {
|
|||||||
sessionStorage.setItem('iforte_dor', '2') //disp orientation 0norm 1inv 2auto
|
sessionStorage.setItem('iforte_dor', '2') //disp orientation 0norm 1inv 2auto
|
||||||
|
|
||||||
sessionStorage.setItem('iforte_mics', '9') // mic sens
|
sessionStorage.setItem('iforte_mics', '9') // mic sens
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function populateUIFromSessionStorage() {
|
function populateUIFromSessionStorage() {
|
||||||
for (var i = 0; i < sessionStorage.length; i++) {
|
for (var i = 0; i < sessionStorage.length; i++) {
|
||||||
var valueToLoad = '';
|
var valueToLoad = '';
|
||||||
switch (sessionStorage.key(i)) {
|
switch (sessionStorage.key(i)) {
|
||||||
case 'iforte_dmxp':
|
case 'iforte_dmxp':
|
||||||
var valueToLoad = "Mode " + (parseInt(sessionStorage.getItem(sessionStorage.key(i))) + 1)
|
var valueToLoad = "Mode " + (parseInt(sessionStorage.getItem(sessionStorage.key(i))) + 1)
|
||||||
break;
|
break;
|
||||||
case 'iforte_dmxi':
|
case 'iforte_dmxi':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "wired"
|
var valueToLoad = "wired"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "wireless"
|
var valueToLoad = "wireless"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
||||||
var valueToLoad = "wireless XLR out"
|
var valueToLoad = "wireless XLR out"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'iforte_bldmc':
|
case 'iforte_bldmc':
|
||||||
case 'iforte_blptm':
|
case 'iforte_blptm':
|
||||||
@@ -498,104 +431,105 @@ function populateUIFromSessionStorage() {
|
|||||||
case 'iforte_blgwm':
|
case 'iforte_blgwm':
|
||||||
case 'iforte_blprm':
|
case 'iforte_blprm':
|
||||||
case 'iforte_btns':
|
case 'iforte_btns':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "off"
|
var valueToLoad = "off"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "on"
|
var valueToLoad = "on"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_emod':
|
case 'iforte_emod':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "disable"
|
var valueToLoad = "disable"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "ArtNet"
|
var valueToLoad = "ArtNet"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
||||||
var valueToLoad = "gMA1"
|
var valueToLoad = "gMA1"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 3) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 3) {
|
||||||
var valueToLoad = "gMA2"
|
var valueToLoad = "gMA2"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 4) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 4) {
|
||||||
var valueToLoad = "sACN"
|
var valueToLoad = "sACN"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_dint':
|
case 'iforte_dint':
|
||||||
case 'iforte_mics':
|
case 'iforte_mics':
|
||||||
var valueToLoad = (parseInt(sessionStorage.getItem(sessionStorage.key(i))) + 1)
|
var valueToLoad = (parseInt(sessionStorage.getItem(sessionStorage.key(i))) + 1)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'iforte_dsd':
|
case 'iforte_dsd':
|
||||||
case 'iforte_dtl':
|
case 'iforte_dtl':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "off"
|
var valueToLoad = "off"
|
||||||
} else {
|
} else {
|
||||||
var valueToLoad = (parseInt(sessionStorage.getItem(sessionStorage.key(i))) + " min")
|
var valueToLoad = (parseInt(sessionStorage.getItem(sessionStorage.key(i))) + " min")
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_dor':
|
case 'iforte_dor':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "normal"
|
var valueToLoad = "normal"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "inverted"
|
var valueToLoad = "inverted"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
||||||
var valueToLoad = "auto"
|
var valueToLoad = "auto"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_fanm':
|
case 'iforte_fanm':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "auto"
|
var valueToLoad = "auto"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "high"
|
var valueToLoad = "high"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_tmpu':
|
case 'iforte_tmpu':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "°C"
|
var valueToLoad = "°C"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "°F"
|
var valueToLoad = "°F"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_ptm':
|
case 'iforte_ptm':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "speed"
|
var valueToLoad = "speed"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "time"
|
var valueToLoad = "time"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_cdimc':
|
case 'iforte_cdimc':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "linear"
|
var valueToLoad = "linear"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "square law"
|
var valueToLoad = "square law"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_fsmo':
|
case 'iforte_fsmo':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "off"
|
var valueToLoad = "off"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "soft"
|
var valueToLoad = "soft"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
||||||
var valueToLoad = "medium"
|
var valueToLoad = "medium"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 3) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 3) {
|
||||||
var valueToLoad = "hard"
|
var valueToLoad = "hard"
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_gind':
|
case 'iforte_gind':
|
||||||
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
if (sessionStorage.getItem(sessionStorage.key(i)) == 0) {
|
||||||
var valueToLoad = "max. speed & shortcut"
|
var valueToLoad = "max. speed & shortcut"
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 1) {
|
||||||
var valueToLoad = "follow spd. & dir."
|
var valueToLoad = "follow spd. & dir."
|
||||||
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
} else if (sessionStorage.getItem(sessionStorage.key(i)) == 2) {
|
||||||
var valueToLoad = "max spd. & follow dir."
|
var valueToLoad = "max spd. & follow dir."
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'iforte_frq':
|
case 'iforte_frq':
|
||||||
var valueToLoad = iforte_frq_s(sessionStorage.getItem('iforte_frq'))
|
var valueToLoad = iforte_frq_s(sessionStorage.getItem('iforte_frq'))
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
||||||
var valueToLoad = sessionStorage.getItem(sessionStorage.key(i))
|
var valueToLoad = sessionStorage.getItem(sessionStorage.key(i))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log('key ' + i + " : " + valueToLoad);
|
||||||
$("#" + sessionStorage.key(i) + "_v").html(valueToLoad)
|
$("#" + sessionStorage.key(i) + "_v").html(valueToLoad)
|
||||||
|
|
||||||
// for each element with id tu_v sets html to string of temp unit
|
// for each element with id tu_v sets html to string of temp unit
|
||||||
|
|||||||
@@ -1,279 +1,263 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
|
<meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
|
||||||
<link rel="stylesheet" href="../files/bootstrap.min.css">
|
<link rel="stylesheet" href="../files/bootstrap.min.css">
|
||||||
<link rel="stylesheet" href="../files/layout.css">
|
<link rel="stylesheet" href="../files/layout.css">
|
||||||
<script src="../files/jquery-3.3.1.min.js"></script>
|
<script src="../files/jquery-3.3.1.min.js"></script>
|
||||||
<script src="../files/popper.min.js"></script>
|
<script src="../files/popper.min.js"></script>
|
||||||
<script src="../files/bootstrap.min.js"></script>
|
<script src="../files/bootstrap.min.js"></script>
|
||||||
<script src="./base.js"></script>
|
<script src="./base.js"></script>
|
||||||
<title id="pt_v">iForte</title>
|
</head>
|
||||||
</head>
|
<body>
|
||||||
<body>
|
<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">
|
||||||
<!-- NAV WILL BE ADDED HERE BY FUNCTION IN BASE JS -->
|
<div class="container">
|
||||||
<div class="fixed-top text-center device-label" id="pth"></div>
|
<a class="navbar-brand" href="./index.html"><img src="../files/robe_logo_white.svg"></a><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"><span class="navbar-toggler-icon"></span></button>
|
||||||
<div class="container-fluid in">
|
<div class="collapse navbar-collapse" id="navbar">
|
||||||
<h1>Discovery</h1>
|
<ul class="navbar-nav mr-auto">
|
||||||
<div class="row" id="boxes">
|
<li class="nav-item"><a class="nav-link" href="./index.html">Status</a></li>
|
||||||
<div class="col-12">
|
<li class="nav-item"><a class="nav-link" href="./personality.html">Personality</a></li>
|
||||||
<div class="clearfix">
|
<li class="nav-item"><a class="nav-link" href="./logs.html">Logs</a></li>
|
||||||
<div class="float-left pt02">
|
<li class="nav-item"><a class="nav-link" href="./sensors.html">RAINS logs</a></li>
|
||||||
<input type="checkbox" id="w-ot">
|
<li class="nav-item active"><a class="nav-link" href="./discovery.html">Discovery</a></li>
|
||||||
<label for="w-ot" class="pl04"> Move devices with warning to top</label>
|
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
|
||||||
</div>
|
<li class="nav-item"><a class="nav-link" id="idnt"><img class="rdmi" src="../files/identify.svg"></a></li>
|
||||||
<button class="btn btn-primary float-right" id="scan">Discover (1)</button>
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<div class="fixed-top text-center device-label" id="pth" onclick="window.location = ('../index.html')"></div>
|
||||||
|
<div class="container-fluid in">
|
||||||
|
<h1>Discovery</h1>
|
||||||
|
<div class="row" id="boxes">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="clearfix">
|
||||||
|
<div class="float-left pt02">
|
||||||
|
<input type="checkbox" id="w-ot">
|
||||||
|
<label for="w-ot" class="pl04"> Move devices with warning to top</label>
|
||||||
</div>
|
</div>
|
||||||
<h2>Columns selection (max. 7 items)</h2>
|
<button class="btn btn-primary float-right" id="scan">Discover (1)</button>
|
||||||
<div class="clearfix" id="cols">
|
</div>
|
||||||
<div class="dchb">
|
<h2>Columns selection (max. 7 items)</h2>
|
||||||
<input type="checkbox" class="cchb" checked="" id="cchb-0">
|
<div class="clearfix" id="cols">
|
||||||
<label for="cchb-0">DMX address</label>
|
<div class="dchb">
|
||||||
</div>
|
<input type="checkbox" class="cchb" checked="" id="cchb-0">
|
||||||
<div class="dchb">
|
<label for="cchb-0">DMX address</label>
|
||||||
<input type="checkbox" class="cchb" checked="" id="cchb-1">
|
|
||||||
<label for="cchb-1">DMX preset</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" checked="" id="cchb-2">
|
|
||||||
<label for="cchb-2">RDM UID</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" checked="" id="cchb-3">
|
|
||||||
<label for="cchb-3">IP address</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" id="cchb-4" disabled="disabled">
|
|
||||||
<label for="cchb-4">Head temperature [°C]</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" id="cchb-5" disabled="disabled">
|
|
||||||
<label for="cchb-5">Relative humidity [%]</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" checked="" id="cchb-6">
|
|
||||||
<label for="cchb-6">RAINS (max wet)</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" id="cchb-7" disabled="disabled">
|
|
||||||
<label for="cchb-7">Last pressure test</label>
|
|
||||||
</div>
|
|
||||||
<div class="dchb">
|
|
||||||
<input type="checkbox" class="cchb" checked="" id="cchb-8">
|
|
||||||
<label for="cchb-8">Device status</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="clearfix">
|
<div class="dchb">
|
||||||
<button class="btn btn-primary float-right" id="acs">Apply selection</button>
|
<input type="checkbox" class="cchb" checked="" id="cchb-1">
|
||||||
|
<label for="cchb-1">DMX preset</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="table-responsive">
|
<div class="dchb">
|
||||||
<table class="table mt-2" id="d-t">
|
<input type="checkbox" class="cchb" checked="" id="cchb-2">
|
||||||
<thead id="dmax">
|
<label for="cchb-2">RDM UID</label>
|
||||||
<tr>
|
|
||||||
<th>
|
|
||||||
<i class="as"></i>
|
|
||||||
<i class="ab"></i> Device
|
|
||||||
</th>
|
|
||||||
<th>
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> DMX address
|
|
||||||
</th>
|
|
||||||
<th>
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> DMX preset
|
|
||||||
</th>
|
|
||||||
<th>
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> RDM UID
|
|
||||||
</th>
|
|
||||||
<th>
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> IP address
|
|
||||||
</th>
|
|
||||||
<th style="display: none;">
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> Head temperature [°C]
|
|
||||||
</th>
|
|
||||||
<th style="display: none;">
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> Relative humidity [%]
|
|
||||||
</th>
|
|
||||||
<th>
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> RAINS (max wet)
|
|
||||||
</th>
|
|
||||||
<th style="display: none;">
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> Last pressure test
|
|
||||||
</th>
|
|
||||||
<th>
|
|
||||||
<i></i>
|
|
||||||
<i class="ab"></i> Device status
|
|
||||||
</th>
|
|
||||||
<th> </th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr id="myd" class="myd">
|
|
||||||
<td>iForte</td>
|
|
||||||
<td>350</td>
|
|
||||||
<td>Mode 1 (54 channels)</td>
|
|
||||||
<td>52:53:01:2c:00:0e</td>
|
|
||||||
<td>2.247.136.14</td>
|
|
||||||
<td style="display: none;">47</td>
|
|
||||||
<td style="display: none;">14.0</td>
|
|
||||||
<td>
|
|
||||||
<div class="rains sl">
|
|
||||||
<div style="width:63%"></div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td style="display: none;">2.3.2023 16:19:02 - OK</td>
|
|
||||||
<td>active</td>
|
|
||||||
<td></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody class="rd" id="scd"></tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="dchb">
|
||||||
|
<input type="checkbox" class="cchb" checked="" id="cchb-3">
|
||||||
|
<label for="cchb-3">IP address</label>
|
||||||
|
</div>
|
||||||
|
<div class="dchb">
|
||||||
|
<input type="checkbox" class="cchb" id="cchb-4" disabled="disabled">
|
||||||
|
<label for="cchb-4">Head temperature [°C]</label>
|
||||||
|
</div>
|
||||||
|
<div class="dchb">
|
||||||
|
<input type="checkbox" class="cchb" id="cchb-5" disabled="disabled">
|
||||||
|
<label for="cchb-5">Relative humidity [%]</label>
|
||||||
|
</div>
|
||||||
|
<div class="dchb">
|
||||||
|
<input type="checkbox" class="cchb" checked="" id="cchb-6">
|
||||||
|
<label for="cchb-6">RAINS (max wet)</label>
|
||||||
|
</div>
|
||||||
|
<div class="dchb">
|
||||||
|
<input type="checkbox" class="cchb" id="cchb-7" disabled="disabled">
|
||||||
|
<label for="cchb-7">Last pressure test</label>
|
||||||
|
</div>
|
||||||
|
<div class="dchb">
|
||||||
|
<input type="checkbox" class="cchb" checked="" id="cchb-8">
|
||||||
|
<label for="cchb-8">Device status</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="clearfix">
|
||||||
|
<button class="btn btn-primary float-right" id="acs">Apply selection</button>
|
||||||
|
</div>
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table mt-2" id="d-t">
|
||||||
|
<thead id="dmax">
|
||||||
|
<tr>
|
||||||
|
<th>
|
||||||
|
<i class="as"></i>
|
||||||
|
<i class="ab"></i> Device
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> DMX address
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> DMX preset
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> RDM UID
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> IP address
|
||||||
|
</th>
|
||||||
|
<th style="display: none;">
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> Head temperature [°C]
|
||||||
|
</th>
|
||||||
|
<th style="display: none;">
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> Relative humidity [%]
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> RAINS (max wet)
|
||||||
|
</th>
|
||||||
|
<th style="display: none;">
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> Last pressure test
|
||||||
|
</th>
|
||||||
|
<th>
|
||||||
|
<i></i>
|
||||||
|
<i class="ab"></i> Device status
|
||||||
|
</th>
|
||||||
|
<th> </th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr id="myd" class="myd">
|
||||||
|
<td>iForte</td>
|
||||||
|
<td>350</td>
|
||||||
|
<td>Mode 1 (54 channels)</td>
|
||||||
|
<td>52:53:01:2c:00:0e</td>
|
||||||
|
<td>2.247.136.14</td>
|
||||||
|
<td style="display: none;">47</td>
|
||||||
|
<td style="display: none;">14.0</td>
|
||||||
|
<td>
|
||||||
|
<div class="rains sl">
|
||||||
|
<div style="width:63%"></div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td style="display: none;">2.3.2023 16:19:02 - OK</td>
|
||||||
|
<td>active</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
<tbody class="rd" id="scd"></tbody>
|
||||||
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog">
|
</div>
|
||||||
<div class="modal-dialog" role="document">
|
<div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog">
|
||||||
<div class="modal-content">
|
<div class="modal-dialog" role="document">
|
||||||
<div class="modal-header">
|
<div class="modal-content">
|
||||||
<img src="../files/settings.svg">
|
<div class="modal-header">
|
||||||
<h5 class="modal-title" id="m-t"></h5>
|
<img src="../files/settings.svg">
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
<h5 class="modal-title" id="m-t"></h5>
|
||||||
<span aria-hidden="true">×</span>
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
</button>
|
<span aria-hidden="true">×</span>
|
||||||
</div>
|
</button>
|
||||||
<div class="modal-body" id="m-b"></div>
|
</div>
|
||||||
<div class="modal-footer" id="m-f">
|
<div class="modal-body" id="m-b"></div>
|
||||||
<button type="button" class="btn btn-primary sb">Save</button>
|
<div class="modal-footer" id="m-f">
|
||||||
</div>
|
<button type="button" class="btn btn-primary sb">Save</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>
|
</div>
|
||||||
$(document).ready(function() {
|
<script>
|
||||||
$('h1').html('Discovery');
|
$(document).ready(function() {
|
||||||
$('#boxes').html(' < div class = "col-12" > < div class = "clearfix" > < div class = "float-left pt02" > < input type = "checkbox"
|
$('h1').html('Discovery');
|
||||||
id = "w-ot" > < label
|
$('#boxes').html('<div class="col-12"><div class="clearfix"><div class="float-left pt02"><input type = "checkbox" id="w-ot"><label for="w-ot" class="pl04">Move devices with warning to top</label></div><button class="btn btn-primary float-right" id="scan" disabled><div class="loader"></div> Discovering</button></div><h2 > Columns selection(max.7 items) </h2><div class="clearfix" id="cols"></div><div class="clearfix"><button class="btn btn-primary float-right" id="acs">Apply selection</button></div><div class="table-responsive"><table class="table mt-2" id="d-t"><thead id="dmax"><tr><th><i></i><i class="ab"></i> Device</th></tr></thead><tbody><tr id="myd" class="myd"><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody><tbody class="rd" id="scd"></tbody></table></div></div>');
|
||||||
for = "w-ot"
|
var s=0;
|
||||||
class = "pl04" > Move devices with warning to top < /label> < /div> < button class = "btn btn-primary float-right"
|
var bsy=false;
|
||||||
id = "scan"
|
var i=0;
|
||||||
disabled > < div class = "loader" > < /div> Discovering < /button> < /div> < h2 > Columns selection(max.7 items) < /h2> < div class = "clearfix"
|
var ti;
|
||||||
id = "cols" > < /div> < div class = "clearfix" > < button class = "btn btn-primary float-right"
|
var tb;
|
||||||
id = "acs" > Apply selection < /button> < /div> < div class = "table-responsive" > < table class = "table mt-2"
|
var tr;
|
||||||
id = "d-t" > < thead id = "dmax" > < tr > < th > < i > < /i> < i class = "ab" > < /i> Device < /th> < /tr> < /thead> < tbody > < tr id = "myd"
|
var c_n=['DMX address','DMX preset','RDM UID','IP address','Head temperature [°C]','Relative humidity [%]','RAINS (max wet)','Last pressure test','Device status'];
|
||||||
class = "myd" > < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < /tr> < /tbody> < tbody class = "rd"
|
var c_js=['dmxa','dmxp','rdm','ip','t','rh','wet','prt','sta'];
|
||||||
id = "scd" > < /tbody> < /table> < /div> < /div>');var s=0;var bsy=false;var i=0;var ti;var tb;var tr;var c_n=['DMX address','DMX preset','RDM UID','IP address','Head temperature [°C]','Relative humidity [%]','RAINS (max wet)','Last pressure test','Device status'];var c_js=['dmxa','dmxp','rdm','ip','t','rh','wet','prt','sta'];var c_s=get_cookie('dc_sel',335);var i=0;c_n.forEach(function(v){$('#dmax>tr').append(' < th > < i > < /i> < i class = "ab" > < /i> '+v+' < /th>');$('#cols').append(' < div class = "dchb" > < input type = "checkbox"
|
var c_s=get_cookie('dc_sel',335);
|
||||||
class = "cchb"
|
var i=0;
|
||||||
'+((c_s & (1< < i)) ? ' checked' : '') + ' id="cchb-' + i + '"> < label
|
c_n.forEach(function(v){
|
||||||
for = "cchb-'+i+'" > '+v+' < /label> < /div>');i++});$('#dmax>tr').append(' < th > & nbsp; < /th>');var ccb=$('#cols .cchb');var tcs=$('#dmax>tr>th');function upd_cols_in_rows(){var c_s=get_cookie('dc_sel',335);var r=$('#d-t>tbody>tr');r.each(function(){var c=$(this).find('td');c.each(function(i){if((i > 0)&&(i<=c_js.length)){if(c_s & (1<<(i - 1))) $(this).show();else $(this).hide()}})})}function ccb_en_dis(){var chck=ccb.filter(':checked');if(chck.length>=6){ccb.filter(':not(":checked")').attr('disabled',true)} else ccb.removeAttr('disabled')}ccb_en_dis();$('.cchb').change(function(){ccb_en_dis()});$('#acs').click(function(){var c_s=0;var i=0;c_n.forEach(function(v){if(ccb.eq(i).prop('checked')) c_s|=(1< < i);
|
$('#dmax>tr').append('<th><i></i><i class="ab"></i> '+v+'</th>');
|
||||||
if (c_s & (1 < < i)) tcs.eq(i + 1).show();
|
$('#cols').append('<div class="dchb"><input type="checkbox" class="cchb"'+((c_s & (1 << i)) ? ' checked' : '') + ' id="cchb-' + i + '"><label for="cchb-'+i+'">'+v+'</label></div>');i++});
|
||||||
else tcs.eq(i + 1).hide();
|
$('#dmax>tr').append('<th> </th>');
|
||||||
i++
|
var ccb=$('#cols .cchb');
|
||||||
});
|
var tcs=$('#dmax>tr>th');
|
||||||
document.cookie = 'dc_sel=' + c_s;
|
function upd_cols_in_rows(){
|
||||||
upd_cols_in_rows();
|
var c_s=get_cookie('dc_sel',335);
|
||||||
var ups = $('#dmax>tr i.as');
|
var r=$('#d-t>tbody>tr');
|
||||||
if (ups.parent().is(':hidden')) tcs.eq(0).find('i').eq(0).click()
|
r.each(function(){var c=$(this).find('td');
|
||||||
});
|
c.each(function(i){if((i > 0)&&(i<=c_js.length)){if(c_s & (1<<(i - 1))) $(this).show();else $(this).hide()}})})}function ccb_en_dis(){var chck=ccb.filter(':checked');if(chck.length>=6){ccb.filter(':not(":checked")').attr('disabled',true)} else ccb.removeAttr('disabled')}ccb_en_dis();$('.cchb').change(function(){ccb_en_dis()});$('#acs').click(function(){var c_s=0;
|
||||||
$('#acs').click();
|
var i=0;
|
||||||
$('#scan').click(function() {
|
c_n.forEach(function(v){if(ccb.eq(i).prop('checked')) c_s|=(1 << i);
|
||||||
if (bsy) return;
|
if (c_s & (1 << i)) tcs.eq(i + 1).show();
|
||||||
$('#dmax').removeClass('dmax');
|
else tcs.eq(i + 1).hide();
|
||||||
$('#scan').html(' < div class = "loader" > < /div> Discovering');$('#scd').html('');set_bsy(true);set_bsy(true,true);do_ajax('/start - scan ',{},function (json){if(json){set_bsy(false);s=0;clearInterval(tr)} else set_bsy(false);$('
|
i++
|
||||||
body ').click()})});function set_bsy(v,b_o=false){if(!b_o) bsy=v;clearTimeout(tb);tb=setTimeout(function(){if(!v) $('
|
|
||||||
#scan ').removeAttr('
|
|
||||||
disabled ');else $('
|
|
||||||
#scan ').attr('
|
|
||||||
disabled ','
|
|
||||||
1 ')},b_o ? 5:400)}function max_w(w){if(isNaN(w)) return w;else return ' < div class = "rains sl" > < div style = "width:'+w+'%" > < /div> < /div>'}function do_scan(){if(bsy) return;switch (s){case 0:set_bsy(true);do_ajax('/get - child ',{},function (json){if(json){if(json['
|
|
||||||
sd ']==0){s=1;i=0;if(json['
|
|
||||||
max ']==1) $('
|
|
||||||
#dmax ').addClass('
|
|
||||||
dmax ')}} else s=255;set_bsy(false)});break;case 1:set_bsy(true);do_ajax(' / get - child ','
|
|
||||||
i = '+i,function (json){if(json){if(json['
|
|
||||||
ip ']){$('
|
|
||||||
#scd ').append(' < tr data - value = "'+json['ip']+'"
|
|
||||||
class = "dn dis" > < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < /td> < td > < img class = "rdmi a dn"
|
|
||||||
src = "../files/identify.svg" > < button class = "btn btn-danger btn-sm drem dn" > & #10005;</button>
|
|
||||||
</td>
|
|
||||||
</tr>');upd_cols_in_rows();i++} else s= 2
|
|
||||||
}
|
|
||||||
else s = 255;
|
|
||||||
set_bsy(false)
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case 2: clearInterval(tr);
|
|
||||||
set_bsy(true);
|
|
||||||
$('#scan').html(' < div class = "loader" > < /div> Collecting');var devs=$('#scd tr');if(devs.length==0){$('#scan').html('Discover (1)');set_bsy(false);s=255} else {i=0;devs.each(function(){var r=$(this);if(r.attr('data-value')){do_ajax('http:/
|
|
||||||
'+' / '+r.attr('
|
|
||||||
data - value ')+' / remote ',{},function (json){var t=r.find('
|
|
||||||
td ');if(json){t.eq(0).html(' < a href = "http:/'+'/'+r.attr('data-value')+'"
|
|
||||||
target = "_blank" > '+json['
|
|
||||||
dn ']+' < /a>');c_js.forEach(function(v,i){if(json[v]){if(i!=6) t.eq(i+1).html(json[v]);else {t.eq(i+1).html(max_w(json[v]));t.eq(i+1).attr('data-value',json[v])}} else t.eq(i+1).html('-')});r.removeClass('na');r.find('.drem').hide();if(json['stat']==1) r.addClass('err');else r.removeClass('err');r.removeClass('dis');r.show();if(json['rdmi']==1) r.find('.rdmi').show();else r.find('.rdmi').hide()} else {if(r.hasClass('dis')){r.remove()} else {r.addClass('na').removeClass('err');r.find('.drem').show()}t.eq(9).html('disconnected')}i++;if(i>=devs.length){set_bsy(false);s=255;$('#scan').html('Discover ('+($('#scd tr').length+1)+')');tr=setInterval(function(){set_bsy(true,true);s=2},10000);$('#d-t th i.as').click()}})} else { i++}})}break}}ti=setInterval(do_scan,100);function getp(){do_ajax('/pdev_i
|
|
||||||
',{},function (json){var c=$('
|
|
||||||
#myd > td ');if(json){c.eq(0).html(json['
|
|
||||||
dn ']);c_js.forEach(function(v,i){c.eq(i+1).html(i==6 ? max_w(json[v]):json[v])});upd_cols_in_rows();$('
|
|
||||||
#myd ').removeClass('
|
|
||||||
na ')} else {c.eq(9).html('
|
|
||||||
disconnected ');$('
|
|
||||||
#myd ').addClass('
|
|
||||||
na ')}})}getp();setInterval(getp,8000);do_ajax(' / status_i ',{},function (json){if(json){ptit(json['
|
|
||||||
pt '])}});$(document).on('
|
|
||||||
click ','.drem ',function(){if(confirm('
|
|
||||||
Are you sure to remove offline device from list ? ')) $(this).parents().eq(1).remove()});var sort_i=0;var sort_d=-1;function ldz3(v){return ('
|
|
||||||
000 '+v).substr(-3,3)}function my_sort(a,b){var A;var B;console.log(A);if(sort_i==7){B=$(a).children('
|
|
||||||
td ').eq(sort_i).attr('
|
|
||||||
data - value ');A=$(b).children('
|
|
||||||
td ').eq(sort_i).attr('
|
|
||||||
data - value ')} else {A=$(a).children('
|
|
||||||
td ').eq(sort_i).text();B=$(b).children('
|
|
||||||
td ').eq(sort_i).text()}switch (sort_i){case 1:case 5:case 6:case 7:A=parseInt(A);B=parseInt(B);break;case 4:A=A.split('.
|
|
||||||
');A=ldz3(A[0])+ldz3(A[2])+ldz3(A[3])+ldz3(A[4]);B=B.split('.
|
|
||||||
');B=ldz3(B[0])+ldz3(B[2])+ldz3(B[3])+ldz3(B[4]);break}if(A > B) return 1*sort_d;else if(A < B) return -1 * sort_d;
|
|
||||||
else return 0
|
|
||||||
}
|
|
||||||
$('table th i').click(function() {
|
|
||||||
$('table th i').removeClass('as');
|
|
||||||
$(this).addClass('as');
|
|
||||||
sort_i = $(this).parent().index();
|
|
||||||
sort_d = $(this).hasClass('ab') ? -1 : 1;
|
|
||||||
document.cookie = 'srt_s=' + sort_i;
|
|
||||||
document.cookie = 'srt_d=' + sort_d;
|
|
||||||
var et = $('#w-ot').prop('checked');
|
|
||||||
if (et == true) {
|
|
||||||
var rw_e = $('#d-t tbody.rd tr.err').remove();
|
|
||||||
var rw_n = $('#d-t tbody.rd tr.na').remove();
|
|
||||||
rw_e.sort(my_sort);
|
|
||||||
rw_n.sort(my_sort)
|
|
||||||
}
|
|
||||||
var rw = $('#d-t tbody.rd tr').remove();
|
|
||||||
rw.sort(my_sort);
|
|
||||||
if (et == true) {
|
|
||||||
$.each(rw_e, function(i, r) {
|
|
||||||
$('#d-t').children('tbody.rd').append(r)
|
|
||||||
});
|
});
|
||||||
$.each(rw_n, function(i, r) {
|
document.cookie = 'dc_sel=' + c_s;
|
||||||
|
upd_cols_in_rows();
|
||||||
|
var ups = $('#dmax>tr i.as');
|
||||||
|
if (ups.parent().is(':hidden')) tcs.eq(0).find('i').eq(0).click()
|
||||||
|
});
|
||||||
|
$('#acs').click();
|
||||||
|
$('#scan').click(function() {
|
||||||
|
if (bsy) return;
|
||||||
|
$('#dmax').removeClass('dmax');
|
||||||
|
$('#scan').html('<div class="loader"></div> Discovering');$('#scd').html('');set_bsy(true);set_bsy(true,true);do_ajax('/start - scan ',{},function (json){if(json){set_bsy(false);s=0;clearInterval(tr)} else set_bsy(false);$('body').click()})});function set_bsy(v,b_o=false){if(!b_o) bsy=v;clearTimeout(tb);tb=setTimeout(function(){if(!v) $('#scan').removeAttr('disabled');else $('#scan').attr('disabled','1')},b_o ? 5:400)}function max_w(w){if(isNaN(w)) return w;else return '<div class="rains sl"><div style = "width:'+w+'%"></div></div>'}function do_scan(){if(bsy) return;switch (s){case 0:set_bsy(true);do_ajax('/get - child ',{},function (json){if(json){if(json['sd']==0){s=1;i=0;if(json['max']==1) $('#dmax').addClass('dmax')}} else s=255;set_bsy(false)});break;case 1:set_bsy(true);do_ajax('/get-child','i = '+i,function (json){if(json){if(json['ip']){$('#scd').append(' < tr data - value = "'+json['ip']+'" class="dn dis"><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td><img class="rdmi a dn" src="../files/identify.svg"><button class="btn btn-danger btn-sm drem dn" > & #10005;</button></td></tr>');upd_cols_in_rows();i++} else s= 2}
|
||||||
|
else s = 255;
|
||||||
|
set_bsy(false)
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case 2: clearInterval(tr);
|
||||||
|
set_bsy(true);
|
||||||
|
$('#scan').html('<div class="loader"></div> Collecting');
|
||||||
|
var devs=$('#scd tr');if(devs.length==0){$('#scan').html('Discover (1)');set_bsy(false);s=255} else {i=0;devs.each(function(){var r=$(this);if(r.attr('data-value')){do_ajax('http:/'+' / '+r.attr('data-value')+'/remote',{},function (json){var t=r.find('td');if(json){t.eq(0).html('<a href="http:/'+'/'+r.attr('data-value')+'" target="_blank" > '+json['dn']+'</a>');c_js.forEach(function(v,i){if(json[v]){if(i!=6) t.eq(i+1).html(json[v]);else {t.eq(i+1).html(max_w(json[v]));t.eq(i+1).attr('data-value',json[v])}} else t.eq(i+1).html('-')});r.removeClass('na');r.find('.drem').hide();if(json['stat']==1) r.addClass('err');else r.removeClass('err');r.removeClass('dis');r.show();if(json['rdmi']==1) r.find('.rdmi').show();else r.find('.rdmi').hide()} else {if(r.hasClass('dis')){r.remove()} else {r.addClass('na').removeClass('err');r.find('.drem').show()}t.eq(9).html('disconnected')}i++;if(i>=devs.length){set_bsy(false);s=255;$('#scan').html('Discover ('+($('#scd tr').length+1)+')');tr=setInterval(function(){set_bsy(true,true);s=2},10000);$('#d-t th i.as').click()}})} else { i++}})}break}}ti=setInterval(do_scan,100);function getp(){do_ajax('/pdev_i',{},function (json){var c=$('#myd > td');if(json){c.eq(0).html(json['dn']);c_js.forEach(function(v,i){c.eq(i+1).html(i==6 ? max_w(json[v]):json[v])});upd_cols_in_rows();$('#myd').removeClass('na')} else {c.eq(9).html('disconnected');$('#myd').addClass('na')}})}getp();setInterval(getp,8000);do_ajax('/status_i',{},function (json){if(json){ptit(json['pt'])}});$(document).on('click','.drem',function(){if(confirm('Are you sure to remove offline device from list ?')) $(this).parents().eq(1).remove()});
|
||||||
|
var sort_i=0;
|
||||||
|
var sort_d=-1;function ldz3(v){return ('000'+v).substr(-3,3)}function my_sort(a,b){var A;var B;console.log(A);if(sort_i==7){B=$(a).children('td').eq(sort_i).attr('data-value');A=$(b).children('td').eq(sort_i).attr('data-value')} else {A=$(a).children('td').eq(sort_i).text();B=$(b).children('td').eq(sort_i).text()}switch (sort_i){case 1:case 5:case 6:case 7:A=parseInt(A);B=parseInt(B);break;case 4:A=A.split('.');A=ldz3(A[0])+ldz3(A[2])+ldz3(A[3])+ldz3(A[4]);B=B.split('.');B=ldz3(B[0])+ldz3(B[2])+ldz3(B[3])+ldz3(B[4]);break}if(A > B) return 1*sort_d;else if(A < B) return -1 * sort_d;
|
||||||
|
else return 0
|
||||||
|
}
|
||||||
|
$('table th i').click(function() {
|
||||||
|
$('table th i').removeClass('as');
|
||||||
|
$(this).addClass('as');
|
||||||
|
sort_i = $(this).parent().index();
|
||||||
|
sort_d = $(this).hasClass('ab') ? -1 : 1;
|
||||||
|
document.cookie = 'srt_s=' + sort_i;
|
||||||
|
document.cookie = 'srt_d=' + sort_d;
|
||||||
|
var et = $('#w-ot').prop('checked');
|
||||||
|
if (et == true) {
|
||||||
|
var rw_e = $('#d-t tbody.rd tr.err').remove();
|
||||||
|
var rw_n = $('#d-t tbody.rd tr.na').remove();
|
||||||
|
rw_e.sort(my_sort);
|
||||||
|
rw_n.sort(my_sort)
|
||||||
|
}
|
||||||
|
var rw = $('#d-t tbody.rd tr').remove();
|
||||||
|
rw.sort(my_sort);
|
||||||
|
if (et == true) {
|
||||||
|
$.each(rw_e, function(i, r) {
|
||||||
|
$('#d-t').children('tbody.rd').append(r)
|
||||||
|
});
|
||||||
|
$.each(rw_n, function(i, r) {
|
||||||
|
$('#d-t').children('tbody.rd').append(r)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
$.each(rw, function(i, r) {
|
||||||
$('#d-t').children('tbody.rd').append(r)
|
$('#d-t').children('tbody.rd').append(r)
|
||||||
})
|
})
|
||||||
}
|
});
|
||||||
$.each(rw, function(i, r) {
|
sort_d = get_cookie('srt_d', 1);
|
||||||
$('#d-t').children('tbody.rd').append(r)
|
$('#d-t th i').eq(get_cookie('srt_s', 0) * 2 + (sort_d == 1 ? 0 : 1)).click();
|
||||||
|
if (get_cookie('wot', 1) == 1) $('#w-ot').prop('checked', true);
|
||||||
|
$('#w-ot').change(function() {
|
||||||
|
document.cookie = 'wot=' + ($('#w-ot').prop('checked') == true ? 1 : 0);
|
||||||
|
$('#d-t th i.as').click()
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
sort_d = get_cookie('srt_d', 1);
|
|
||||||
$('#d-t th i').eq(get_cookie('srt_s', 0) * 2 + (sort_d == 1 ? 0 : 1)).click();
|
|
||||||
if (get_cookie('wot', 1) == 1) $('#w-ot').prop('checked', true);
|
|
||||||
$('#w-ot').change(function() {
|
|
||||||
document.cookie = 'wot=' + ($('#w-ot').prop('checked') == true ? 1 : 0);
|
|
||||||
$('#d-t th i.as').click()
|
|
||||||
})
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -1,443 +1,456 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
|
<meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">
|
||||||
<link rel="stylesheet" href="../files/bootstrap.min.css">
|
<link rel="stylesheet" href="../files/bootstrap.min.css">
|
||||||
<link rel="stylesheet" href="../files/layout.css">
|
<link rel="stylesheet" href="../files/layout.css">
|
||||||
<script src="../files/jquery-3.3.1.min.js"></script>
|
<script src="../files/jquery-3.3.1.min.js"></script>
|
||||||
<script src="../files/popper.min.js"></script>
|
<script src="../files/popper.min.js"></script>
|
||||||
<script src="../files/bootstrap.min.js"></script>
|
<script src="../files/bootstrap.min.js"></script>
|
||||||
<script src="./base.js"></script>
|
<script src="./base.js"></script>
|
||||||
<title id="pt_v">iForte</title>
|
</head>
|
||||||
</head>
|
<body>
|
||||||
<body>
|
<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">
|
||||||
<!-- NAV WILL BE ADDED HERE BY FUNCTION IN BASE JS -->
|
<div class="container">
|
||||||
|
<a class="navbar-brand" href="./index.html"><img src="../files/robe_logo_white.svg"></a><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"><span class="navbar-toggler-icon"></span></button>
|
||||||
<div class="fixed-top text-center device-label" id="pth"></div>
|
<div class="collapse navbar-collapse" id="navbar">
|
||||||
|
<ul class="navbar-nav mr-auto">
|
||||||
<div class="container-fluid in">
|
<li class="nav-item active"><a class="nav-link" href="./index.html">Status</a></li>
|
||||||
<h1>Device status</h1>
|
<li class="nav-item"><a class="nav-link" href="./personality.html">Personality</a></li>
|
||||||
<div class="row" id="boxes">
|
<li class="nav-item"><a class="nav-link" href="./logs.html">Logs</a></li>
|
||||||
<div class="col-md-6 col-xl-4 box-c">
|
<li class="nav-item"><a class="nav-link" href="./sensors.html">RAINS logs</a></li>
|
||||||
<h2>DMX/RDM settings <a class="cfg" onclick="open_modal(0);">
|
<li class="nav-item"><a class="nav-link" href="./discovery.html">Discovery</a></li>
|
||||||
<img src="../files/settings.svg">
|
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
|
||||||
</a>
|
<li class="nav-item"><a class="nav-link" id="idnt"><img class="rdmi" src="../files/identify.svg"></a></li>
|
||||||
</h2>
|
</ul>
|
||||||
<div class="box">
|
|
||||||
<ul class="group">
|
|
||||||
<li>DMX address</li>
|
|
||||||
<li>DMX preset</li>
|
|
||||||
<li>DMX input</li>
|
|
||||||
<li class="mt-2">IP address</li>
|
|
||||||
<li>MAC address</li>
|
|
||||||
<li class="mt-2">RDM UID</li>
|
|
||||||
<li>RDM label</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals" id="">
|
|
||||||
<li>
|
|
||||||
<div id="iforte_dmxa_v"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_dmxp_v"></div>
|
|
||||||
<small id="iforte_dmxf_v"></small>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_dmxi_v"></div>
|
|
||||||
</li>
|
|
||||||
<li class="mt-2">
|
|
||||||
<div id="iforte_ip_v"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_mac_v"></div>
|
|
||||||
</li>
|
|
||||||
<li class="mt-2">
|
|
||||||
<div id="iforte_rdmu_v"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_rdmn_v"></div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 col-xl-4 box-c">
|
|
||||||
<h2>Device times <a class="cfg" onclick="open_modal(1);">
|
|
||||||
<img src="../files/settings.svg">
|
|
||||||
</a>
|
|
||||||
</h2>
|
|
||||||
<div class="box">
|
|
||||||
<ul class="group">
|
|
||||||
<li>Power on time</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals" id="">
|
|
||||||
<li>
|
|
||||||
<div id="iforte_h0_v"></div>h / <div id="iforte_hr0_v"></div>h
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<p>
|
|
||||||
<small>total / resettable</small>
|
|
||||||
</p>
|
|
||||||
<ul class="group">
|
|
||||||
<li>LED on time total</li>
|
|
||||||
<li>LED on time adaptive</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals">
|
|
||||||
<li>
|
|
||||||
<div id="iforte_h1_v"></div>h
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_hr1_v"></div>h
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 col-xl-4 box-c">
|
|
||||||
<h2>Device temperatures <a class="cfg" onclick="open_modal(2);">
|
|
||||||
<img src="../files/settings.svg">
|
|
||||||
</a>
|
|
||||||
</h2>
|
|
||||||
<div class="box">
|
|
||||||
<ul class="group">
|
|
||||||
<li>LEDs</li>
|
|
||||||
<li>PSU</li>
|
|
||||||
<li>Driver</li>
|
|
||||||
<li>Base</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals" id="">
|
|
||||||
<li>
|
|
||||||
<div id="iforte_t0_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm0_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr0_v"></div>° <div class="iforte_tu"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_t3_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm3_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr3_v"></div>° <div class="iforte_tu"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_t1_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm1_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr1_v"></div>° <div class="iforte_tu"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_t2_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm2_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr2_v"></div>° <div class="iforte_tu"></div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<p>
|
|
||||||
<small>current / maximum / resettable</small>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 col-xl-4 box-c">
|
|
||||||
<h2>Wireless state <a class="cfg" onclick="open_modal(3);">
|
|
||||||
<img src="../files/settings.svg">
|
|
||||||
</a>
|
|
||||||
</h2>
|
|
||||||
<div class="box">
|
|
||||||
<ul class="group">
|
|
||||||
<li>State</li>
|
|
||||||
<li>Signal strength</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals" id="">
|
|
||||||
<li>
|
|
||||||
<div id="iforte_lwc_v"></div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<div id="iforte_lws_v">%</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 col-xl-4 box-c">
|
|
||||||
<h2>Software versions</h2>
|
|
||||||
<div class="box">
|
|
||||||
<ul class="group">
|
|
||||||
<li>Display System</li>
|
|
||||||
<li>Module M</li>
|
|
||||||
<li>Module L1</li>
|
|
||||||
<li>Module L2</li>
|
|
||||||
<li>Module O</li>
|
|
||||||
<li>Module F-A</li>
|
|
||||||
<li>Module F-B</li>
|
|
||||||
<li>Module G1</li>
|
|
||||||
<li>Module G2</li>
|
|
||||||
<li>Module P</li>
|
|
||||||
<li>Module C1</li>
|
|
||||||
<li>Module C2</li>
|
|
||||||
<li>Module DL</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals" id="sw_vers">
|
|
||||||
<li>1.9</li>
|
|
||||||
<li>1.4</li>
|
|
||||||
<li>1.6</li>
|
|
||||||
<li>1.5</li>
|
|
||||||
<li>1.3</li>
|
|
||||||
<li>1.1</li>
|
|
||||||
<li>1.1</li>
|
|
||||||
<li>1.5</li>
|
|
||||||
<li>1.5</li>
|
|
||||||
<li>1.2</li>
|
|
||||||
<li>1.2</li>
|
|
||||||
<li>1.2</li>
|
|
||||||
<li>1.2</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 col-xl-4 box-c">
|
|
||||||
<h2>Device state</h2>
|
|
||||||
<div class="box">
|
|
||||||
<ul class="group">
|
|
||||||
<li>Device status</li>
|
|
||||||
</ul>
|
|
||||||
<ul class="group vals" id="">
|
|
||||||
<li>
|
|
||||||
<div id="iforte_devs_v"></div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<button class="btn btn-primary btn-block esm dn btn-success" value="0" style="display: inline-block;">Enter standby mode</button>
|
|
||||||
<div>Current RAINS status</div>
|
|
||||||
<div>
|
|
||||||
<small class="fl">WET</small>
|
|
||||||
<small class="fr">DRY</small>
|
|
||||||
</div>
|
|
||||||
<div id="iforte_rai" class="rains">
|
|
||||||
<div style="width: 63%;"></div>
|
|
||||||
</div>
|
|
||||||
<div>MAX WET/resettable</div>
|
|
||||||
<div>
|
|
||||||
<small class="fl">WET</small>
|
|
||||||
<small class="fr">DRY</small>
|
|
||||||
</div>
|
|
||||||
<div id="iforte_rair" class="rains">
|
|
||||||
<div style="width: 63%;"></div>
|
|
||||||
</div>
|
|
||||||
<button class="btn btn-primary btn-block mwr" value="0">MAX WET reset</button>
|
|
||||||
<p>
|
|
||||||
<small id="iforte_wrt">last reset: 2.3.2023 16:19:57</small>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-12 box-c">
|
|
||||||
<h2 id="sta_err">Status messages</h2>
|
|
||||||
<div class="box">
|
|
||||||
<li>This is a simulated REAP™ page for demo purposes. Some content might be different on real fixtures.</li>
|
|
||||||
<li>Big thanks to Vincent BOUQUET for creating this simulator.</li>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog">
|
</nav>
|
||||||
<div class="modal-dialog" role="document">
|
<div class="fixed-top text-center device-label" id="pth" onclick="window.location = ('../index.html')"></div>
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
<div class="container-fluid in">
|
||||||
<img src="../files/settings.svg">
|
<h1>Device status</h1>
|
||||||
<h5 class="modal-title" id="m-t"></h5>
|
<div class="row" id="boxes">
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
<div class="col-md-6 col-xl-4 box-c">
|
||||||
<span aria-hidden="true">×</span>
|
<h2>DMX/RDM settings <a class="cfg" onclick="open_modal(0);">
|
||||||
</button>
|
<img src="../files/settings.svg">
|
||||||
</div>
|
</a>
|
||||||
<div class="modal-body" id="m-b"></div>
|
</h2>
|
||||||
<div class="modal-footer" id="m-f">
|
<div class="box">
|
||||||
<button type="button" class="btn btn-primary sb">Save</button>
|
<ul class="group">
|
||||||
</div>
|
<li>DMX address</li>
|
||||||
</div>
|
<li>DMX preset</li>
|
||||||
|
<li>DMX input</li>
|
||||||
|
<li class="mt-2">IP address</li>
|
||||||
|
<li>MAC address</li>
|
||||||
|
<li class="mt-2">RDM UID</li>
|
||||||
|
<li>RDM label</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals" id="">
|
||||||
|
<li>
|
||||||
|
<div id="iforte_dmxa_v"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_dmxp_v"></div>
|
||||||
|
<small id="iforte_dmxf_v"></small>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_dmxi_v"></div>
|
||||||
|
</li>
|
||||||
|
<li class="mt-2">
|
||||||
|
<div id="iforte_ip_v"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_mac_v"></div>
|
||||||
|
</li>
|
||||||
|
<li class="mt-2">
|
||||||
|
<div id="iforte_rdmu_v"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_rdmn_v"></div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>
|
<div class="col-md-6 col-xl-4 box-c">
|
||||||
var a_m = -1;
|
<h2>Device times <a class="cfg" onclick="open_modal(1);">
|
||||||
var m_t = ['DMX/RDM settings', 'Reset timers', 'Reset temperatures', 'Wireless settings', ];
|
<img src="../files/settings.svg">
|
||||||
|
</a>
|
||||||
|
</h2>
|
||||||
|
<div class="box">
|
||||||
|
<ul class="group">
|
||||||
|
<li>Power on time</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals" id="">
|
||||||
|
<li>
|
||||||
|
<div id="iforte_h0_v"></div>h / <div id="iforte_hr0_v"></div>h
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
<small>total / resettable</small>
|
||||||
|
</p>
|
||||||
|
<ul class="group">
|
||||||
|
<li>LED on time total</li>
|
||||||
|
<li>LED on time adaptive</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals">
|
||||||
|
<li>
|
||||||
|
<div id="iforte_h1_v"></div>h
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_hr1_v"></div>h
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6 col-xl-4 box-c">
|
||||||
|
<h2>Device temperatures <a class="cfg" onclick="open_modal(2);">
|
||||||
|
<img src="../files/settings.svg">
|
||||||
|
</a>
|
||||||
|
</h2>
|
||||||
|
<div class="box">
|
||||||
|
<ul class="group">
|
||||||
|
<li>LEDs</li>
|
||||||
|
<li>PSU</li>
|
||||||
|
<li>Driver</li>
|
||||||
|
<li>Base</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals" id="">
|
||||||
|
<li>
|
||||||
|
<div id="iforte_t0_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm0_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr0_v"></div>° <div class="iforte_tu"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_t3_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm3_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr3_v"></div>° <div class="iforte_tu"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_t1_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm1_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr1_v"></div>° <div class="iforte_tu"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_t2_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tm2_v"></div>° <div class="iforte_tu"></div> / <div id="iforte_tmr2_v"></div>° <div class="iforte_tu"></div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
<small>current / maximum / resettable</small>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6 col-xl-4 box-c">
|
||||||
|
<h2>Wireless state <a class="cfg" onclick="open_modal(3);">
|
||||||
|
<img src="../files/settings.svg">
|
||||||
|
</a>
|
||||||
|
</h2>
|
||||||
|
<div class="box">
|
||||||
|
<ul class="group">
|
||||||
|
<li>State</li>
|
||||||
|
<li>Signal strength</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals" id="">
|
||||||
|
<li>
|
||||||
|
<div id="iforte_lwc_v"></div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div id="iforte_lws_v">%</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6 col-xl-4 box-c">
|
||||||
|
<h2>Software versions</h2>
|
||||||
|
<div class="box">
|
||||||
|
<ul class="group">
|
||||||
|
<li>Display System</li>
|
||||||
|
<li>Module M</li>
|
||||||
|
<li>Module L1</li>
|
||||||
|
<li>Module L2</li>
|
||||||
|
<li>Module O</li>
|
||||||
|
<li>Module F-A</li>
|
||||||
|
<li>Module F-B</li>
|
||||||
|
<li>Module G1</li>
|
||||||
|
<li>Module G2</li>
|
||||||
|
<li>Module P</li>
|
||||||
|
<li>Module C1</li>
|
||||||
|
<li>Module C2</li>
|
||||||
|
<li>Module DL</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals" id="sw_vers">
|
||||||
|
<li>1.9</li>
|
||||||
|
<li>1.4</li>
|
||||||
|
<li>1.6</li>
|
||||||
|
<li>1.5</li>
|
||||||
|
<li>1.3</li>
|
||||||
|
<li>1.1</li>
|
||||||
|
<li>1.1</li>
|
||||||
|
<li>1.5</li>
|
||||||
|
<li>1.5</li>
|
||||||
|
<li>1.2</li>
|
||||||
|
<li>1.2</li>
|
||||||
|
<li>1.2</li>
|
||||||
|
<li>1.2</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6 col-xl-4 box-c">
|
||||||
|
<h2>Device state</h2>
|
||||||
|
<div class="box">
|
||||||
|
<ul class="group">
|
||||||
|
<li>Device status</li>
|
||||||
|
</ul>
|
||||||
|
<ul class="group vals" id="">
|
||||||
|
<li>
|
||||||
|
<div id="iforte_devs_v"></div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<button class="btn btn-primary btn-block esm dn btn-success" value="0" style="display: inline-block;">Enter standby mode</button>
|
||||||
|
<div>Current RAINS status</div>
|
||||||
|
<div>
|
||||||
|
<small class="fl">WET</small>
|
||||||
|
<small class="fr">DRY</small>
|
||||||
|
</div>
|
||||||
|
<div id="iforte_rai" class="rains">
|
||||||
|
<div style="width: 63%;"></div>
|
||||||
|
</div>
|
||||||
|
<div>MAX WET/resettable</div>
|
||||||
|
<div>
|
||||||
|
<small class="fl">WET</small>
|
||||||
|
<small class="fr">DRY</small>
|
||||||
|
</div>
|
||||||
|
<div id="iforte_rair" class="rains">
|
||||||
|
<div style="width: 63%;"></div>
|
||||||
|
</div>
|
||||||
|
<button class="btn btn-primary btn-block mwr" value="0">MAX WET reset</button>
|
||||||
|
<p>
|
||||||
|
<small id="iforte_wrt">last reset: 2.3.2023 16:19:57</small>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-12 box-c">
|
||||||
|
<h2 id="sta_err">Status messages</h2>
|
||||||
|
<div class="box">
|
||||||
|
<li>This is a simulated REAP™ page for demo purposes. Some content might be different on real fixtures.</li>
|
||||||
|
<li>Big thanks to Vincent BOUQUET for creating this simulator.</li>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="cfg-modal" class="modal fade" tabindex="-1" role="dialog">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<img src="../files/settings.svg">
|
||||||
|
<h5 class="modal-title" id="m-t"></h5>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body" id="m-b"></div>
|
||||||
|
<div class="modal-footer" id="m-f">
|
||||||
|
<button type="button" class="btn btn-primary sb">Save</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
var a_m = -1;
|
||||||
|
var m_t = ['DMX/RDM settings', 'Reset timers', 'Reset temperatures', 'Wireless settings', ];
|
||||||
|
|
||||||
function open_modal(i) {
|
function open_modal(i) {
|
||||||
a_m = i;
|
a_m = i;
|
||||||
mhdr_status('');
|
mhdr_status('');
|
||||||
if (a_m < m_t.length) {
|
if (a_m < m_t.length) {
|
||||||
$('#m-t').html(m_t[a_m])
|
$('#m-t').html(m_t[a_m])
|
||||||
|
}
|
||||||
|
$('.sb').unbind();
|
||||||
|
$('#m-f').empty();
|
||||||
|
$('#m-f').append(' <button type="button" class="btn btn-primary sb">Save</button>');
|
||||||
|
if(a_m==0) $('#m-f').show();
|
||||||
|
else $('#m-f').hide();
|
||||||
|
var h='';if(a_m==0){
|
||||||
|
h+=c_txt('dmxa','DMX address','Please put DMX address from 1 to 512');
|
||||||
|
h+=c_opt('dmxp','DMX preset',[1],'Mode ',0,1,'');
|
||||||
|
h+=c_opt('dmxi','DMX input',['wired','wireless','wireless XLR out'],'',0,1,'Can not set wireless input now!');
|
||||||
|
h+=c_txt('rdmn','RDM label','Please insert label,max 32 characters')
|
||||||
|
} else if(a_m==1){
|
||||||
|
h+=c_btn('Power on time reset',0,' rh')
|
||||||
|
} else if(a_m==2){
|
||||||
|
h+=c_btn('LEDs temperature reset',0,' rt');
|
||||||
|
h+=c_btn('PSU temperature reset',3,' rt');
|
||||||
|
h+=c_btn('Driver temperature reset',1,' rt');
|
||||||
|
h+=c_btn('Base temperature reset',2,' rt')
|
||||||
|
} else if(a_m==3){
|
||||||
|
h+=c_btn('Unlink Wireless module',0,' lwu')
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#m-b').html(h);
|
||||||
|
copy_form_values(1);
|
||||||
|
$('#cfg-modal').modal();
|
||||||
|
$('.sb').bind('click',function(){
|
||||||
|
loader(1);
|
||||||
|
var par=['dmxa','dmxp','dmxi','rdmn'];
|
||||||
|
do_ajax('/set_dmx',pv(par),function (json){
|
||||||
|
if(json){
|
||||||
|
if(json['status']==0){
|
||||||
|
mhdr_status('suc');
|
||||||
|
copy_form_values(0);
|
||||||
|
if(a_m==0){
|
||||||
|
console.log(json['dmxf']);
|
||||||
|
fill_values(json,['dmxf'])
|
||||||
|
} ptit(json['pt']);
|
||||||
|
close_modal()
|
||||||
|
}
|
||||||
|
show_errors(json['status'],par);
|
||||||
|
loader(0)
|
||||||
}
|
}
|
||||||
$('.sb').unbind();
|
})
|
||||||
$('#m-f').empty();
|
});
|
||||||
$('#m-f').append(' <button type="button" class="btn btn-primary sb">Save</button>');
|
|
||||||
if(a_m==0) $('#m-f').show();
|
$('.rh ').bind('click ',function(){
|
||||||
else $('#m-f').hide();
|
loader(1);
|
||||||
var h='';if(a_m==0){
|
do_ajax('/reset_hours',{
|
||||||
h+=c_txt('dmxa','DMX address','Please put DMX address from 1 to 512');
|
index: $(this).attr('value')
|
||||||
h+=c_opt('dmxp','DMX preset',[1],'Mode ',0,1,'');
|
},function (json){
|
||||||
h+=c_opt('dmxi','DMX input',['wired','wireless','wireless XLR out'],'',0,1,'Can not set wireless input now!');
|
if(json){
|
||||||
h+=c_txt('rdmn','RDM label','Please insert label,max 32 characters')
|
mhdr_status('suc');
|
||||||
} else if(a_m==1){
|
fill_values(json,['hr0','hr1','hr2','hr3'])
|
||||||
h+=c_btn('Power on time reset',0,' rh')
|
|
||||||
} else if(a_m==2){
|
|
||||||
h+=c_btn('LEDs temperature reset',0,' rt');
|
|
||||||
h+=c_btn('PSU temperature reset',3,' rt');
|
|
||||||
h+=c_btn('Driver temperature reset',1,' rt');
|
|
||||||
h+=c_btn('Base temperature reset',2,' rt')
|
|
||||||
} else if(a_m==3){
|
|
||||||
h+=c_btn('Unlink Wireless module',0,' lwu')
|
|
||||||
}
|
}
|
||||||
|
loader(0)
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
$('#m-b').html(h);
|
$('.rt').bind('click',function(){
|
||||||
copy_form_values(1);
|
loader(1);
|
||||||
$('#cfg-modal').modal();
|
do_ajax('/reset_temps',{
|
||||||
$('.sb').bind('click',function(){
|
index: $(this).attr('value')
|
||||||
loader(1);
|
},function (json){
|
||||||
var par=['dmxa','dmxp','dmxi','rdmn'];
|
if(json){
|
||||||
do_ajax('/set_dmx',pv(par),function (json){
|
mhdr_status('suc');
|
||||||
if(json){
|
fill_values(json,['tmr0','tmr1','tmr2'])
|
||||||
if(json['status']==0){
|
}
|
||||||
mhdr_status('suc');
|
loader(0)
|
||||||
copy_form_values(0);
|
})
|
||||||
if(a_m==0){
|
});
|
||||||
console.log(json['dmxf']);
|
|
||||||
fill_values(json,['dmxf'])
|
|
||||||
} ptit(json['pt']);
|
|
||||||
close_modal()
|
|
||||||
}
|
|
||||||
show_errors(json['status'],par);
|
|
||||||
loader(0)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
|
|
||||||
$('.rh ').bind('click ',function(){
|
$('.lwu').bind('click',function(){
|
||||||
loader(1);
|
loader(1);
|
||||||
do_ajax('/reset_hours',{
|
do_ajax('/lwm',{
|
||||||
index: $(this).attr('value')
|
unlink:1
|
||||||
},function (json){
|
},function (json){
|
||||||
if(json){
|
if(json){
|
||||||
mhdr_status('suc');
|
fill_values(json,['lwc','lws']);
|
||||||
fill_values(json,['hr0','hr1','hr2','hr3'])
|
mhdr_status('suc');
|
||||||
}
|
close_modal()
|
||||||
loader(0)
|
}
|
||||||
})
|
loader(0)
|
||||||
});
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
$('.rt').bind('click',function(){
|
$(document).ready(function(){
|
||||||
loader(1);
|
var emb=$('button.esm');
|
||||||
do_ajax('/reset_temps',{
|
emb.addClass('btn-success');
|
||||||
index: $(this).attr('value')
|
function ems_btn(v){
|
||||||
},function (json){
|
if(v==0){
|
||||||
if(json){
|
emb.removeClass('sa btn-warning').html('Enter standby mode').show()
|
||||||
mhdr_status('suc');
|
} else {
|
||||||
fill_values(json,['tmr0','tmr1','tmr2'])
|
emb.addClass('sa btn-warning').html('Escape standby mode').show()
|
||||||
}
|
}
|
||||||
loader(0)
|
}
|
||||||
})
|
emb.click(function(){
|
||||||
});
|
var run=true;
|
||||||
|
var s_v=(emb.hasClass('sa') ? 0:1);
|
||||||
$('.lwu').bind('click',function(){
|
if((s_v==1)&&!confirm('Are you sure you want to enter standby mode?')) run=false;
|
||||||
loader(1);
|
if(run){
|
||||||
do_ajax('/lwm',{
|
do_ajax('/sbm',{
|
||||||
unlink:1
|
s:s_v
|
||||||
},function (json){
|
},function (json){
|
||||||
if(json){
|
ems_btn(json['sm']);
|
||||||
fill_values(json,['lwc','lws']);
|
fill_values(json,['devs'])
|
||||||
mhdr_status('suc');
|
|
||||||
close_modal()
|
|
||||||
}
|
|
||||||
loader(0)
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
});
|
||||||
$(document).ready(function(){
|
var bussy=0;
|
||||||
var emb=$('button.esm');
|
function do_5s(){bussy|=(1 << 0);
|
||||||
emb.addClass('btn-success');
|
do_ajax('/lwm', {}, function(json) {
|
||||||
function ems_btn(v){
|
if (json) {
|
||||||
if(v==0){
|
fill_values(json, ['lwc', 'lws'])
|
||||||
emb.removeClass('sa btn-warning').html('Enter standby mode').show()
|
|
||||||
} else {
|
|
||||||
emb.addClass('sa btn-warning').html('Escape standby mode').show()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
emb.click(function(){
|
bussy &= ~(1 << 0)
|
||||||
var run=true;
|
|
||||||
var s_v=(emb.hasClass('sa') ? 0:1);
|
|
||||||
if((s_v==1)&&!confirm('Are you sure you want to enter standby mode?')) run=false;
|
|
||||||
if(run){
|
|
||||||
do_ajax('/sbm',{
|
|
||||||
s:s_v
|
|
||||||
},function (json){
|
|
||||||
ems_btn(json['sm']);
|
|
||||||
fill_values(json,['devs'])
|
|
||||||
})
|
|
||||||
}
|
|
||||||
});
|
|
||||||
var bussy=0;
|
|
||||||
function do_5s(){bussy|=(1 << 0);
|
|
||||||
do_ajax('/lwm', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
fill_values(json, ['lwc', 'lws'])
|
|
||||||
}
|
|
||||||
bussy &= ~(1 << 0)
|
|
||||||
});
|
|
||||||
bussy |= (1 << 1);
|
|
||||||
do_ajax('/reset_temps', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
fill_values(json, ['t0', 't1', 't2', 't3', 'tm0', 'tm1', 'tm2', 'tm3', 'tmr0', 'tmr1', 'tmr2', 'tmr3']);
|
|
||||||
$('.tu').html(json['tu'])
|
|
||||||
}
|
|
||||||
bussy &= ~(1 << 1)
|
|
||||||
});
|
|
||||||
bussy |= (1 << 3);
|
|
||||||
do_ajax('/reset_hours', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
fill_values(json, ['h0', 'h1', 'h2', 'h3', 'hr0', 'hr1', 'hr2', 'hr3'])
|
|
||||||
}
|
|
||||||
bussy &= ~(1 << 3)
|
|
||||||
});
|
|
||||||
bussy |= (1 << 4);
|
|
||||||
do_ajax('/devsta', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
fill_values(json, ['devs']);
|
|
||||||
$('#rai>div').css('width', json['rains']);
|
|
||||||
$('#rair>div').css('width', json['maxw']);
|
|
||||||
$('#wrt').html('last reset: ' + json['maxwt']);
|
|
||||||
ems_btn(json['sm'])
|
|
||||||
} else {
|
|
||||||
fill_values({
|
|
||||||
devs: 'disconnected'
|
|
||||||
}, ['devs'])
|
|
||||||
}
|
|
||||||
bussy &= ~(1 << 4)
|
|
||||||
});
|
|
||||||
bussy |= (1 << 7);
|
|
||||||
do_ajax('/errors', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
if (json['err']) {
|
|
||||||
if (json['err'].length) $('#sta_err').addClass('err');
|
|
||||||
else $('#sta_err').removeClass('err');
|
|
||||||
var html = '';
|
|
||||||
for (i = 0; i < json['err'].length; i++) html += ' <li> ' + json['err'][i] + ' </li>';
|
|
||||||
$('#err_v').html(html)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
bussy&=~(1 << 7)})
|
|
||||||
}
|
|
||||||
do_ajax('/status_i', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
fill_values(json, ['dmxa', 'dmxp', 'dmxf', 'dmxi', 'pt', 'ip', 'mac', 'rdmu', 'rdmn']);
|
|
||||||
ptit(json['pt']);
|
|
||||||
$('.tu').html(json['tu'])
|
|
||||||
}
|
|
||||||
});
|
|
||||||
do_ajax('/reset_hours', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
fill_values(json, ['h0', 'h1', 'h2', 'h3', 'hr0', 'hr1', 'hr2', 'hr3'])
|
|
||||||
}
|
|
||||||
});
|
|
||||||
do_ajax('/sw_ver', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
$('#sw_vers li').each(function(i) {
|
|
||||||
var v = json['vers'][i];
|
|
||||||
$(this).html(v == 0 ? '-' : Math.floor(v / 10) + '.' + (v % 10))
|
|
||||||
})
|
|
||||||
}
|
|
||||||
});
|
|
||||||
do_5s();
|
|
||||||
setInterval(function() {
|
|
||||||
if (bussy == 0) do_5s()
|
|
||||||
}, 5000);
|
|
||||||
$('button.mwr').click(function() {
|
|
||||||
do_ajax('/mwres', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
$('#rair>div').css('width', json['maxw']);
|
|
||||||
$('#wrt').html('last reset: ' + json['maxwt'])
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
});
|
});
|
||||||
</script>
|
bussy |= (1 << 1);
|
||||||
</body>
|
do_ajax('/reset_temps', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
fill_values(json, ['t0', 't1', 't2', 't3', 'tm0', 'tm1', 'tm2', 'tm3', 'tmr0', 'tmr1', 'tmr2', 'tmr3']);
|
||||||
|
$('.tu').html(json['tu'])
|
||||||
|
}
|
||||||
|
bussy &= ~(1 << 1)
|
||||||
|
});
|
||||||
|
bussy |= (1 << 3);
|
||||||
|
do_ajax('/reset_hours', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
fill_values(json, ['h0', 'h1', 'h2', 'h3', 'hr0', 'hr1', 'hr2', 'hr3'])
|
||||||
|
}
|
||||||
|
bussy &= ~(1 << 3)
|
||||||
|
});
|
||||||
|
bussy |= (1 << 4);
|
||||||
|
do_ajax('/devsta', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
fill_values(json, ['devs']);
|
||||||
|
$('#rai>div').css('width', json['rains']);
|
||||||
|
$('#rair>div').css('width', json['maxw']);
|
||||||
|
$('#wrt').html('last reset: ' + json['maxwt']);
|
||||||
|
ems_btn(json['sm'])
|
||||||
|
} else {
|
||||||
|
fill_values({
|
||||||
|
devs: 'disconnected'
|
||||||
|
}, ['devs'])
|
||||||
|
}
|
||||||
|
bussy &= ~(1 << 4)
|
||||||
|
});
|
||||||
|
bussy |= (1 << 7);
|
||||||
|
do_ajax('/errors', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
if (json['err']) {
|
||||||
|
if (json['err'].length) $('#sta_err').addClass('err');
|
||||||
|
else $('#sta_err').removeClass('err');
|
||||||
|
var html = '';
|
||||||
|
for (i = 0; i < json['err'].length; i++) html += ' <li> ' + json['err'][i] + ' </li>';
|
||||||
|
$('#err_v').html(html)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bussy&=~(1 << 7)})
|
||||||
|
}
|
||||||
|
do_ajax('/status_i', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
fill_values(json, ['dmxa', 'dmxp', 'dmxf', 'dmxi', 'pt', 'ip', 'mac', 'rdmu', 'rdmn']);
|
||||||
|
ptit(json['pt']);
|
||||||
|
$('.tu').html(json['tu'])
|
||||||
|
}
|
||||||
|
});
|
||||||
|
do_ajax('/reset_hours', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
fill_values(json, ['h0', 'h1', 'h2', 'h3', 'hr0', 'hr1', 'hr2', 'hr3'])
|
||||||
|
}
|
||||||
|
});
|
||||||
|
do_ajax('/sw_ver', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
$('#sw_vers li').each(function(i) {
|
||||||
|
var v = json['vers'][i];
|
||||||
|
$(this).html(v == 0 ? '-' : Math.floor(v / 10) + '.' + (v % 10))
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
|
do_5s();
|
||||||
|
setInterval(function() {
|
||||||
|
if (bussy == 0) do_5s()
|
||||||
|
}, 5000);
|
||||||
|
$('button.mwr').click(function() {
|
||||||
|
do_ajax('/mwres', {}, function(json) {
|
||||||
|
if (json) {
|
||||||
|
$('#rair>div').css('width', json['maxw']);
|
||||||
|
$('#wrt').html('last reset: ' + json['maxwt'])
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -8,11 +8,25 @@
|
|||||||
<script src="../files/popper.min.js"></script>
|
<script src="../files/popper.min.js"></script>
|
||||||
<script src="../files/bootstrap.min.js"></script>
|
<script src="../files/bootstrap.min.js"></script>
|
||||||
<script src="./base.js"></script>
|
<script src="./base.js"></script>
|
||||||
<title id="pt_v">iForte</title>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- NAV WILL BE ADDED HERE BY FUNCTION IN BASE JS -->
|
<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">
|
||||||
<div class="fixed-top text-center device-label" id="pth">iForte</div>
|
<div class="container">
|
||||||
|
<a class="navbar-brand" href="./index.html"><img src="../files/robe_logo_white.svg"></a><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"><span class="navbar-toggler-icon"></span></button>
|
||||||
|
<div class="collapse navbar-collapse" id="navbar">
|
||||||
|
<ul class="navbar-nav mr-auto">
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./index.html">Status</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./personality.html">Personality</a></li>
|
||||||
|
<li class="nav-item active"><a class="nav-link" href="./logs.html">Logs</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./sensors.html">RAINS logs</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./discovery.html">Discovery</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" id="idnt"><img class="rdmi" src="../files/identify.svg"></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<div class="fixed-top text-center device-label" id="pth" onclick="window.location = ('../index.html')"></div>
|
||||||
<div class="container-fluid in">
|
<div class="container-fluid in">
|
||||||
<h1>Device logs</h1>
|
<h1>Device logs</h1>
|
||||||
<div class="row" id="boxes">
|
<div class="row" id="boxes">
|
||||||
|
|||||||
@@ -8,11 +8,25 @@
|
|||||||
<script src="../files/popper.min.js"></script>
|
<script src="../files/popper.min.js"></script>
|
||||||
<script src="../files/bootstrap.min.js"></script>
|
<script src="../files/bootstrap.min.js"></script>
|
||||||
<script src="./base.js"></script>
|
<script src="./base.js"></script>
|
||||||
<title id="pt_v">iForte</title>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- NAV WILL BE ADDED HERE BY FUNCTION IN BASE JS -->
|
<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">
|
||||||
<div class="fixed-top text-center device-label" id="pth">iForte</div>
|
<div class="container">
|
||||||
|
<a class="navbar-brand" href="./index.html"><img src="../files/robe_logo_white.svg"></a><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"><span class="navbar-toggler-icon"></span></button>
|
||||||
|
<div class="collapse navbar-collapse" id="navbar">
|
||||||
|
<ul class="navbar-nav mr-auto">
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./index.html">Status</a></li>
|
||||||
|
<li class="nav-item active"><a class="nav-link" href="./personality.html">Personality</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./logs.html">Logs</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./sensors.html">RAINS logs</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./discovery.html">Discovery</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" id="idnt"><img class="rdmi" src="../files/identify.svg"></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<div class="fixed-top text-center device-label" id="pth" onclick="window.location = ('../index.html')"></div>
|
||||||
<div class="container-fluid in">
|
<div class="container-fluid in">
|
||||||
<h1>Personality</h1>
|
<h1>Personality</h1>
|
||||||
<div class="row" id="boxes">
|
<div class="row" id="boxes">
|
||||||
|
|||||||
@@ -8,11 +8,25 @@
|
|||||||
<script src="../files/popper.min.js"></script>
|
<script src="../files/popper.min.js"></script>
|
||||||
<script src="../files/bootstrap.min.js"></script>
|
<script src="../files/bootstrap.min.js"></script>
|
||||||
<script src="./base.js"></script>
|
<script src="./base.js"></script>
|
||||||
<title id="pt_v">iForte</title>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<!-- NAV WILL BE ADDED HERE BY FUNCTION IN BASE JS -->
|
<nav class="navbar fixed-top navbar-expand-md navbar-dark bg-dark">
|
||||||
<div class="fixed-top text-center device-label" id="pth">iForte</div>
|
<div class="container">
|
||||||
|
<a class="navbar-brand" href="./index.html"><img src="../files/robe_logo_white.svg"></a><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"><span class="navbar-toggler-icon"></span></button>
|
||||||
|
<div class="collapse navbar-collapse" id="navbar">
|
||||||
|
<ul class="navbar-nav mr-auto">
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./index.html">Status</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./personality.html">Personality</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./logs.html">Logs</a></li>
|
||||||
|
<li class="nav-item active"><a class="nav-link" href="./sensors.html">RAINS logs</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="./discovery.html">Discovery</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" id="scfg">Settings</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" id="idnt"><img class="rdmi" src="../files/identify.svg"></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
<div class="fixed-top text-center device-label" id="pth" onclick="window.location = ('../index.html')"></div>
|
||||||
<div class="container-fluid in">
|
<div class="container-fluid in">
|
||||||
<h1>RAINS logs</h1>
|
<h1>RAINS logs</h1>
|
||||||
<div class="row" id="boxes">
|
<div class="row" id="boxes">
|
||||||
@@ -205,588 +219,7 @@
|
|||||||
<td>15.0</td>
|
<td>15.0</td>
|
||||||
<td>1013</td>
|
<td>1013</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 14:37:23</td>
|
|
||||||
<td>40</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 14:22:14</td>
|
|
||||||
<td>39</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 14:09:07</td>
|
|
||||||
<td>38</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:57:46</td>
|
|
||||||
<td>37</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:47:52</td>
|
|
||||||
<td>36</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:34:57</td>
|
|
||||||
<td>35</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:27:38</td>
|
|
||||||
<td>34</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:21:20</td>
|
|
||||||
<td>33</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:16:00</td>
|
|
||||||
<td>32</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:11:49</td>
|
|
||||||
<td>31</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1015</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:07:53</td>
|
|
||||||
<td>30</td>
|
|
||||||
<td>15.5</td>
|
|
||||||
<td>1015</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:06:27</td>
|
|
||||||
<td>29</td>
|
|
||||||
<td>16.0</td>
|
|
||||||
<td>1015</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:05:33</td>
|
|
||||||
<td>28</td>
|
|
||||||
<td>17.0</td>
|
|
||||||
<td>1015</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:04:55</td>
|
|
||||||
<td>27</td>
|
|
||||||
<td>17.5</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:04:29</td>
|
|
||||||
<td>26</td>
|
|
||||||
<td>18.5</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-3-2">2.3.2023 13:04:27</td>
|
|
||||||
<td>25</td>
|
|
||||||
<td>19.0</td>
|
|
||||||
<td>1014</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 17:18:05</td>
|
|
||||||
<td>45</td>
|
|
||||||
<td>16.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 15:25:35</td>
|
|
||||||
<td>44</td>
|
|
||||||
<td>16.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 14:31:57</td>
|
|
||||||
<td>43</td>
|
|
||||||
<td>15.5</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 13:59:13</td>
|
|
||||||
<td>42</td>
|
|
||||||
<td>15.0</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 13:34:59</td>
|
|
||||||
<td>41</td>
|
|
||||||
<td>15.0</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 13:07:05</td>
|
|
||||||
<td>40</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 12:51:56</td>
|
|
||||||
<td>39</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 12:38:54</td>
|
|
||||||
<td>38</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 12:27:25</td>
|
|
||||||
<td>37</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 12:17:14</td>
|
|
||||||
<td>36</td>
|
|
||||||
<td>13.0</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 12:02:59</td>
|
|
||||||
<td>35</td>
|
|
||||||
<td>13.0</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:54:48</td>
|
|
||||||
<td>34</td>
|
|
||||||
<td>12.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:47:16</td>
|
|
||||||
<td>33</td>
|
|
||||||
<td>12.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:40:27</td>
|
|
||||||
<td>32</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:33:47</td>
|
|
||||||
<td>31</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:24:50</td>
|
|
||||||
<td>30</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:19:32</td>
|
|
||||||
<td>29</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:15:04</td>
|
|
||||||
<td>28</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:11:11</td>
|
|
||||||
<td>27</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:08:33</td>
|
|
||||||
<td>26</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:06:43</td>
|
|
||||||
<td>25</td>
|
|
||||||
<td>12.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:06:05</td>
|
|
||||||
<td>24</td>
|
|
||||||
<td>13.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:05:05</td>
|
|
||||||
<td>23</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:04:27</td>
|
|
||||||
<td>22</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-28">28.2.2023 11:03:59</td>
|
|
||||||
<td>21</td>
|
|
||||||
<td>15.0</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 19:12:54</td>
|
|
||||||
<td>47</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1019</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 19:12:52</td>
|
|
||||||
<td>46</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1019</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 18:34:19</td>
|
|
||||||
<td>48</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 18:34:17</td>
|
|
||||||
<td>47</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 18:09:40</td>
|
|
||||||
<td>49</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 18:09:36</td>
|
|
||||||
<td>48</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:49:22</td>
|
|
||||||
<td>50</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:49:20</td>
|
|
||||||
<td>49</td>
|
|
||||||
<td>18.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:26:01</td>
|
|
||||||
<td>51</td>
|
|
||||||
<td>17.5</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:25:59</td>
|
|
||||||
<td>50</td>
|
|
||||||
<td>17.5</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:14:44</td>
|
|
||||||
<td>52</td>
|
|
||||||
<td>17.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:14:42</td>
|
|
||||||
<td>51</td>
|
|
||||||
<td>17.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:04:53</td>
|
|
||||||
<td>53</td>
|
|
||||||
<td>16.5</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 17:04:51</td>
|
|
||||||
<td>52</td>
|
|
||||||
<td>16.5</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:56:23</td>
|
|
||||||
<td>54</td>
|
|
||||||
<td>16.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:56:21</td>
|
|
||||||
<td>53</td>
|
|
||||||
<td>16.0</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:40:54</td>
|
|
||||||
<td>55</td>
|
|
||||||
<td>15.0</td>
|
|
||||||
<td>1017</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:36:41</td>
|
|
||||||
<td>57</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:36:39</td>
|
|
||||||
<td>56</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1018</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:33:03</td>
|
|
||||||
<td>58</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1017</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:33:01</td>
|
|
||||||
<td>57</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1017</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:24:56</td>
|
|
||||||
<td>59</td>
|
|
||||||
<td>13.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:22:46</td>
|
|
||||||
<td>58</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:20:52</td>
|
|
||||||
<td>57</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:19:10</td>
|
|
||||||
<td>56</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:16:52</td>
|
|
||||||
<td>55</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:15:30</td>
|
|
||||||
<td>54</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:14:16</td>
|
|
||||||
<td>53</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:13:10</td>
|
|
||||||
<td>52</td>
|
|
||||||
<td>15.0</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:12:06</td>
|
|
||||||
<td>51</td>
|
|
||||||
<td>15.5</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:10:41</td>
|
|
||||||
<td>50</td>
|
|
||||||
<td>16.0</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:09:43</td>
|
|
||||||
<td>49</td>
|
|
||||||
<td>16.5</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:08:51</td>
|
|
||||||
<td>48</td>
|
|
||||||
<td>16.5</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 16:07:55</td>
|
|
||||||
<td>47</td>
|
|
||||||
<td>17.0</td>
|
|
||||||
<td>1021</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:59:36</td>
|
|
||||||
<td>46</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1019</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:51:00</td>
|
|
||||||
<td>45</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:50:06</td>
|
|
||||||
<td>44</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:49:14</td>
|
|
||||||
<td>43</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:48:22</td>
|
|
||||||
<td>42</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1022</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:47:25</td>
|
|
||||||
<td>41</td>
|
|
||||||
<td>15.0</td>
|
|
||||||
<td>1023</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:36:01</td>
|
|
||||||
<td>40</td>
|
|
||||||
<td>14.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:20:20</td>
|
|
||||||
<td>39</td>
|
|
||||||
<td>14.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 12:06:37</td>
|
|
||||||
<td>38</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:55:32</td>
|
|
||||||
<td>37</td>
|
|
||||||
<td>13.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:44:59</td>
|
|
||||||
<td>36</td>
|
|
||||||
<td>13.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:31:20</td>
|
|
||||||
<td>35</td>
|
|
||||||
<td>12.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:23:24</td>
|
|
||||||
<td>34</td>
|
|
||||||
<td>12.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:16:09</td>
|
|
||||||
<td>33</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:09:37</td>
|
|
||||||
<td>32</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 11:03:06</td>
|
|
||||||
<td>31</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 10:54:30</td>
|
|
||||||
<td>30</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 10:49:27</td>
|
|
||||||
<td>29</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 10:45:43</td>
|
|
||||||
<td>28</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 10:41:39</td>
|
|
||||||
<td>27</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 10:38:39</td>
|
|
||||||
<td>26</td>
|
|
||||||
<td>11.5</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-27">27.2.2023 10:36:32</td>
|
|
||||||
<td>25</td>
|
|
||||||
<td>12.0</td>
|
|
||||||
<td>1020</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@@ -872,60 +305,6 @@
|
|||||||
<td>01:58</td>
|
<td>01:58</td>
|
||||||
<td>OK</td>
|
<td>OK</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-7">7.2.2023 20:10:07</td>
|
|
||||||
<td>-32</td>
|
|
||||||
<td>0.0</td>
|
|
||||||
<td>0</td>
|
|
||||||
<td>0.00</td>
|
|
||||||
<td>00:00</td>
|
|
||||||
<td>valve seal error</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-7">7.2.2023 20:02:52</td>
|
|
||||||
<td>-32</td>
|
|
||||||
<td>0.0</td>
|
|
||||||
<td>0</td>
|
|
||||||
<td>0.00</td>
|
|
||||||
<td>00:00</td>
|
|
||||||
<td>valve seal error</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-7">7.2.2023 20:01:55</td>
|
|
||||||
<td>-32</td>
|
|
||||||
<td>0.0</td>
|
|
||||||
<td>0</td>
|
|
||||||
<td>0.00</td>
|
|
||||||
<td>00:00</td>
|
|
||||||
<td>valve seal error</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-7">7.2.2023 19:56:35</td>
|
|
||||||
<td>-32</td>
|
|
||||||
<td>0.0</td>
|
|
||||||
<td>0</td>
|
|
||||||
<td>0.00</td>
|
|
||||||
<td>00:00</td>
|
|
||||||
<td>valve seal error</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-7">7.2.2023 19:54:28</td>
|
|
||||||
<td>-32</td>
|
|
||||||
<td>0.0</td>
|
|
||||||
<td>0</td>
|
|
||||||
<td>0.00</td>
|
|
||||||
<td>00:00</td>
|
|
||||||
<td>valve seal error</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td data-target="2023-2-7">7.2.2023 19:52:21</td>
|
|
||||||
<td>-32</td>
|
|
||||||
<td>0.0</td>
|
|
||||||
<td>0</td>
|
|
||||||
<td>0.00</td>
|
|
||||||
<td>00:00</td>
|
|
||||||
<td>valve seal error</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@@ -951,243 +330,5 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
$('h1').html('RAINS logs');
|
|
||||||
|
|
||||||
function gth(i) {
|
|
||||||
var html = ' < div class = "table-responsive" > < table class = "table mt-2" > < thead > < tr > < th > Date / Time < /th> < th > Temperature[ & deg; C] < /th> < th > Relative humidity[ % ] < /th> < th > Pressure[hPa] < /th>';if(i==1){html+=' < th > Pressure difference[hPa] < /th> < th > Duration[m: s] < /th> < th > Result < /th>'}html+=' < /tr> < /thead>';if(i==0){html+=' < tbody id = "sensd" > '} else {html+=' < tbody id = "presr" > '}html+=' < /tbody> < /table> < /div>';return html}var html=' < div class = "col-12" > < ul class = "nav nav-tabs"
|
|
||||||
id = "tab" > < li class = "nav-item" > < a class = "nav-link active"
|
|
||||||
href = "#sl" > Sensors < /a> < /li> < li class = "nav-item" > < a class = "nav-link"
|
|
||||||
href = "#pl" > Pressure measurements < /a> < /li> < /ul> < div class = "tab-content" > < div class = "tab-pane fade show active"
|
|
||||||
id = "sl"
|
|
||||||
role = "tabpanel" > ';html+=' < div class = "row" > < div class = "col-12 box-c mt-2 mb-2" > ';html+=' < h2 id = "sta_err" > < button class = "btn btn-primary btn-pm collapsed"
|
|
||||||
type = "button"
|
|
||||||
data - toggle = "collapse"
|
|
||||||
data - target = "#lfb" > < i class = "blue" > < /i> < /button>';html+=' Logs filter';html+=' < /h2>';html+=' < div class = "box collapse clearfix"
|
|
||||||
id = "lfb" > ';html+=' < div class = "form-row" > ';html+=c_dt('
|
|
||||||
fsd ','
|
|
||||||
Start date ','
|
|
||||||
','
|
|
||||||
col - auto ','
|
|
||||||
date ');html+=c_dt('
|
|
||||||
fed ','
|
|
||||||
End date ','
|
|
||||||
','
|
|
||||||
col - auto ','
|
|
||||||
date ');html+=' < /div>';html+=c_fsens(0,'Temperature','°C');html+=c_fsens(1,'Relative humidity','%');html+=c_fsens(2,'Pressure','hPa');html+=' < div class = "float-right" > < button type = "button"
|
|
||||||
class = "btn btn-primary mr06"
|
|
||||||
id = "fap" > Apply filter < /button> < button type = "button"
|
|
||||||
class = "btn btn-primary"
|
|
||||||
id = "fcl" > Clear filter < /button> < /div>';html+=' < /div>';html+=' < /div>';html+=' < /div>';html += ' < div class = "clearfix mt-2" > < button class = "btn btn-primary float-right dslog" > Download log file < /button> < /div>';html+=gth(0);html +=' < /div> < div class = "tab-pane fade"
|
|
||||||
id = "pl"
|
|
||||||
role = "tabpanel" > < div class = "clearfix mt-2" > < button class = "btn btn-primary float-right dsprs" > Download measurements file < /button> < /div>';html+=gth(1);html +=' < /div> < /div> < /div>';$('#boxes').html(html);$('#tab a').on('click',function (e){e.preventDefault();$('#tab a').removeClass('active');$(this).addClass('active');var o=$($(this).attr('href'));o.parent().find('div.tab-pane').removeClass('show active');o.addClass('show active')});var df='';var def='';function filter_item(o){var dsp=true;if(df!=''){var dr=o.find('td').eq(0).attr('data-target');if(Date.parse(dr) > Date.parse(df)) dsp=false}if(def!=''){var dr=o.find('td').eq(0).attr('data-target');if(Date.parse(dr) < Date.parse(def)) dsp = false
|
|
||||||
}
|
|
||||||
var vf;
|
|
||||||
var v;
|
|
||||||
for (i = 0; i < 3; i++) {
|
|
||||||
if (dsp && ($('#fts' + i).val() > 0)) {
|
|
||||||
if (i == 1) {
|
|
||||||
vf = parseFloat($('#ftv' + i).val());
|
|
||||||
v = parseFloat(o.find('td').eq(i + 1).html())
|
|
||||||
} else {
|
|
||||||
vf = parseInt($('#ftv' + i).val());
|
|
||||||
v = parseInt(o.find('td').eq(i + 1).html())
|
|
||||||
}
|
|
||||||
switch (parseInt($('#fts' + i).val())) {
|
|
||||||
case 1:
|
|
||||||
if (v != vf) dsp = false;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
if (v >= vf) dsp = false;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
if (v <= vf) dsp = false;
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
if (v > vf) dsp = false;
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
if (v < vf) dsp = false;
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (dsp) o.show();
|
|
||||||
else o.hide()
|
|
||||||
}
|
|
||||||
|
|
||||||
function fils(json, d, t) {
|
|
||||||
var stmp = json['data'].split(' ')[0].split('.');
|
|
||||||
stmp = stmp[2] + '-' + stmp[1] + '-' + stmp[0];
|
|
||||||
var l = ' < tr > ';l+=' < td data - target = "'+stmp+'" > '+json['
|
|
||||||
data ']+' < /td>';l+=' < td > '+json['
|
|
||||||
t ']+' < /td>';l+=' < td > '+json['
|
|
||||||
r ']+' < /td>';l+=' < td > '+json['
|
|
||||||
p ']+' < /td>';if(t==1){l+=' < td > '+json['
|
|
||||||
pd ']+' < /td>';l+=' < td > '+json['
|
|
||||||
mt ']+' < /td>';l+=' < td > '+json['
|
|
||||||
res ']+' < /td>'}l+=' < /tr>';var o='#sensd';if(t==1) o='#presr';if(d){$(o).prepend(l);if(t==0){filter_item($(o).find('tr').first())}} else {$(o).append(l);if(t==0){filter_item($(o).find('tr').last())}}}var lfn='data';$('.dslog').bind('click',function(){var p='';if($('#fap').hasClass('btn-danger')){var d=new Date($('#fsd').val());if(!!d.valueOf()){p+='&sdy='+d.getFullYear();p+='&sdm='+(d.getMonth()+1);p+='&sdd='+d.getDate()}d=new Date($('#fed').val());if(!!d.valueOf()){p+='&edy='+d.getFullYear();p+='&edm='+(d.getMonth()+1);p+='&edd='+d.getDate()}for (i=0;i < 3;
|
|
||||||
i++) {
|
|
||||||
if ($('#fts' + i).val() > 0) {
|
|
||||||
if (p.length) p += '&';
|
|
||||||
var mul = 1;
|
|
||||||
var add = 0;
|
|
||||||
switch (i) {
|
|
||||||
case 0:
|
|
||||||
add = 32;
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
mul = 2;
|
|
||||||
break
|
|
||||||
}
|
|
||||||
p += 'fts' + i + '=' + $('#fts' + i).val() + '&';
|
|
||||||
p += 'ftv' + i + '=' + Math.floor($('#ftv' + i).val() * mul + add)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
do_ajax('/dl_logf', p, function(json) {
|
|
||||||
if (json) {
|
|
||||||
location = 'sensors-' + lfn + '.csv';
|
|
||||||
close_modal()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
$('.dsprs').bind('click', function() {
|
|
||||||
location = 'pressure-tests-' + lfn + '.csv';
|
|
||||||
close_modal()
|
|
||||||
});
|
|
||||||
do_ajax('/status_i', {}, function(json) {
|
|
||||||
if (json) {
|
|
||||||
ptit(json['pt']);
|
|
||||||
lfn = json['lfn']
|
|
||||||
}
|
|
||||||
});
|
|
||||||
var dlti = 0;
|
|
||||||
var dli = 0;
|
|
||||||
var secs = Math.round(new Date().getTime() / 1000);
|
|
||||||
|
|
||||||
function dlr() {
|
|
||||||
do_ajax('/dl_log', 'i=' + dli, function(json) {
|
|
||||||
if (json) {
|
|
||||||
var nsecs = Math.round(new Date().getTime() / 1000);
|
|
||||||
if ((nsecs - secs) >= 60) {
|
|
||||||
window.location = '/sensors'
|
|
||||||
} else {
|
|
||||||
secs = nsecs;
|
|
||||||
if (json['data']) {
|
|
||||||
if (json['type'] == 0) fils(json, dli, json['type']);
|
|
||||||
setTimeout(dlr, 4)
|
|
||||||
} else {
|
|
||||||
if (dli == 0) dli = 1;
|
|
||||||
setTimeout(dlr, 4000)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
setTimeout(dlr, 2000)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
dlr();
|
|
||||||
var pti = 2;
|
|
||||||
|
|
||||||
function ptr() {
|
|
||||||
do_ajax('/dl_log', 'i=' + pti, function(json) {
|
|
||||||
if (json) {
|
|
||||||
if (json['data']) {
|
|
||||||
fils(json, pti - 2, json['type']);
|
|
||||||
setTimeout(ptr, 4)
|
|
||||||
} else {
|
|
||||||
if (pti == 2) pti = 3;
|
|
||||||
setTimeout(ptr, 4000)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
ptr();
|
|
||||||
$('#fap').bind('click', function() {
|
|
||||||
var ec = 0;
|
|
||||||
var er = 0;
|
|
||||||
for (i = 0; i < 3; i++) {
|
|
||||||
$('#ftv' + i).removeClass('is-invalid');
|
|
||||||
var r;
|
|
||||||
if (i == 1) r = parseFloat($('#ftv' + i).val());
|
|
||||||
else r = parseInt($('#ftv' + i).val());
|
|
||||||
if ($('#fts' + i).val() > 0) {
|
|
||||||
if (isNaN(r)) {
|
|
||||||
$('#ftv' + i).addClass('is-invalid');
|
|
||||||
er++
|
|
||||||
} else ec++
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var d = new Date($('#fsd').val());
|
|
||||||
if (!!d.valueOf()) {
|
|
||||||
df = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
|
|
||||||
ec++
|
|
||||||
}
|
|
||||||
d = new Date($('#fed').val());
|
|
||||||
if (!!d.valueOf()) {
|
|
||||||
def = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate();
|
|
||||||
ec++
|
|
||||||
}
|
|
||||||
if (ec > 0) {
|
|
||||||
$(this).addClass('btn-danger');
|
|
||||||
document.cookie = 'fsd=' + $('#fsd').val();
|
|
||||||
document.cookie = 'fed=' + $('#fed').val();
|
|
||||||
for (i = 0; i < 3; i++) {
|
|
||||||
document.cookie = 'ftv' + i + '=' + $('#ftv' + i).val();
|
|
||||||
document.cookie = 'fts' + i + '=' + $('#fts' + i).val()
|
|
||||||
}
|
|
||||||
if ($('#sta_err>button').hasClass('collapsed')) {
|
|
||||||
$('#sta_err>button').click()
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$(this).removeClass('btn-danger');
|
|
||||||
if (er > 0) return
|
|
||||||
}
|
|
||||||
$('#sensd tr').each(function(e) {
|
|
||||||
filter_item($(this))
|
|
||||||
})
|
|
||||||
});
|
|
||||||
$('#fsd').bind('change', function() {
|
|
||||||
if ($('#fsd').val().length === 0) {
|
|
||||||
df = '';
|
|
||||||
$('#fap').click()
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$('#fed').bind('change', function() {
|
|
||||||
if ($('#fed').val().length === 0) {
|
|
||||||
def = '';
|
|
||||||
$('#fap').click()
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$('#fcl').bind('click', function() {
|
|
||||||
$('#lfb select').val('0');
|
|
||||||
$('#lfb input[type=text]').val('');
|
|
||||||
$('#sensd tr').show();
|
|
||||||
df = '';
|
|
||||||
def = '';
|
|
||||||
for (i = 0; i < 3; i++) {
|
|
||||||
$('#ftv' + i).removeClass('is-invalid')
|
|
||||||
}
|
|
||||||
$('#fap').removeClass('btn-danger');
|
|
||||||
$('#fsd').val('');
|
|
||||||
$('#fed').val('');
|
|
||||||
document.cookie = 'fsd=';
|
|
||||||
document.cookie = 'fed=';
|
|
||||||
for (i = 0; i < 3; i++) {
|
|
||||||
document.cookie = 'ftv' + i + '=';
|
|
||||||
document.cookie = 'fts' + i + '='
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$('#fsd').val(get_cookie('fsd', ''));
|
|
||||||
$('#fed').val(get_cookie('fed', ''));
|
|
||||||
for (i = 0; i < 3; i++) {
|
|
||||||
$('#ftv' + i).val(get_cookie('ftv' + i, ''));
|
|
||||||
$('#fts' + i).val(get_cookie('fts' + i, 0))
|
|
||||||
}
|
|
||||||
$('#fap').click()
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
Reference in New Issue
Block a user