FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: misux am 13 März 2018, 11:13:07

Titel: Label unsichtbar machen?
Beitrag von: misux am 13 März 2018, 11:13:07
Hallo! Ich habe mir etwas gebastelt und komme nicht weiter.  Ich versuche das "Label" (Eingang) auch bei zustand off unsichtbar zu machen aber es klappt nicht bei mir...

Hat bitte jemand einen Tipp ? Es soll eigentlich einfach alles ausgeblendet werden wenn der state "off" ist...

Hier mein soweit funktionierender Code...

<div class="top-space inline">
<div class="" data-type="classchanger" data-get="state" data-get-on="off" data-off-class="hide"></div>
   <div data-hide-on="off"
data-type="symbol"
data-device="EingangsTuer"
data-get="state"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen","dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>
</div>
Titel: Antw:Label unsichtbar machen?
Beitrag von: drhirn am 13 März 2018, 11:33:48
data-device fehlt im Classchanger-Widget. Dann muss du natürlich den Classchanger-DIV um alles andere wickeln. Das </div> in deiner zweiten Zeile gehört vor das </div> in der letzten Zeile.
Titel: Antw:Label unsichtbar machen?
Beitrag von: misux am 14 März 2018, 08:32:27
Hmmm...

Irgendwie funktioniert das nicht so richtig... so werden die Symbole nun gar nicht angezeigt... hab ich was falsch gemacht?

<div class="top-space inline">
<div class="" data-type="classchanger" data-device="EingangsTuer" data-get="state" data-get-on="off" data-off-class="hide">
   <div data-hide-on="off"
data-type="symbol"
data-device="EingangsTuer"
data-get="state"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen","dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>
</div></div>
Titel: Antw:Label unsichtbar machen?
Beitrag von: drhirn am 14 März 2018, 09:06:00
Definier noch data-get-off und data-on-class dazu. Und erstell natürlich eine "data-on-class"-Klasse.
Titel: Antw:Label unsichtbar machen?
Beitrag von: misux am 14 März 2018, 09:33:06
Cool! Soweit so gut nur bekomme ich die "dimup" und "dimdown" werte nicht angezeigt... Bei on und off wir angezeigt und ausgeblendet wie gewollt...

Könntest du nochmal helfen bitte... :-\

<div class="top-space inline">
<div class="" data-type="classchanger"
      data-device="EingangsTuer"
      data-get="state"
      data-get-on="on"
      data-off-class="hide">
   <div data-type="symbol"
data-on-class="hide"
data-hide-on="off"
data-get-off="off"
data-device="EingangsTuer"
data-get="state"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen","dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>
</div></div>
Titel: Antw:Label unsichtbar machen?
Beitrag von: drhirn am 14 März 2018, 09:36:55
Grundsätzlich gerne. Aber ich weiß leider nicht, was du vor hast, was das für ein Gerät das ist und was die dimup-/down-Werte sein sollen.
Titel: Antw:Label unsichtbar machen?
Beitrag von: misux am 14 März 2018, 10:37:13
Hmm... Also in meinem alten Code (erster Post) werden alle Werte angezeigt auch die dimup und dimdown mit den dazugehörenden Symbolen (aus dem data-icon / data limits / data-substitution).

Das hat ja soweit geklappt...

hier der alte code.

<div class="top-space inline">
<div class="" data-type="classchanger" data-get="state" data-get-on="off" data-off-class="hide"></div>
   <div data-hide-on="off"
data-type="symbol"
data-device="EingangsTuer"
data-get="state"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen","dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>


Nun soll halt alles ausgeblendet weden bei dem wert "off" was mit deiner Hilfe und dem neuen Codeauch funktioniert. "on" wird angezeigt "off" wird ausgeblendet aber leider werden die beiden anderen Zustände nicht mehr angezeigt ("dimup" und "dimdown" aus dem data-icon / data limits / data-substitution) Dachte das die Infos ausreichend sind... mehr habe ich leider nicht oder ich verstehe die Frage nicht...

hier der neue Code der mir nur noch den "on" und "off" code betrachtet und "dimup" und "dimdown" immer ausgeblendet bleiben was sie ja im Fall nicht sollen.

<div class="top-space inline">
<div class="" data-type="classchanger"
      data-device="EingangsTuer"
      data-get="state"
      data-get-on="on"
      data-off-class="hide">
   <div data-type="symbol"
data-on-class="hide"
data-hide-on="off"
data-get-off="off"
data-device="EingangsTuer"
data-get="state"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen","dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>
</div></div>

 
Titel: Antw:Label unsichtbar machen?
Beitrag von: n4rrOx am 14 März 2018, 11:40:16
Hi,

ich glaub, ich habe mal gelesen, dass in Verbindung mit classchanger bestimmte ( zu versteckende) Widgets nicht initialisiert werden, wenn sie am Anfang ausgeblendet sind.
Da kann aber nur setstate was dazu sagen bzw. auch das ggf. fixen.
Titel: Antw:Label unsichtbar machen?
Beitrag von: misux am 14 März 2018, 12:09:14
 :-\ da fällt mir ein: Classchanger kann NUR 2 Zustände schalten! Hat mir mal einer vor ein paar Tagen geschrieben...

Für meinen Fall sind es Fenster/Türsensoren mit 4 Zuständen (auf/zu/Sabotage/batterie schwach)

Habe es jetzt so gelöst:

<div class="top-space inline">
<div class="" data-type="classchanger"
      data-device="EingangsTuer"
      data-get="state"
      data-get-on="on"
      data-get-on="dimup"
      data-off-class="hide">
   <div data-type="symbol"
data-get="state"
data-on-class="hide"
data-hide-on="off"
data-get-off="off"
data-get-on="dimup"
data-device="EingangsTuer"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen","dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>
</div></div>
<div class="top-space inline">
<div class="" data-type="classchanger"
      data-device="EingangsTuer"
      data-get="state"
      data-get-on="dimdown"
      data-off-class="hide">
   <div data-type="symbol"
data-get="state"
data-on-class="hide"
data-hide-on="dimup"
data-get-off="dimup"
data-device="EingangsTuer"
data-type="label" class="large"
data-substitution='["dimdown","BATTERIE","dimup","SABOTAGE!"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w","oa-measure_battery_25","fa-bolt"]'
                                data-colors='["#00FF00","grey","orange","#FF0000"]'
data-limits='["on","off","dimdown","dimup"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang</div>
</div></div>


Ist schon etwas Arbeit wenn man 23 Fenster hat....

Wäre echt klasse wenn Classchanger mehrere Zustände könnte....
Titel: Antw:Label unsichtbar machen?
Beitrag von: misux am 14 März 2018, 15:44:50
Ach mist! irgendwie bekomme ich das im zweiten Abschnitt nicht ausgeblendet...

Wie bekomme ich den zweiten abschnitt ausgeblendet? der erste funktioniert wunderbar!

<div class="top-space inline">
<div class="" data-type="classchanger"
      data-device="EingangsTuer"
      data-get="state"
      data-get-on="on"
      data-get-off="off"
      data-off-class="hide">
   <div data-type="symbol"
data-get="state"
data-on-class="hide"
data-hide-on="off"
data-get-off="off"
data-device="EingangsTuer"
data-type="label" class="large"
data-substitution='["on","OFFEN","off","Geschlossen"]'
                                data-icons='["oa-fts_window_1w_open","oa-fts_window_1w"]'
                                data-colors='["#00FF00","grey"]'
data-limits='["on","off"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang OFFEN</div>
</div></div>
<div class="top-space inline">
<div class="" data-type="classchanger"
      data-device="EingangsTuer"
      data-get="state"
      data-get-dimup="dimup"
      data-get-clear="clear"
      data-clear-class="hide">
   <div data-type="symbol"
data-get="state"
data-clear-class="hide"
data-hide-dimup="clear"
data-get-clear="clear"
data-device="EingangsTuer"
data-type="label" class="large"
data-substitution='["dimup","SABOTAGE!","clear","OK"]'
                                data-icons='["fa-bolt","fa-bolt"]'
                                data-colors='["#FF0000","grey"]'
data-limits='["dimup","clear"]'></div>
   <div data-type="label" class="" style="color:#aa6900">Eingang SABOTAGE!</div>
</div></div>
Titel: Antw:Label unsichtbar machen?
Beitrag von: drhirn am 14 März 2018, 16:10:58
data-get-dimup, data-get-clear und data-clear-class gibt's nicht.