mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-01 20:20:10 +00:00
chartingfrontend: fixes for parsing filelogs
git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@4529 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
f737a197a6
commit
4eace573bb
@ -278,8 +278,8 @@ UPD 2013-07-07_12:12:08 16201 www/frontend/app/view/DevicePanel.js
|
|||||||
UPD 2013-12-26_08:39:37 10257 www/frontend/app/view/TableDataGridPanel.js
|
UPD 2013-12-26_08:39:37 10257 www/frontend/app/view/TableDataGridPanel.js
|
||||||
UPD 2013-12-29_01:56:25 64890 www/frontend/app/view/LineChartPanel.js
|
UPD 2013-12-29_01:56:25 64890 www/frontend/app/view/LineChartPanel.js
|
||||||
UPD 2013-12-27_01:39:11 9980 www/frontend/app/view/Viewport.js
|
UPD 2013-12-27_01:39:11 9980 www/frontend/app/view/Viewport.js
|
||||||
UPD 2013-12-29_01:55:25 19171 www/frontend/app/controller/MainController.js
|
UPD 2014-01-02_02:26:30 19171 www/frontend/app/controller/MainController.js
|
||||||
UPD 2013-12-29_01:54:25 112255 www/frontend/app/controller/ChartController.js
|
UPD 2014-01-02_01:53:01 113053 www/frontend/app/controller/ChartController.js
|
||||||
UPD 2013-06-30_11:46:54 5415 www/frontend/app/controller/TableDataController.js
|
UPD 2013-06-30_11:46:54 5415 www/frontend/app/controller/TableDataController.js
|
||||||
UPD 2013-04-01_07:04:35 202 www/frontend/app/model/ReadingsModel.js
|
UPD 2013-04-01_07:04:35 202 www/frontend/app/model/ReadingsModel.js
|
||||||
UPD 2013-04-01_07:04:36 338 www/frontend/app/model/SavedChartsModel.js
|
UPD 2013-04-01_07:04:36 338 www/frontend/app/model/SavedChartsModel.js
|
||||||
|
@ -224,28 +224,34 @@ Ext.define('FHEM.controller.ChartController', {
|
|||||||
if (response && response.responseText) {
|
if (response && response.responseText) {
|
||||||
var responseArr = response.responseText.split(/\n/),
|
var responseArr = response.responseText.split(/\n/),
|
||||||
keyObjArray = [],
|
keyObjArray = [],
|
||||||
keyArray = [];
|
keyArray = [],
|
||||||
|
keyIndexArray = [];
|
||||||
|
|
||||||
Ext.each(responseArr, function(row) {
|
Ext.each(responseArr, function(row) {
|
||||||
// the first column is always the timestamp, followed by device and multiple key:value
|
// the first column is always the timestamp, followed by device and multiple key:value
|
||||||
var splitArr = row.split(" ");
|
var splitArr = row.split(" "),
|
||||||
|
i = 2; // 2 is needed as offset, because get function starts at one and our array at 0
|
||||||
Ext.each(splitArr, function(key) {
|
Ext.each(splitArr, function(key) {
|
||||||
if (key.lastIndexOf(":") + 1 === key.length &&
|
if (key.lastIndexOf(":") + 1 === key.length &&
|
||||||
!Ext.Array.contains(keyArray, key.replace(":", ""))) {
|
!Ext.Array.contains(keyArray, key.replace(":", ""))) {
|
||||||
keyArray.push(key.replace(":", ""));
|
keyArray.push(key.replace(":", ""));
|
||||||
|
keyIndexArray.push(i);
|
||||||
}
|
}
|
||||||
|
i++;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
Ext.Array.sort(keyArray);
|
var j = 0;
|
||||||
Ext.each(keyArray, function(key) {
|
Ext.each(keyArray, function(key) {
|
||||||
var obj = {"READING": key};
|
var obj = {"READING": key, "INDEX": keyIndexArray[j]};
|
||||||
keyObjArray.push(obj);
|
keyObjArray.push(obj);
|
||||||
|
j++;
|
||||||
});
|
});
|
||||||
|
|
||||||
//reconfigure readings store
|
//reconfigure readings store
|
||||||
if (keyObjArray.length > 0) {
|
if (keyObjArray.length > 0) {
|
||||||
readingscombo.getStore().add(keyObjArray);
|
readingscombo.getStore().add(keyObjArray);
|
||||||
|
readingscombo.getStore().sort('READING', 'asc');
|
||||||
readingscombo.queryMode = 'local';
|
readingscombo.queryMode = 'local';
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -432,6 +438,7 @@ Ext.define('FHEM.controller.ChartController', {
|
|||||||
Ext.each(yaxes, function(y) {
|
Ext.each(yaxes, function(y) {
|
||||||
var device = devices[i].getValue(),
|
var device = devices[i].getValue(),
|
||||||
yaxis = yaxes[i].getValue(),
|
yaxis = yaxes[i].getValue(),
|
||||||
|
yaxisindex = yaxes[i].getStore().findRecord("READING", yaxes[i].getValue()).raw.INDEX,
|
||||||
styleConfig = rowFieldSets[i].styleConfig,
|
styleConfig = rowFieldSets[i].styleConfig,
|
||||||
yaxisstatistics = yaxesstatistics[i].getValue(),
|
yaxisstatistics = yaxesstatistics[i].getValue(),
|
||||||
axisside = axissideradio[i].getChecked()[0].getSubmitValue(),
|
axisside = axissideradio[i].getChecked()[0].getSubmitValue(),
|
||||||
@ -440,7 +447,7 @@ Ext.define('FHEM.controller.ChartController', {
|
|||||||
yaxis = yaxes[i].getRawValue();
|
yaxis = yaxes[i].getRawValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
me.populateAxis(i, yaxes.length, device, yaxis, styleConfig, axisside, yaxisstatistics, dbstarttime, dbendtime, logtype);
|
me.populateAxis(i, yaxes.length, device, yaxis, yaxisindex, styleConfig, axisside, yaxisstatistics, dbstarttime, dbendtime, logtype);
|
||||||
i++;
|
i++;
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -809,7 +816,7 @@ Ext.define('FHEM.controller.ChartController', {
|
|||||||
/**
|
/**
|
||||||
* fill the axes with data
|
* fill the axes with data
|
||||||
*/
|
*/
|
||||||
populateAxis: function(i, axeslength, device, yaxis, styleConfig, axisside, yaxisstatistics, dbstarttime, dbendtime, logtype) {
|
populateAxis: function(i, axeslength, device, yaxis, yaxisindex, styleConfig, axisside, yaxisstatistics, dbstarttime, dbendtime, logtype) {
|
||||||
|
|
||||||
var me = this,
|
var me = this,
|
||||||
chart = me.getChart(),
|
chart = me.getChart(),
|
||||||
@ -841,10 +848,15 @@ Ext.define('FHEM.controller.ChartController', {
|
|||||||
// as the get command wont support absolute pathes by default...
|
// as the get command wont support absolute pathes by default...
|
||||||
currentlogfile = "../../../../../../../../" + currentlogfile;
|
currentlogfile = "../../../../../../../../" + currentlogfile;
|
||||||
}
|
}
|
||||||
|
url = '../../../fhem?cmd=';
|
||||||
url += '../../../fhem?cmd=get%20Logfile%20' +
|
url += encodeURIComponent('get Logfile ' +
|
||||||
currentlogfile + '%20-%20' + dbstarttime +
|
currentlogfile + ' - ' + dbstarttime +
|
||||||
'%20' + dbendtime + '%204:' + yaxis + '.*::&XHR=1';
|
' ' + dbendtime + ' ' + yaxisindex + ':' + yaxis +
|
||||||
|
'.*::$fld[' + (yaxisindex - 1) +
|
||||||
|
']=~"ok|on|open|active|true"?1:($fld[' +
|
||||||
|
(yaxisindex - 1) +
|
||||||
|
']=~"low|off|closed|inactive|false"?0:$fld[' +
|
||||||
|
(yaxisindex - 1) + ']*1)') + '&XHR=1';
|
||||||
} else if (!Ext.isDefined(yaxisstatistics) || yaxisstatistics === "none" || Ext.isEmpty(yaxisstatistics)) {
|
} else if (!Ext.isDefined(yaxisstatistics) || yaxisstatistics === "none" || Ext.isEmpty(yaxisstatistics)) {
|
||||||
url += '../../../fhem?cmd=get+' + FHEM.dblogname + '+-+webchart+' + dbstarttime + '+' + dbendtime + '+';
|
url += '../../../fhem?cmd=get+' + FHEM.dblogname + '+-+webchart+' + dbstarttime + '+' + dbendtime + '+';
|
||||||
url +=device + '+timerange+' + "TIMESTAMP" + '+' + yaxis;
|
url +=device + '+timerange+' + "TIMESTAMP" + '+' + yaxis;
|
||||||
|
@ -95,7 +95,7 @@ Ext.define('FHEM.controller.MainController', {
|
|||||||
|
|
||||||
if (Ext.isDefined(FHEM.version)) {
|
if (Ext.isDefined(FHEM.version)) {
|
||||||
var sp = this.getStatustextfield();
|
var sp = this.getStatustextfield();
|
||||||
sp.setText(FHEM.version + "; Frontend Version: 1.0.5 - 2013-12-29");
|
sp.setText(FHEM.version + "; Frontend Version: 1.0.6 - 2014-01-02");
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setupTree(false);
|
this.setupTree(false);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user