NEWS
Min - max funktioniert nicht bei einigen HQ und Metro widgets.
-
Hallo mitsammen.
Da ich meinen Adapter zur meiner Buderus-Heizung fertiggestellt habe wollte ich mir eine Vis-Seite bauen.
So nun hab ich zuerst hq-Widgets und dann metro versucht um Heisswasser soll/ist und Heizkeristemperaturen darzustellen.
Das geht ja noch aber irgenwie sind ist alles (auch bei anderen Widgets auf 6-30 oder -20 - 40° begrenzt.
Auch wenn ich min und max (brauche 30-80°) selbst setze oder diese Daten von der Heizung selbst übernommen werden kann man nicht über 40° (da war auch ein Widget mit 30°) einstellen
Leider bin ich noch nicht mit dem Schreiben von widgets vertraut, hab aber trotzdem in den node-modulen nach text gesucht der z.b 40 beschreibt und den bei den hq und metro Widgets bei den 'data-vis-attrs' gefunden :````
min[6]/slider,-20,40,1;max[30]/slider,-20,40,1Das scheinen die zwei slider für min und max zu sein die hardcoded limitiert sind. Bei diesen zwei widgets ist die Anzeige der Werte wirklich auf 40 beschränkt, also auch falsch. Beim HQcircle-knob gibt's die slider nicht, nur die min/max-Werte aber ich kann trotzdem nicht mehr als 40° einstellen, auch wenn die Grafik meine min/max (und die Werte) richtig anzeigt. Kann das vielleicht geädert werden und solche Dinge nicht hardcoded eingebaut werden? Vielen Dank im Voraus Frank p.s.: Einen großen Wunsch hätte ich auch noch an Vis: Bitte bei den widgets die history-daten anzeigen den 'default'-history-provider auch als default zu verwenden!
-
Hmm - schicke doch mal Deine Widgets hier ins Forum (exportieren und dann als Spoiler und/oder code einfügen.
Und vielleicht eine genauere Grafik oder Skizze was Du Dir schlussendlich vorstellst. Hatte dieses Thema bisher nicht bei mir. Muss aber nichts bedeuten.
-
Hallo fitti/Bluefox!
Seit ich weiß dass ich mit dem Editor in den node-modules kleine Änderungen durchführen und mit
sudo iobroker visdebug metro
(auf Raspi/Linux user pi geht es ohne sudo nicht) die dann zu VIS hoch-pushen kann hab ich mir den code mal angesehen und alle Teile die speziell 6 oder 30 enthalten (dies sind die Grenzen die immer wieder gesetzt wurden).
Da hab ich folgendes gefunden (metro.html):
Call: (el)->vis.binds.metro.tileDialogHeating(el, data.wid, data.set_oid, data.temp_oid, data.drive_oid, { data : data, title : data.label, flat : data.dialog_flat, shadow : data.dialog_shadow, overlay : data.dialog_modal, icon : data.dialog_icon_src, icon_class : data.dialog_icon_class, draggable : data.dialog_draggable, width : 300, height : 180, label_set : this.data.attr('label_set'), label_temp : this.data.attr('label_temp'), label_drive : this.data.attr('label_drive') }, { color : data.sliderColor, completeColor : data.sliderCompleteColor, markerColor : data.sliderMarkerColor, max : data.max, min : data.min, step : parseFloat(data.step) }) Definition: tileDialogHeating: function (el, wid, set_oid, temp_oid, drive_oid, options, sliderOptions) { Code weiter unten: sliderOptions.min = options.min === undefined ? 6 : options.min; sliderOptions.max = options.min === undefined ? 31 : options.max;
Das kam mir spanisch vor den min & max wurden in den sliderOptions übergeben aber options abgefraget.
hab's geändert auf:
options.min = sliderOptions.min === undefined ? 6 : sliderOptions.min; options.max = sliderOptions.min === undefined ? 31 : sliderOptions.max;
und es funktioniert nun.
p.s.: Es gibt auch noch folgenden code
..., max: data.max || 30, min: data.min || 6, ...
Der ist auch buggy da falls max oder min auf 0 gesetzt werden (bei Anzeige von 0-100% z.B.) dann wird es auf 30 bzw 6 gesetzt!
Liebe Grüße
Frank
-
Danke. Habe metro gefixt. Bei hqWidgets-Circle es war das Problem nur bei negativen Werten.
Gibt das Problem noch irgendwo?
-
Danke!
Sonst noch nichts gesehen
Meld mich wenn ich was find
Grß
Frank