FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: dennis_n am 31 Januar 2018, 17:06:31

Titel: Standard Farbe symbol ändern
Beitrag von: dennis_n am 31 Januar 2018, 17:06:31
Hi,

ich habe in meiner Datei folgendes Symbol definiert:

<div data-type="symbol" data-device="doif_dummy" data-get="dummy_entry" data-states='["Wert1","Wert2","Wert3"]' data-colors='["#c7c7c7","#ff0000","#c7c7c7"]' data-icon="fa-times" class="darker"></div>

Wenn im Reading der Wert1 oder Wert3 gesetzt ist, will ich dass das Icon die Farbe #c7c7c7 hat. Bei Wert2 soll es #ff0000 sein.
Sobald Wert2 im Reading steht ist das Symbol auch rot, also #ff0000. Wenn aber ein anderer Wert drinsteht, ist es weiß statt #c7c7c7.

Woran liegt das?

Danke
Gruss
Dennis
Titel: Antw:Standard Farbe symbol ändern
Beitrag von: drhirn am 01 Februar 2018, 16:44:08
Kannst du bitte mal dein DOIF posten? Im Original. Und das obige <div> auch im Original.

Grundsätzlich ist's richtig. Ich vermute, dass irgendwas mit den angegebenen data-states nicht stimmt.
Titel: Antw:Standard Farbe symbol ändern
Beitrag von: dennis_n am 01 Februar 2018, 17:27:52
Hi,

also das hier ist das komplette <div>, wobei ich die Nummer bei data-get verfremdet habe:
<div data-type="symbol" data-device="doif_antwort" data-get="xxxxxxxx" data-states='["Komme","Komme NICHT","Bin Abwesend"]' data-colors='["#01db01","#c7c7c7","#c7c7c7"]' data-icon="fa-check"  class="darker"></div>

Und hier das doif:

(["FWStatus:msgPeerId"] and ([FWStatus:msgText] eq "Komme" or [FWStatus:msgText] eq "Komme NICHT" or [FWStatus:msgText] eq "Bin Abwesend")) (setreading $SELF [$DEVICE:msgPeerId] [$DEVICE:msgText])


Gruss
Dennis
Titel: Antw:Standard Farbe symbol ändern
Beitrag von: setstate am 05 Februar 2018, 19:28:47
Wenn man testweise eindeutige Farben benutzt und ein Label für den aktuellen Wert, funktioniert es doch  ???


                <div data-type="symbol" data-device="ftuitest"  data-states='["Komme","Komme NICHT","Bin Abwesend"]' data-colors='["#33dd33","#0077dd","#dd3333"]' data-icon="fa-check"></div>
                <div data-type="label" data-device="ftuitest" ></div>

Titel: Antw:Standard Farbe symbol ändern
Beitrag von: dennis_n am 13 Februar 2018, 16:51:13
Funktioniert leider immernoch nicht.
Wenn mein Reading keinen Wert hat bzw. irgendeinen Wert hat ausser der 3 abgefragten, dann ist alles grau. Soll ja so sein.
Wenn aber ein Reading den Wert "Komme" beispielsweise bekommt, dann springt der Haken auf Grün, aber das X auf weiß. Ich will aber, dass der Haken grau bleibt.

Und das funktioniert nicht. Sobald ein verwertbares Reading gefunden wird, sind die beiden anderen weiß.
Sieht dann so aus:

Titel: Antw:Standard Farbe symbol ändern
Beitrag von: setstate am 13 Februar 2018, 18:30:17
Ohne Code kann das keiner nachvollziehen, was du meinst
Titel: Antw:Standard Farbe symbol ändern
Beitrag von: dennis_n am 13 Februar 2018, 18:47:57
Was für einen Code braucht ihr denn?
Ich habe ein Dummy device mit dem Namen: Status. Dort im state reading steht entweder "Komme", "Komme NICHT" oder "Bin Abwesend". Genau so geschrieben.

In der index Datei der TabletUI will ich dann das Reading farblich darstellen mit:
<div data-type="symbol" data-device="doif_antwort" data-get="Status" data-states='["Komme","Komme NICHT","Bin Abwesend"]' data-colors='["#01db01","#c7c7c7","#c7c7c7"]' data-icon="fa-check"  class="darker"></div>

Wenn im Reading des Dummy also "Komme" steht, soll das Symbol grün sein und wenn der Wert des Readings einer der beiden anderen hat, soll das Symbol grau sein.

Gruss
Dennis
Titel: Antw:Standard Farbe symbol ändern
Beitrag von: setstate am 14 Februar 2018, 00:06:03
Ich kann das nicht nachvollziehen.
Mit meiner TestConfig funktioniert das. Es liegt vielleicht an deinem DOIF.
Füge mal ein Label hinzu, um den aktuellen Wert des Readings anzuzeigen.


                <div class="vbox">
                    <div class="hbox">
                        <div class="vbox">
                            <div data-type="push" data-device="ftuitest" data-set-on="Komme"></div>
                            <div>Komme</div>
                        </div>
                        <div class="vbox">
                            <div data-type="push" data-device="ftuitest" data-set-on="Komme NICHT"></div>
                            <div>Komme NICHT</div>
                        </div>
                        <div class="vbox">
                            <div data-type="push" data-device="ftuitest" data-set-on="Bin Abwesend"></div>
                            <div>Bin Abwesend</div>
                        </div>
                    </div>
                    <div class="hbox">
                        <div data-type="label" data-device="ftuitest"></div>
                    </div>
                    <div class="hbox">
                        <div data-type="symbol" data-device="ftuitest" data-states='["Komme","Komme NICHT","Bin Abwesend"]' data-colors='["#01db01","#c7c7c7","#c7c7c7"]' data-icon="fa-check"></div>
                        <div data-type="symbol" data-device="ftuitest" data-states='["Komme","Komme NICHT","Bin Abwesend"]' data-colors='["#c7c7c7","#dd0101","#c7c7c7"]' data-icon="fa-close"></div>
                    </div>
                </div>