From ad56fdf5cd4abc4cbba9a39f2118e6105529e88c Mon Sep 17 00:00:00 2001 From: johannnes <> Date: Fri, 8 Mar 2013 12:52:42 +0000 Subject: [PATCH] =?UTF-8?q?=20=20-=20Bugfixes=20in=20der=20Darstellung=20d?= =?UTF-8?q?er=20gespeicherten=20Farben=20eines=20Charts=20=20=20-=20Implem?= =?UTF-8?q?entation=20eine=20Konfigurationsdatei=20f=C3=BCr=20den=20Benutz?= =?UTF-8?q?er=20=20=20-=20Steuerung=20=C3=BCber=20diese=20Datei=20erm?= =?UTF-8?q?=C3=B6glicht=20z.B.=20die=20Konversion=20in=20Charts=20von=20"o?= =?UTF-8?q?n"=20zu=201,=20"closed"=20zu=200=20usw.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.fhem.de/fhem/trunk@2870 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/www/frontend/CHANGED | 34 ++++++---------- fhem/www/frontend/controls_frontend.txt | 5 ++- .../app/controller/ChartController.js | 3 ++ .../www/frontend/app/model/ChartModel.js | 40 +++++++++++++++++-- .../frontend/www/frontend/app/userconfig.js | 20 ++++++++++ 5 files changed, 75 insertions(+), 27 deletions(-) create mode 100644 fhem/www/frontend/www/frontend/app/userconfig.js diff --git a/fhem/www/frontend/CHANGED b/fhem/www/frontend/CHANGED index 1bc03d152..f5e84f2ca 100644 --- a/fhem/www/frontend/CHANGED +++ b/fhem/www/frontend/CHANGED @@ -1,32 +1,24 @@ +Update vom 8.3.2013 + * Bugfixes in der Darstellung der gespeicherten Farben eines Charts + * Implementation eine Konfigurationsdatei für den Benutzer + * Steuerung über diese Datei ermöglicht z.B. die Konversion in Charts von "on" zu 1, "closed" zu 0 usw. Update vom 7.3.2013 - * Bugfixes für Chart speichern - Update vom 6.3.2013 - * Name des Charts beim Speichern escaped * Bessere Fehlermeldung bei Device Selektion * Merge von 93_DbLog auf den SVN Stand * Versionsnummer hinzugefügt - Update vom 2.3.2013 - -* Auslesen der verfügbaren Geräte / FHEM-Komponenten und Darstellung im Menü -* Kommandozeile hinzugefügt, inkl Speichern in der fhem.cfg -* Shutdown und Restart Button für FHEM hinzugefügt -* Icons - + * Auslesen der verfügbaren Geräte / FHEM-Komponenten und Darstellung im Menü + * Kommandozeile hinzugefügt, inkl Speichern in der fhem.cfg + * Shutdown und Restart Button für FHEM hinzugefügt + * Icons Update vom 1.3.2013 - -* Charts unterstützen jetzt mehrere Y Achsen. Diese können nach Klick auf den Button "Add another Y Axis" hinzugefügt werden - -* Legenden enthalten die zusätzlichen Achsen - -* Charts unterstützen jetzt Soll-Linien. Diese können nach Klick auf den Button "Add Baseline" hinzugefügt werden, Start und Endwert frei wählbar. - -* Achsen und Soll-Linien können eingefärbt werden und, bei Bedarf, eine Füllung erhalten - -* Das Errorhandling wurde verbessert, es sollten jetzt aussagekräftigere Meldungen kommen, wenn etwas schief läuft - + * Charts unterstützen jetzt mehrere Y Achsen. Diese können nach Klick auf den Button "Add another Y Axis" hinzugefügt werden + * Legenden enthalten die zusätzlichen Achsen + * Charts unterstützen jetzt Soll-Linien. Diese können nach Klick auf den Button "Add Baseline" hinzugefügt werden, Start und Endwert frei wählbar. + * Achsen und Soll-Linien können eingefärbt werden und, bei Bedarf, eine Füllung erhalten + * Das Errorhandling wurde verbessert, es sollten jetzt aussagekräftigere Meldungen kommen, wenn etwas schief läuft Wichtig: Es müssen leider, hoffentlich zum letzten Mal, die bestehenden Charts gelöscht werden, da diese unbrauchbar werden mit dem Update. \ No newline at end of file diff --git a/fhem/www/frontend/controls_frontend.txt b/fhem/www/frontend/controls_frontend.txt index d8296a045..f0170f545 100644 --- a/fhem/www/frontend/controls_frontend.txt +++ b/fhem/www/frontend/controls_frontend.txt @@ -40,17 +40,18 @@ DIR www/frontend/lib/ext-4.1.1a/images/gray/tip UPD 2013-03-07_12:12:22 49744 FHEM/93_DbLog.pm UPD 2013-03-06_11:11:22 499 www/frontend/index.html UPD 2013-03-06_11:11:22 236 www/frontend/README.txt +UPD 2013-03-08_01:44:54 613 www/frontend/app/userconfig.js UPD 2013-03-06_11:11:22 1856 www/frontend/app/app.js UPD 2013-03-06_11:11:22 20514 www/frontend/app/view/LineChartPanel.js UPD 2013-03-06_11:11:22 7826 www/frontend/app/view/Viewport.js UPD 2013-03-06_11:11:22 4269 www/frontend/app/view/DevicePanel.js UPD 2013-03-06_11:11:22 2503 www/frontend/app/view/TableDataGridPanel.js UPD 2013-03-06_11:11:22 1310 www/frontend/app/view/LineChartView.js -UPD 2013-03-07_06:58:22 41859 www/frontend/app/controller/ChartController.js +UPD 2013-03-08_01:58:22 42032 www/frontend/app/controller/ChartController.js UPD 2013-03-06_11:11:22 10761 www/frontend/app/controller/MainController.js UPD 2013-03-06_11:11:22 202 www/frontend/app/model/ReadingsModel.js UPD 2013-03-06_11:11:22 338 www/frontend/app/model/SavedChartsModel.js -UPD 2013-03-06_11:11:22 674 www/frontend/app/model/ChartModel.js +UPD 2013-03-08_01:43:31 1752 www/frontend/app/model/ChartModel.js UPD 2013-03-06_11:11:22 198 www/frontend/app/model/DeviceModel.js UPD 2013-03-06_11:11:22 685 www/frontend/app/model/TableDataModel.js UPD 2013-03-06_11:11:22 432 www/frontend/app/store/ChartStore.js diff --git a/fhem/www/frontend/www/frontend/app/controller/ChartController.js b/fhem/www/frontend/www/frontend/app/controller/ChartController.js index 5a53e9aba..adb4ccbeb 100644 --- a/fhem/www/frontend/www/frontend/app/controller/ChartController.js +++ b/fhem/www/frontend/www/frontend/app/controller/ChartController.js @@ -812,6 +812,9 @@ Ext.define('FHEM.controller.ChartController', { this.getXaxiscombo().setValue(chartdata.x); this.getYaxiscombo().setValue(chartdata.y); + this.getYaxiscolorcombo().setValue(chartdata.yaxiscolorcombo); + this.getYaxisfillcheck().setValue(chartdata.yaxisfillcheck); + if (chartdata.y2device && !Ext.isEmpty(chartdata.y2device) && chartdata.y2device != "null") { this.getDevice2combo().setValue(chartdata.y2device); diff --git a/fhem/www/frontend/www/frontend/app/model/ChartModel.js b/fhem/www/frontend/www/frontend/app/model/ChartModel.js index 9d955bcbb..f3ccdeea5 100644 --- a/fhem/www/frontend/www/frontend/app/model/ChartModel.js +++ b/fhem/www/frontend/www/frontend/app/model/ChartModel.js @@ -1,6 +1,7 @@ /** * Model for Charts */ + Ext.define('FHEM.model.ChartModel', { extend: 'Ext.data.Model', fields: [ @@ -21,13 +22,44 @@ Ext.define('FHEM.model.ChartModel', { }, { name: 'VALUE', - type: 'float' + type: 'float', + convert: function( v, record ) { + return record.parseToNumber(v); + } },{ name: 'VALUE2', - type: 'float' + type: 'float', + convert: function( v, record ) { + return record.parseToNumber(v); + } },{ name: 'VALUE3', - type: 'float' + type: 'float', + convert: function( v, record ) { + return record.parseToNumber(v); + } } - ] + ], + parseToNumber: function(value) { + + if (value === "") { + return 0; + } else if (parseFloat(value, 10) === "NaN") { + if (Ext.isDefined(FHEM) && Ext.isDefined(FHEM.userconfig)) { + + var convertednumber = 0; + Ext.iterate(FHEM.userconfig.chartkeys, function(k, v) { + if (value === k) { + //return the value for the given key from userconfig + convertednumber = v; + } + }); + return parseFloat(convertednumber, 10); + } else { + return value; + } + } else { + return parseFloat(value, 10); + } + } }); \ No newline at end of file diff --git a/fhem/www/frontend/www/frontend/app/userconfig.js b/fhem/www/frontend/www/frontend/app/userconfig.js new file mode 100644 index 000000000..05d9c76ff --- /dev/null +++ b/fhem/www/frontend/www/frontend/app/userconfig.js @@ -0,0 +1,20 @@ +/** + * This is the user configuration file for the frontend. + * You can set your own parameters here, e.g. to set how the charting should + * handle non numeric values + */ +FHEM = {}; + +FHEM.userconfig = { + + // Here you can set how non numeric values like "on" or "off" should be interpreted in the charts + // you can add your own specific parameter here if needed and give it a numeric value of your choice, e.g. + // "an": "100", + // "aus": "50" + chartkeys: { + "on": "1", + "off": "0", + "open": "10", + "closed": "1" + } +}; \ No newline at end of file