Hallo Zusammen,
ich wollte gerne z.B. den "BIOMÜLL das DATUM und den TAG etwas höher setzen...siehe Bild...leider weiss ich nicht wie ich es in meinen Code einfügen kann. Ich liste hier mal meinen Code. Würde sich jemand bereiterklären und mir den Zusatz hier posten...
Vielen Dank
Gruss
Kussel
<header>
<div data-type="label" class="medium">Abfall Kalender</div>
</header>
<div class="top-space small">
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BioTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["SaddleBrown","SaddleBrown"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Biomüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BlaueTonne"
data-icons='["fa-trash warn fa-spin","fa-trash warn"]'
data-on-colors='["blue","blue"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Glasbox</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="GrueneTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["green","green"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Grüne Tonne</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="Restmuell"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["gray","grey"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Restmüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_date"
class="small">
</div>
</div>
habe jetzt mal bissl gegoogelt...unter dem Link hier:
https://wiki.fhem.de/wiki/FHEM_Tablet_UI
habe ich das hier gefunden:
top-space
z.B.
aber wo müsste ich jetzt zum testen das in den Code einfügen??? deshalb frage ich hier..
wäre nett wenn man einen Beispielcode nennt von meinem Code zB.
class="top-space small"
ist so schon richtig!
top-space
schiebt aber das ganze nach unten!
top-narrow
schiebt es nach oben
ansonsten kannst du auch bei den bildern mal mit class="compressed-50"
testen
in class="Eigenschaft1 Eigenschaft2"
kannst du mit den Klassen hantieren, getrennt durch Leerzeichen
Hi,
ein
class="top-narrow"
statt
class=""
sollte die Label: Biomüll, Glasbox, Grüne Tonne und Restmüll
15px höher setzen.
Versuch's mal damit, 100 Pro sicher bin ich mir auch nicht.
Grüße
Thomas
Hi Thomas,
danke für die Info..Du bist doch der aus der Pfalz gell ;)
Aber wo setze ich das class="top-narrow"
in meinem Code hin?? weisst was ich meine??In welche Zeile??
Gruss
Ach..und das datum und den tag muss natürlich auch etwas höher.....
Es gibt genau 4 Stellen in deinem Code die so aussehen:
class=""
Die ersetzt du durch
class="top-narrow"
Grüße aus der Pfalz
O.K. super...danke Dir ich probiers heute abend aus...
ahh dann warst du das der beim vorletzten Rhein neckar Treffen etwas später kam udn dann über Sonoff philosophiert hat ;D
Gruss von der Bergstraße
Thomas: also das class="bigger inline" >
ersetze ich durch class="top-narrow"
...korrekt??
Zitat von: Kusselin am 24 November 2017, 10:43:15
O.K. super...danke Dir ich probiers heute abend aus...
ahh dann warst du das der beim vorletzten Rhein neckar Treffen etwas später kam udn dann über Sonoff philosophiert hat ;D
Gruss von der Bergstraße
Thomas: also das class="bigger inline" >
ersetze ich durch class="top-narrow"
...korrekt??
Je nach dem, wenn du die klassen "bigger inline" noch brauchst, kannst du die class "top-narrow" auch einfach noch dazu nehmen.
als so: class="bigger inline top-narrow"
Wenn er die Zeilen
class="bigger inline"
mit
top-narrow
ergänzt, werden doch die Müll-Symbole um 15px nach oben versetzt.!?
Nochmal :
class=""
im div der Label (Biomüll, Glasbox, Grüne Tonne und Restmüll) , ersetzen/ergänzen mit
class="top-narrow"
Also..neuigkeiten:
Wenn ich den Code so ändere für die Biotonne:
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BioTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["SaddleBrown","SaddleBrown"]'
data-get-on='["0","2"]'
class="top-narrow" >
</div>
<div data-type="label"
class="">Biomüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_date"
class="small">
</div>
</div>
dann sieht es so aus wie auf dem Bild..also es wird nix nach oben versetzt... :'(
Ich hoffe du verstehst mich jetzt:
Zitat
<header>
<div data-type="label" class="medium">Abfall Kalender</div>
</header>
<div class="top-space small">
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BioTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["SaddleBrown","SaddleBrown"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Biomüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BlaueTonne"
data-icons='["fa-trash warn fa-spin","fa-trash warn"]'
data-on-colors='["blue","blue"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Glasbox</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="GrueneTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["green","green"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Grüne Tonne</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="Restmuell"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["gray","grey"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Restmüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_weekday"
class="small">
</div>
class=""
ändern in
class="top-narrow"
Hi TomLee,
nee des geht net :( :( :( :(
mensch bin ich spakko......
Jetzt hab ichs so geändert:
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BioTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["SaddleBrown","SaddleBrown"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="top-narrow">Biomüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_date"
class="small">
</div>
</div>
und die Tonne wird auch nicht nach oben gesetzt mit Datum und Tag :( :(
Ich habs rein interessehalber bei mir jetzt mal ausprobiert, also bei mir geht's. Siehe Anhang.
<header>
<div data-type="label" class="medium">Abfall Kalender</div>
</header>
<div class="top-space small">
<div class="inline">
<div data-type="symbol"
data-device="myAbfall"
data-get="Bioabfall_text"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["SaddleBrown","SaddleBrown"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div class="top-narrow">Biomüll</div>
<div data-type="label"
data-device="myAbfall"
data-get="Bioabfall_weekday"
class="small">
</div>
<div data-type="label"
data-device="myAbfall"
data-get="Bioabfall_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BlaueTonne"
data-icons='["fa-trash warn fa-spin","fa-trash warn"]'
data-on-colors='["blue","blue"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Glasbox</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="GrueneTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["green","green"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Grüne Tonne</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_date"
class="small">
</div>
</div>
<div class="inline">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="Restmuell"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["gray","grey"]'
data-get-on='["0","2"]'
class="bigger inline" >
</div>
<div data-type="label"
class="">Restmüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_date"
class="small">
</div>
</div>
Poste bitte mal den Code..danke dir
Gesendet von iPhone mit Tapatalk
So vllt.
<header class="medium">Abfall Kalender</header>
<div class="hbox">
<div class="vbox">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BioTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["SaddleBrown","SaddleBrown"]'
data-get-on='["0","2"]'
class="bigger bottom-narrow" >
</div>
<div class="">Biomüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="braun_date"
class="small">
</div>
</div>
<div class="vbox">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="BlaueTonne"
data-icons='["fa-trash warn fa-spin","fa-trash warn"]'
data-on-colors='["blue","blue"]'
data-get-on='["0","2"]'
class="bigger bottom-narrow" >
</div>
<div class="">Glasbox</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="blau_date"
class="small">
</div>
</div>
<div class="vbox">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="GrueneTonne"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["green","green"]'
data-get-on='["0","2"]'
class="bigger bottom-narrow" >
</div>
<div class="">Grüne Tonne</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="gruen_date"
class="small">
</div>
</div>
<div class="vbox">
<div data-type="symbol"
data-device="MuellterminDummy"
data-get="Restmuell"
data-icons='["fs-dustbin warn fa-spin","fs-dustbin warn"]'
data-on-colors='["gray","grey"]'
data-get-on='["0","2"]'
class="bigger bottom-narrow" >
</div>
<div class="">Restmüll</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_weekday"
class="small">
</div>
<div data-type="label"
data-device="Abfalltermine"
data-get="grau_date"
class="small">
</div>
</div>
</div>
data-type="label" ist nicht für fixen Text nötig
OK, danke. Hab mir doch gleich mal hbox und vbox angeschaut und versucht bei mir umzusetzen.
Meine bisherige Lösung:
<header>Müllabfuhr</header>
<div data-device="myAbfall" data-type="symbol"
class="bigger"
data-get="next"
data-get-warn=".*(\d+).*"
data-get-on='["RestabfallWertstoffe_1","Bioabfall_1","Hecken-undBaumschnitt_1","Schadstoffmobil_1","RestabfallWertstoffe_.*","Bioabfall_.*","Hecken-undBaumschnitt_.*","Schadstoffmobil_.*"]'
data-on-colors='["#87837D","#783C00","green","red","#87837D","#783C00","green","red"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn blink","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn"]'>
</div>
<div data-type="label"
data-device="myAbfall"
data-get="next_text"
class="top-narrow">
</div>
Und jetzt mit vbox:
<header>Müllabfuhr</header>
<div class="vbox">
<div data-device="myAbfall" data-type="symbol"
class="bigger"
data-get="next"
data-get-warn=".*(\d+).*"
data-get-on='["RestabfallWertstoffe_1","Bioabfall_1","Hecken-undBaumschnitt_1","Schadstoffmobil_1","RestabfallWertstoffe_.*","Bioabfall_.*","Hecken-undBaumschnitt_.*","Schadstoffmobil_.*"]'
data-on-colors='["#87837D","#783C00","green","red","#87837D","#783C00","green","red"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn blink","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn"]'>
</div>
<div data-type="label"
data-device="myAbfall"
data-get="next_text"
class="">
</div>
</div>
Mit dem Ergebnis das der Abstand wieder größer wird, siehe Bild im Anhang. Was mach ich den nun falsch?
Hat sich erledigt, das "bottom-narrow" wollt ich bis jetzt nicht sehen.
Ja was stimmt den jetzt?? Wenn ich mit top-narrow arbeite und so einsetze wie Thomas gesagt und geschrieben hatte wird die Tonne nach unten versetzt..ich möchte einfach das die Tonnen zusammen mit Tag und Datum etwas nach oben rutschen...dafür habe ich meinen Code hier eingestellt.
Gruss
Gesendet von iPhone mit Tapatalk
Es sollte mit beiden Codes aus Post #11 und #13 funktionieren.
Ich hab mich bei meiner Konfig jetzt auch für die vorgeschlagene Lösung von setstate entschieden, die sitzt noch etwas höher (direkt) unter dem Icon, als meine vorgeschlagene.
Thomas, bitte poste mal deinen funktionierenden kompletten Code bitte!! Das wäre echt nett von dir[emoji106]
Gesendet von iPhone mit Tapatalk
Nimm doch einfach die Lösung von setstate. Du brauchst nichts mehr ändern, es passt alles. Einfach kopieren und deinen alten Code ersetzen. Es ist die Antwort auf deine Frage und sollte so passen.
Mein kompletter funktionierender alter und neuer Code steht in #Post 14. Bei der vbox Variante muss nur noch das class="bigger" auf class="bigger bottom-narrow" erweitert werden.
Übrigens es bleibt bei meinem Rat: Mehr lesen und noch mehr lesen. Das gelernte versuchen selbst umzusetzen, auszuprobieren (was noch geht), damit zu "spielen". Damit erübrigen sich schon viele Fragen von selbst.
Zitat von: TomLee am 25 November 2017, 16:53:05
Übrigens es bleibt bei meinem Rat: Mehr lesen und noch mehr lesen. Das gelernte versuchen selbst umzusetzen, auszuprobieren (was noch geht), damit zu "spielen". Damit erübrigen sich schon viele Fragen von selbst.
Das haben ihm hier schon mehrere Leute geraten. Aber entweder versteht er nicht, was das bedeuten soll oder aber er zieht es vor, sich sein FTUI nach und nach mundgerecht von anderen zusammen bauen zu lassen.
Ich tippe auf das zweite, denn selbst wenn man ihm anhand seines eigenen Codes ganz genau sagt, was er wo ergänzen soll, kommt immer die Frage, ob man das nicht selbst machen und den Code posten könne.
jo, ich nochmal..sorry..das ist auch nicht schön von mir. Standarduser hat ja irgendwo auch recht... Ich müsste viel viel mehr probieren.....
Hi,
auch nochmal.
Für die die es interessiert, anbei mal noch ein Bild mit meiner Abfall-Lösung, umgesetzt mit der hier erwähnten "setstate Variante".
Kann mich doch noch nicht entscheiden. Die Kombi aus (von links nach rechts) Kachel 2 und 3 wäre der Optimalfall. Aber halt nicht machbar.
Rechts mit "bottom-narrow" im Symbol-div.
Links mit "top-narrow" im Label-div.
Mit der Variante von setstate hat es bei mir funktioniert!!
Zitat von: TomLee am 27 November 2017, 11:09:32
Aber halt nicht machbar.
Geht nicht gibts nicht!
Ein denkbarer umweg wäre, die Readings je nach länge nochmal in userreadings zu wandeln und dann so jeweils das element anzupassen mit eigenen Klassen
Es geht scheinbar fast alles mit FHEM, kann deinen Gedanken auch folgen, verstehe dich und ist 100 % auch machbar.
Um beim Thema zu bleiben😂, mach mal und poste die Lösung.
Hallo,
es mag mir einfach nicht gelingen auf die Attribute umzustellen die man bei Verwendung von mehreren Werten verwenden soll. data-colors greift nicht und fa-spin mag auch nicht, fa-trash-o und warn werden angezeigt, ist der RegEx in data-states falsch ?
Hat jemand einen Tipp ?
<header>Müllabfuhr</header>
<div class="vbox">
<div class="bigger bottom-narrow"
data-device="Google_Abfallkalender"
data-type="symbol"
data-get="nextWastedays"
data-get-warn=".*(\d+).*"
data-states='["Restabfall/Wertstoffe_.*","Bioabfall_.*","Hecken-undBaumschnitt_.*","Schadstoffmobil_.*","Restabfall/Wertstoffe_ .([0|1])","Bioabfall_.([0|1])","Hecken-undBaumschnitt_.([0|1])","Schadstoffmobil_ .([0|1])"]'
data-colors='["#87837D","#505050","green","red","#87837D","#5050","green","red"]'
data-icons='["fa-trash-o warn","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin"]'
>
</div>
<div data-type="label"
data-device="Google_Abfallkalender"
data-get="nextWaste"
class="top-narrow">
</div>
</div>
Gruß
Thomas
@TomLee
Stell doch bitte mal ein list vom Google_Abfallkalender bereit ...
In nextWastedays stehen die Werte wie in data-states angegeben, heute zum testen bspw. Bioabfall_0.
Gruß
Thomas
@TomLee
Ich habe das Beispiel mal auf die Bioabfall-Variante eingeschränkt.
Der angehängte Screenshot stellt das Ergebnis mit den Werten Bioabfall_0, Bioabfall_1 und Bioabfall_2 dar:
<div data-type="symbol" data-device="ftuitest"
data-get="nextWastedays"
data-get-warn=".*(\d+).*"
data-states='["Bio.*_0","Bio.*_1","Bio.*_(0|1)","Bio.*"]'
data-colors='["red","yellow","blue","green"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o warn fa-spin","fa-trash-o"]'
class="bigger bottom-narrow"></div>
data-states wird von links nach rechts ausgewertet; der erste, passende Ausdruck gewinnt.
Bei Deiner Definiton gewinnt stets "Bioabfall_.*".
Bei meiner Definition verliert stets die blaue Variante.
Ok, versteh ich, passt bei dir. Dann lass ich das erstmal mit (0|1).
Aber warum bei mir nicht.
Bei mir gewinnt immer der erste Ausdruck :-\ und data-colors greift auch nicht.
Heute ist Restabfall/Wertstoffe_1
<div class="vbox">
<div class="bigger bottom-narrow"
data-device="Google_Abfallkalender"
data-type="symbol"
data-get="nextWastedays"
data-get-warn=".*(\d+).*"
data-states='["Rest.*_0","Rest.*_1","Rest.*"]'
data-colors='["red","yellow","green"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o"]'>
</div>
@TomLee
Ich hatte mittlerweile Gelegenheit mit Deinem nextWastedays-Wert und Deiner Widget-Definition zu testen. Und bei mir erscheint dann erwartungsgemäß ein gelber Mülleimer mit einer warnenden 1.
Der erste Verdacht wäre nun, dass nextWastedays einen anderen Wert enthält - ansonsten müsste ja einer der angegebenen Array-Werte matchen. Was passiert denn bei Dir, wenn Du statt
data-states='["Rest.*_0","Rest.*_1","Rest.*"]'
einfach
data-states='[".*_0",".*_1",".*"]'
verwendest?
Es ist zum Mäuse melken.
Das Icon ist grün,dreht sich und es wird kein warn icon mehr angezeigt ::) ;D
Heute ist Restabfall/Wertstoffe_0
<div class="vbox">
<div class="bigger bottom-narrow"
data-device="Google_Abfallkalender"
data-type="symbol"
data-get-on="nextWastedays"
data-get-warn=".*(\d+).*"
data-states='[".*_0",".*_1",".*"]'
data-colors='["red","blue","green"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o warn fa-spin"]'>
</div>
Hab schon ewig nichts mehr in meinem FTUI gemacht, das Repository ist mit update add eingebunden, also alles aktuell.
Fehlt mglw. eine Angabe im head ?
edit:sry Code nochmal geändert
@TomLee
Noch ist nicht alles verloren, da für mich das Verhalten nachvollziehbar ist:
Die Darstellung ist grün und rotierend; folglich sollte das dritte Array-Element zugeschlagen haben; daraus wiederum sollte folgen, dass weder ein _0 noch ein _1 am Ende des Readings steht.
Da kein Warnwert angezeigt wird, sollte das Reading auch keine Ziffer beinhalten. In einem solchen Fall wird trotz warn-Klasse mangels Wert keine Warnung angezeigt.
Gib doch mal bitte mit folgendem Konstrukt Deinen Wert aus:
<div data-type="label" data-device="Google_Abfallkalender" data-get="nextWastedays" data-pre-text="#" data-post-text="#"></div>
Übrigens hast Du jetzt scheinbar kein data-get mehr, dann wird STATE ausgewertet - keine Ahnung, was da drin steht ...
Es steht aber wie gesagt heute eine 0 dahinter.
Ups sry, das mit data-get-on waren wieder Spielereien.
Jetzt mit data-get matcht der erste Ausdruck das icon ist rot und dreht sich, alles wie es sein soll.
Nehm ich aber wieder diese Variante:
data-states='["Rest.*_0","Rest.*_1","Rest.*"]'
greift data-colors nicht mehr, das icon dreht sich weiterhin und auch das warn Icon wird angezeigt.
@TomLee
So, wie es aussieht, scheint ja (vielleicht) noch irgendwas zwischen # und Restabfall zu stehen.
Was passiert denn z.B. bei:
data-states='[".*Rest.*_0",".*Rest.*_1",".*Rest.*"]'
Nö, das liegt an <meta name="widget_base_width" content="145">
Hier ein list:
Internals:
DEF ical url https://calendar.google.com/calendar/ical/xxxxxxxxxxxxxx%40group.calendar.google.com/private-xxxxxxxxxxxxx/basic.ics 21600
FUUID 5c97edc1-f33f-78f5-4056-9a9141279c98c990
NAME Google_Abfallkalender
NOTIFYDEV global
NR 29
NTFY_ORDER 50-Google_Abfallkalender
STATE triggered
TYPE Calendar
READINGS:
2020-01-03 15:42:39 calname Abfallkalender
2020-01-03 15:42:39 lastUpdate 2020-01-03 15:42:37
2019-03-24 21:51:16 modeAlarm
2020-01-03 00:00:00 modeAlarmOrStart 7fb5254b241e3aaa7b000999ee14a341
2019-03-24 21:51:16 modeAlarmed
2020-01-03 03:42:39 modeChanged
2020-01-03 15:42:39 modeEnd 582f3fe4cfa5a38e0ceac8d763c8d420;7aed1eba602cfb65fde4094333152d74;6e1dde3002f52ec32cda6a417e60f9f8;a98c3a74ca533579622f9e4364bb4918;d9dc29f465821a0fabdc43d09932533e;02fb86dbc492d6e222fbc19e4e2cb6e0;c1e2a31c97489039aaa504f0d149e9c7;ebf6e87c57e4d1a85062886b25052684;eb610dc955cf631b0252fda8446db7d2;e388d29a4c3fa6f1bd963a77a82a7421;ee44968df440488e3ba08050bda22862;c123d3b08e03ce2ca21654ec618a2b07;f14daa0e54a687dd6a3c67f43b70203e;8e83be071a7fcf849357b382e2aa459f;eb42c49d73b8d760b659c6684d06988d;aef6114e170537127af2664e5d67e86d;c017cd272c8f98672094ab97ac8e5529;998bab8d5729e32ef744e31038781d87;419d8ccceafcd36b67e311ca26f3fac1;89eabf7970b2f89d14cfb5f13c574620;f9af1f2e0726de919a39640b354b0d2e;5d51522a84ac8cdc7e73c67a47ca3c3e;da49e537f29049e2118542597bee4a48;541a59866bb0bfc815b5e80f0589ee42;5696bf20a3c88a4b1bcf882576f0dd26;572f0bb7ef63b2e963487c3af808b20c;11bd91193f7d3a93c2a6a16aec72fdcc;f7844ec12b6b84b4d8c86b153eaaddc7;08536644298e5eb9eac444d9c93ad73f;45be9db66ba7aeae1e8e060ee425bc5f;b6be8ba12e4e30495d1286a91e8fb917;3b0a6696506db385748d5188d7889024;d7bf29a97b1d951828b946f5269ed39c;41ca1837c4cff5965066e2896297fbe3;583e84afdcac86d4785510c4dff92d56;0c149c16fbad06f16089b058499e07bb;d8916e6d4b8b0f8f2f3f71f859b135c6;31c0932540a2234f58ec0678c0bbf723;5638070cc1ec2db4f06ec5fde036449c;f190c596790bf2ac1157b81e4e6dfa32;3cd27ac838f7daee217ca93dbf4f6b4d;14d6809307e51dab83f10b3810c01174;70474697cd4f0da4acc74fdfda22260c;1626edd70165f01417906c420c682494;0104ee61a54c7ab12cd28bce85fdbb88;1269b10a4eeec11f32ae575b6b7d7216;df96549c28e25b9d1a0660b870fa5dc8;484dbedc2a414d2aa82a6100add56ebc;3b224fe1e8cd62e856d57b453b3d0b60;6a9f936d8a0ba0a5c1e3300bc4c34353;105e286a6ef3804f23e40b1e14e26c8b;a64c970419795b03acb56c91b70f96a8;558d6b0c585a263d960006b07d77e62a;c770c0e3e2570eb091ad7f7b1718ab65;6260bd137f775f7b4ae40689a0d98063;f79bc7e4c13ac3b1378ecdbf956ce834;c69e12aa6531dcfd11ddcf0a3db5e99f;a873ea28a9c9920054b518a5b5033187;ac081de07be60181774ed7cee6d7346f;a1fd7aea39539424379a8aa076807735;1snba435r7nl2sgf96c0u8nvf5googlecom;ef9a53d15792953adfeaae6a44b2d570;90e1eb1335b38b3ba0118e3a7c879c86;9762ebe6a27750ff35b53258a11e640d
2020-01-02 02:51:34 modeEnded
2020-01-03 00:00:00 modeStart 7fb5254b241e3aaa7b000999ee14a341
2020-01-03 03:42:39 modeStarted
2020-01-03 15:42:39 modeUpcoming 765c9ff441328f907e10d1f7340f4eab;79e40c16c5d33c18881a411885c74332;6ea7a4f4530661a18f9496b5953af254;c70ad69e1fceb62ec59625c849edcf2d;dd0c6e7764c097adc3930c2483035556;bfe4ee05ee9d98c67e37c399e390717f;c44b79b951885b9b58c6a2c34d910408;fdbef9f8655f130319675f4c0d2e0742;f008c177ffa0522adaf5645735ed3292;fb8c488b37b7a18725a885008a35f956;4fb62630fdab0979b6ee756247304252;2d4d6787dd64ada2ac08a497ff0c430b;826def62fd7c0887d60a16484af78789;14b4a328edf017f24d6eeb66cf129dbf;36cdcb3d85ca848343b639e0b8ef6740;85872e58a7c014ae48b1bcb58c18ad8d;2138700127853d3bd505c7db259c3539;82860ccedf565de0299210875cff6de4;2a71f36a8842449fd9d857a3a3ed8c3a;eb8b750fdf15355e27fbadeaebcf4fc0;2ac7c834e71f860dde4d4ea0c9c06cfc;580499cdc8c87c4836d5ff1d5bce49aa;33fb96831adc046dfc9cbc539a502dc4;38ca550456ccd076c401d50731a8374f;105e489dabbaadb722ef849f6286ae43;d29af509ca3ef000012c7a6cfe5b019f;95b1b82a6c08d6eee822b18ac6d7e268;27c2905cfa3110e5eacdd4d0014a9e49;53412487b7244c391d6ba7ad425db1cc;9b5e064989b8358532b63f388d4d452f;4699d75997c25d24c24e530756b70588;fb639d3e8eadd372149f1652c5ccca1d;d7110cfb4a147fe6056d7ed91bcfdaf7;32ec938a656e6d1375014255716ce3e0;71e74e93f145129e0f4dcc4877f2bf47;567161f968d598b820f4fcb64fb24f29;f5917fb0f47b30beadf13c477763997c;527082e6b54d8b84af7e84e3ee9f90ba;0e8dffdb68834552f5bf4b0148781b8e;6e2f758ca1c3bd09d587e10064566607;ed2507e75481a442e015bf7742d263b1;df8e000d95288f66721725906f71f495;ca906a241b4a6fddefc4b44b146faf79;d2f8d4c07058b915d2142e61a4cb45a2;93a5a0dd5c0f00ca4fb788bda919680f;d962b2775ac588af1e827435b46faddf;bb15234ad2981dd9ed0e1fedd87e32ba;7f278cb9254cd6948610b67fe251b550;bad1dd3e8cfff9bfcfeca172b1a4263e;1e67ecce77a21b0e90071c82681c5233;41321c8f1ec5864ce3e9c0858a5f177f;c88d10ddcfb8b8e75f0b2ab6f9db319f;2cc2c8c5407ea3ba9cb1d1c2fe4be3a6;0c622b3d451ec7bdf4605cd3a7ed9edd;d4eed7b2adcb38dc54ed684387b4b8ab;259e42fff0b219e134fcd2de4cb885c8;592d73dce2f69ce9f06d0646a31007f5;cb50e43d0bedf304fa3bea12011e00bd;dcee2f091eb2b45cb38ab60658efc101;ff01d36183eee1d049a36a0740bdd927;9ce6cc9b038ede3ce3e8333f09e34719
2020-01-03 15:42:39 nextUpdate 2020-01-03 21:42:37
2020-01-03 15:42:39 nextWakeup 2020-01-03 21:42:37
2020-01-03 15:42:39 nextWaste Restabfall/Wertstoffe
2020-01-03 15:42:39 nextWastedays Restabfall/Wertstoffe_0
2020-01-03 15:42:39 state triggered
Attributes:
comment "$T1 $D $S"
nextWasteDays {int((fhem('get '.$name.' events format:custom="$t1" limit:from=0,count=1',1) + 86399 - time) / 86400)},
nextWaste {fhem('get '.$name.' events format:custom="$S" limit:from=0,count=1')}
defaultFormat "$T1 $S"
room Kalender
userReadings nextWaste {my $var1 =fhem('get '.$name.' events format:custom="$S" limit:from=0,count=1',1);
my $var2 =int((fhem('get '.$name.' events format:custom="$t1" limit:from=0,count=1',1) + 86399 - time) / 86400);
my $regex = qr/Abfuhrtermin|in|Buxtehude| am \d{1,2}\.\d{1,2}\.\d{4}/p;
my $result = $var1 =~ s/$regex//rg;
return $result},
nextWastedays {my $var1 =fhem('get '.$name.' events format:custom="$S" limit:from=0,count=1',1);
my $var2 =int((fhem('get '.$name.' events format:custom="$t1" limit:from=0,count=1',1) + 86399 - time) / 86400);
my $regex = qr/Abfuhrtermin|in|Buxtehude| am \d{1,2}\.\d{1,2}\.\d{4}/p;
my $result = $var1 =~ s/$regex//rg;
my $nwd = "$result"."_"."$var2";
return $nwd}
Nochmal ups, jetzt im list wo ichs poste sehe ich das Leerzeichen auch.
Und mit Leerzeichen funzt auch das letzte data-states :)
Dann werd ich mal wieder an alle vier Tonnen machen.
Danke für die Hilfe.
edit:
es sind mehre Leerzeichen gewesen die ich in $regex = qr/Abfuhrtermin.|.in|.Buxtehude|.am \d{1,2}\.\d{1,2}\.\d{4}/p;
nicht entfernt hatte 8)
Also, mit dem Code aus #26 war ich schon fast richtig gelegen, das Leerzeichen im RegEx .([0|1]) war hier nur zuviel.
Jetzt rotiert das Icon bei .*_1 und .*_0 (sonst nicht), das warn Icon wird immer angezeigt außer bei .*_0 (weil default aus) und data-colors greift auch wie gewünscht, super.
<header>Müllabfuhr</header>
<div class="vbox">
<div class="bigger bottom-narrow"
data-device="Google_Abfallkalender"
data-type="symbol"
data-get="nextWastedays"
data-get-warn=".*(\d+).*"
data-states='["R.*_([0|1])","B.*_([0|1])","H.*_([0|1])","S.*_([0|1])","R.*_.*","B.*_.*","H.*_.*","S.*_.*"]'
data-colors='["#87837D","#783C00","green","red","#87837D","#783C00","green","red"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn"]'>
</div>
<div data-type="label"
data-device="Google_Abfallkalender"
data-get="nextWaste"
class="top-narrow">
</div>
</div>
Für die die es interessiert:
Alle benötigten Daten zur Darstellung des Abfallstatus stehen ja bereits in dem userReadings nextWastedays (im Calendar-Device), für das Label hatte ich bisher zusätzlich extra ein userReadings (nextWaste) welches mich immer gestört hat, das ist ab jetzt hinfällig, dank data-part :)
<header>Müllabfuhr</header>
<div class="vbox">
<div class="bigger bottom-narrow"
data-device="Google_Abfallkalender"
data-type="symbol"
data-get="nextWastedays"
data-get-warn=".*(\d+).*"
data-states='["R.*_([0|1])","B.*_([0|1])","H.*_([0|1])","S.*_([0|1])","R.*_.*","B.*_.*","H.*_.*","S.*_.*"]'
data-colors='["#87837D","#783C00","green","red","#87837D","#783C00","green","red"]'
data-icons='["fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn fa-spin","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn","fa-trash-o warn"]'>
</div>
<div data-type="label"
data-part="(.*)_.*"
data-device="Google_Abfallkalender"
data-get="nextWastedays"
class="top-narrow">
</div>
</div>