diff -r 8bbc5730aaa8 -r 2991acd35cdb www/js/mon_co2meter.js --- a/www/js/mon_co2meter.js Fri Oct 18 20:49:07 2019 +0200 +++ b/www/js/mon_co2meter.js Sat Oct 19 12:17:29 2019 +0200 @@ -21,203 +21,202 @@ *****************************************************************************/ -$(document).ready(function () { +$(document).ready(function() { - var record = {}, - blank = {}, - newProduct = false, - schedule = 0, + var record = {}, + blank = {}, + newProduct = false, + schedule = 0, - productSource = { - datatype: "json", - cache: false, - datafields: [ - { name: 'code', type: 'string' }, - { name: 'name', type: 'string' }, - { name: 'uuid', type: 'string' } - ], - id: 'code', - url: "includes/db_product.php?select=ferment" - }, - productlist = new $.jqx.dataAdapter(productSource, { - beforeLoadComplete: function (records) { - var row, i, data = new Array(); - // Create a dummy beer on top to store in idle meters. - blank['code'] = "Free"; // Will override this later. - blank['name'] = 'Dummy'; - blank['uuid'] = '66ecccbf-e942-4a35-af49-8b02314561a5'; - data.push(blank); - for (i = 0; i < records.length; i++) { - row = records[i]; - data.push(row); - } - return data; - }, - loadError: function(jqXHR, status, error) { - $('#err').text(status + ' ' + error); - }, - }), - gaugeoptionst = { - min: 10, max: 40, width: 375, height: 375, - ranges: [{ startValue: 10, endValue: 20, style: { fill: '#3399FF', stroke: '#3399FF' }, endWidth: 10, startWidth: 10 }, - { startValue: 20, endValue: 28, style: { fill: '#00CC33', stroke: '#00CC33' }, endWidth: 10, startWidth: 10 }, - { startValue: 28, endValue: 40, style: { fill: '#FC6A6A', stroke: '#FC6A6A' }, endWidth: 10, startWidth: 10 }], - ticksMinor: { interval: 1, size: '5%' }, - ticksMajor: { interval: 5, size: '9%' }, - labels: { interval: 5 }, - style: { fill: '#eeeeee', stroke: '#666666' }, - value: 0, - colorScheme: 'scheme05' - }, - gaugeoptionsp = { - min: 0, max: 6, width: 375, height: 375, - ranges: [{ startValue: 0, endValue: 3, style: { fill: '#00CC33', stroke: '#00CC33' }, endWidth: 10, startWidth: 10 }, - { startValue: 3, endValue: 6, style: { fill: '#FC6A6A', stroke: '#FC6A6A' }, endWidth: 10, startWidth: 10 }], - ticksMinor: { interval: 0.2, size: '5%' }, - ticksMajor: { interval: 1, size: '9%' }, - labels: { interval: 1 }, - style: { fill: '#eeeeee', stroke: '#666666' }, - value: 0, - colorScheme: 'scheme05' - }, - url = "getco2meter.php?uuid='" + my_uuid + "'", - source = { - datatype: "json", - datafields: [ - { name: 'record', type: 'int' }, - { name: 'uuid', type: 'string' }, - { name: 'alias', type: 'string' }, - { name: 'node', type: 'string' }, - { name: 'online', type: 'int' }, - { name: 'beercode', type: 'string' }, - { name: 'beername', type: 'string' }, - { name: 'beeruuid', type: 'string' }, - { name: 'mode', type: 'string' }, - { name: 'alarm', type: 'int' }, - { name: 'temperature_state', type: 'string' }, - { name: 'temperature', type: 'float' }, - { name: 'pressure_state', type: 'string' }, - { name: 'pressure_bar', type: 'float' } - ], - id: 'record', - url: url - }, - dataAdapter = new $.jqx.dataAdapter(source, { - loadComplete: function (records) { - record = dataAdapter.records[0]; - var oline = (record.online) ? "On-line" : "Off-line"; - $("#info_uuid").html(record.uuid); - $("#info_system").html(record.node + "/" + record.alias); - $("#info_online").html(oline); - $("#info_beer").html(record.beercode + " - " + record.beername); - $("#info_mode").html(record.mode); - blank['name'] = record.alias; - blank['code'] = record.alias.toUpperCase(); - blank['uuid'] = record.uuid; + productSource = { + datatype: 'json', + cache: false, + datafields: [ + { name: 'code', type: 'string' }, + { name: 'name', type: 'string' }, + { name: 'uuid', type: 'string' } + ], + id: 'code', + url: 'includes/db_product.php?select=ferment' + }, + productlist = new $.jqx.dataAdapter(productSource, { + beforeLoadComplete: function(records) { + var row, i, data = new Array(); + // Create a dummy beer on top to store in idle meters. + blank['code'] = 'Free'; // Will override this later. + blank['name'] = 'Dummy'; + blank['uuid'] = '66ecccbf-e942-4a35-af49-8b02314561a5'; + data.push(blank); + for (i = 0; i < records.length; i++) { + row = records[i]; + data.push(row); + } + return data; + }, + loadError: function(jqXHR, status, error) { + $('#err').text(status + ' ' + error); + }, + }), + gaugeoptionst = { + min: 10, max: 40, width: 375, height: 375, + ranges: [{ startValue: 10, endValue: 20, style: { fill: '#3399FF', stroke: '#3399FF' }, endWidth: 10, startWidth: 10 }, + { startValue: 20, endValue: 28, style: { fill: '#00CC33', stroke: '#00CC33' }, endWidth: 10, startWidth: 10 }, + { startValue: 28, endValue: 40, style: { fill: '#FC6A6A', stroke: '#FC6A6A' }, endWidth: 10, startWidth: 10 }], + ticksMinor: { interval: 1, size: '5%' }, + ticksMajor: { interval: 5, size: '9%' }, + labels: { interval: 5 }, + style: { fill: '#eeeeee', stroke: '#666666' }, + value: 0, + colorScheme: 'scheme05' + }, + gaugeoptionsp = { + min: 0, max: 6, width: 375, height: 375, + ranges: [{ startValue: 0, endValue: 3, style: { fill: '#00CC33', stroke: '#00CC33' }, endWidth: 10, startWidth: 10 }, + { startValue: 3, endValue: 6, style: { fill: '#FC6A6A', stroke: '#FC6A6A' }, endWidth: 10, startWidth: 10 }], + ticksMinor: { interval: 0.2, size: '5%' }, + ticksMajor: { interval: 1, size: '9%' }, + labels: { interval: 1 }, + style: { fill: '#eeeeee', stroke: '#666666' }, + value: 0, + colorScheme: 'scheme05' + }, + url = 'getco2meter.php?uuid="' + my_uuid + '"', + source = { + datatype: 'json', + datafields: [ + { name: 'record', type: 'int' }, + { name: 'uuid', type: 'string' }, + { name: 'alias', type: 'string' }, + { name: 'node', type: 'string' }, + { name: 'online', type: 'int' }, + { name: 'beercode', type: 'string' }, + { name: 'beername', type: 'string' }, + { name: 'beeruuid', type: 'string' }, + { name: 'mode', type: 'string' }, + { name: 'alarm', type: 'int' }, + { name: 'temperature_state', type: 'string' }, + { name: 'temperature', type: 'float' }, + { name: 'pressure_state', type: 'string' }, + { name: 'pressure_bar', type: 'float' } + ], + id: 'record', + url: url + }, + dataAdapter = new $.jqx.dataAdapter(source, { + loadComplete: function(records) { + record = dataAdapter.records[0]; + var oline = (record.online) ? 'On-line' : 'Off-line'; + $('#info_uuid').html(record.uuid); + $('#info_system').html(record.node + '/' + record.alias); + $('#info_online').html(oline); + $('#info_beer').html(record.beercode + ' - ' + record.beername); + $('#info_mode').html(record.mode); + blank['name'] = record.alias; + blank['code'] = record.alias.toUpperCase(); + blank['uuid'] = record.uuid; - if (record.online && (record.mode != "OFF")) { - $("#co2meter_powerled").html('
Power'); - $("#select_beer").jqxDropDownList({ disabled: true }); - $("#select_beer").jqxDropDownList('clearSelection'); - $("#select_beer").hide(); - } else { - $("#co2meter_powerled").html('
Power'); - $("#select_beer").show(); - $("#select_beer").jqxDropDownList({ disabled: false }); - - } - if (record.online && (record.alarm != "0")) { - $("#co2meter_alarmled").html('
Alarm'); - } else { - $("#co2meter_alarmled").html('
Alarm'); - } + if (record.online && (record.mode != 'OFF')) { + $('#co2meter_powerled').html('
Power'); + $('#select_beer').jqxDropDownList({ disabled: true }); + $('#select_beer').jqxDropDownList('clearSelection'); + $('#select_beer').hide(); + } else { + $('#co2meter_powerled').html('
Power'); + $('#select_beer').show(); + $('#select_beer').jqxDropDownList({ disabled: false }); + } + if (record.online && (record.alarm != '0')) { + $('#co2meter_alarmled').html('
Alarm'); + } else { + $('#co2meter_alarmled').html('
Alarm'); + } - $("#gaugeContainer_temperature").jqxGauge({ caption: { value: 'Temp: '+record.temperature.toFixed(3) }}); - $('#gaugeContainer_temperature').jqxGauge({ value: record.temperature }); - if (record.temperature_state == "OK") { - $("#gaugeContainer_temperature").jqxGauge({ disabled: false }); - } else { - $("#gaugeContainer_temperature").jqxGauge({ disabled: true }); - } - $("#gaugeContainer_pressure").jqxGauge({ caption: { value: 'Bar: '+record.pressure_bar.toFixed(2) }}); - $('#gaugeContainer_pressure').jqxGauge({ value: record.pressure_bar }); - if (record.pressure_state == "OK") { - $("#gaugeContainer_pressure").jqxGauge({ disabled: false }); - } else { - $("#gaugeContainer_pressure").jqxGauge({ disabled: true }); - } - } - }); + $('#gaugeContainer_temperature').jqxGauge({ caption: { value: 'Temp: ' + record.temperature.toFixed(3) }}); + $('#gaugeContainer_temperature').jqxGauge({ value: record.temperature }); + if (record.temperature_state == 'OK') { + $('#gaugeContainer_temperature').jqxGauge({ disabled: false }); + } else { + $('#gaugeContainer_temperature').jqxGauge({ disabled: true }); + } + $('#gaugeContainer_pressure').jqxGauge({ caption: { value: 'Bar: ' + record.pressure_bar.toFixed(2) }}); + $('#gaugeContainer_pressure').jqxGauge({ value: record.pressure_bar }); + if (record.pressure_state == 'OK') { + $('#gaugeContainer_pressure').jqxGauge({ disabled: false }); + } else { + $('#gaugeContainer_pressure').jqxGauge({ disabled: true }); + } + } + }); - $("#select_beer").jqxDropDownList({ - placeHolder: "Kies bier:", - theme: theme, - source: productlist, - displayMember: "code", - width: 150, - height: 24, - dropDownWidth: 500, - autoDropDownHeight: true, - renderer: function (index, label, value) { - var datarecord = productlist.records[index]; - return datarecord.code + " - " + datarecord.name; - } - }); + $('#select_beer').jqxDropDownList({ + placeHolder: 'Kies bier:', + theme: theme, + source: productlist, + displayMember: 'code', + width: 150, + height: 24, + dropDownWidth: 500, + autoDropDownHeight: true, + renderer: function(index, label, value) { + var datarecord = productlist.records[index]; + return datarecord.code + ' - ' + datarecord.name; + } + }); + + $('#gaugeContainer_temperature').jqxGauge(gaugeoptionst); + $('#gaugeContainer_temperature').jqxGauge({ caption: { value: 'Temp: 00.000' }}); + $('#gaugeContainer_pressure').jqxGauge(gaugeoptionsp); + $('#gaugeContainer_pressure').jqxGauge({ caption: { value: 'Bar: 00.000' }}); - $("#gaugeContainer_temperature").jqxGauge( gaugeoptionst ); - $("#gaugeContainer_temperature").jqxGauge( { caption: { value: 'Temp: 00.000' }} ); - $("#gaugeContainer_pressure").jqxGauge( gaugeoptionsp ); - $("#gaugeContainer_pressure").jqxGauge( { caption: { value: 'Bar: 00.000' }} ); - - function sendProduct(code, name, uuid) { + function sendProduct(code, name, uuid) { - console.log("sendProduct("+code+", "+name+", "+uuid+")"); - var data = 'uuid='+record.uuid+'&beeruuid='+uuid+'&beercode='+code+'&beername='+name; - $.ajax({ - url: "cmd_co2meter.php", - data: data, - type: "POST", - success: function(data) {}, - error: function(jqXHR, textStatus, errorThrown) { console.log("sendProduct() error"); } - }); - } + console.log('sendProduct(' + code + ', ' + name + ', ' + uuid + ')'); + var data = 'uuid=' + record.uuid + '&beeruuid=' + uuid + '&beercode=' + code + '&beername=' + name; + $.ajax({ + url: 'cmd_co2meter.php', + data: data, + type: 'POST', + success: function(data) {}, + error: function(jqXHR, textStatus, errorThrown) { console.log('sendProduct() error'); } + }); + } - // Get the data immediatly and then at regular intervals to refresh. - dataAdapter.dataBind(); - setInterval(function() { - var skip = false; - if (newProduct) { - sendProduct(record.beercode, record.beername, record.beeruuid); - newProduct = false; - skip = true; - } - if (skip) { - schedule = 4; // 2 seconds wait to get the results - } else { - if (schedule > 0) - schedule--; - } + // Get the data immediatly and then at regular intervals to refresh. + dataAdapter.dataBind(); + setInterval(function() { + var skip = false; + if (newProduct) { + sendProduct(record.beercode, record.beername, record.beeruuid); + newProduct = false; + skip = true; + } + if (skip) { + schedule = 4; // 2 seconds wait to get the results + } else { + if (schedule > 0) + schedule--; + } - if (schedule <= 0) { - dataAdapter.dataBind(); - schedule = 20; - } - }, 500); + if (schedule <= 0) { + dataAdapter.dataBind(); + schedule = 20; + } + }, 500); - $("#select_beer").on('select', function (event) { - if (event.args) { - var index = event.args.index, - datarecord = productlist.records[index]; - record.beercode = datarecord.code; - record.beername = datarecord.name; - record.beeruuid = datarecord.uuid; - newProduct = true; - } - }); + $('#select_beer').on('select', function(event) { + if (event.args) { + var index = event.args.index, + datarecord = productlist.records[index]; + record.beercode = datarecord.code; + record.beername = datarecord.name; + record.beeruuid = datarecord.uuid; + newProduct = true; + } + }); - // The chart button. - $("#FLog").jqxButton({ template: "primary", width: '150px', theme: theme }); - $("#FLog").click(function () { - window.open('log_co2pressure.php?code=' + record.beercode + '&name=' + record.beername); - }); + // The chart button. + $('#FLog').jqxButton({ template: 'primary', width: '150px', theme: theme }); + $('#FLog').click(function() { + window.open('log_co2pressure.php?code=' + record.beercode + '&name=' + record.beername); + }); });