Allgemeine Fragen zu FTUI

Begonnen von Kuzl, 02 November 2016, 08:43:42

Vorheriges Thema - Nächstes Thema

Kuzl

Hallo Zusammen,

ich habe vor, meinen MagicMirror mit FTUI zu visualisieren, da mir die anderen Lösungen nicht zusagen.
Dazu hab ich noch ein paar generelle Fragen, da man da von den Ganzen Möglichkeiten ja fast erschlagen wird  ::)

- Gibt es eine einfachere Möglichkeit einen Text mit mehreren Readings zu machen? Ich würde z.b. gerne aus dem Weather-Modul aus Wochentag und Temperaturen so was in dieser Richtung machen: Mo: 3-7 °C
   Wenn ich das richtig verstanden Habe bräuchte ich dann 3 Label-Widgets und das für jeden Tag das ist doch sehr umständlich... Kann man da nicht mehrere Readings aus einem Device angeben, die dann in einen Text innerhalb des <div> als Platzhalter eingefügt werden oder so?

- Stimmt es, dass ich bedingte Anzeigen nur über den FTUISRV machen kann? Ich würde mir gerne, wenn ich Heute einen Termin habe, diesen rot hinterlegt anzeigen lassen. Ich habe keine Möglichkeit von seiten FTUI gefunden, das nur zu machen, wenn z.b. ein bestimmtes Reading existiert.

- Kann man beim Swiper-Widget eine dynamische Anzahl mehrerer Readings angeben? und kann man den Swiper auch vertikal scrollen lassen? Das sieht bei Text meiner Meinung nach schöner aus.

- Wenn ich den Fhem-Server neu starte, findet FTUI dann die Verbindung wieder, ohne dass ich die Seite refreshen muss?

- gibt es eine Möglichkeit, irgendwie den return eines Perl-Codes einzubinden? Das Modul UWZ z.b. bietet eine Fuktion, die die Warnungen direkt als HTML zurückgibt.

Ich hoffe ihr könnt meine Fragen beantworten.

Viele Grüße,
Kuzl

setstate

Platzhalter für Reading-Content gibt es (noch) nicht. Aber sobald man z.B. bedingte Colorierung braucht, landet man automatisch wieder beim vollen Labelwidget.
Labels kann man per class="autohide" automatisch ausblenden lassen, wenn das definierte Reading gerade nicht existiert. Mit data-classes kann man CSS Klassen abhängig vom Inhalt hinzufügen lassen. Z.B. "show"/"hide" oder "red"/"green"

Ein Reconnect nach Server down sollte klappen.

Bei den anderen Themen kann ich nicht helfen.

Ellert

Zitat- Gibt es eine einfachere Möglichkeit einen Text mit mehreren Readings zu machen? Ich würde z.b. gerne aus dem Weather-Modul aus Wochentag und Temperaturen so was in dieser Richtung machen: Mo: 3-7 °C
Du könntest Dir per userReadings für jeden Tag einen Text zusammenstellen und das Reading im FTUI anzeigen lassen.
Zitatgibt es eine Möglichkeit, irgendwie den return eines Perl-Codes einzubinden? Das Modul UWZ z.b. bietet eine Fuktion, die die Warnungen direkt als HTML zurückgibt.
Hast Du schon mal versucht das als Label einzubinden?

setstate

Ich würde die Funktion zyklisch per AT abfragen und das Result in ein Dummy schreiben. Dann ist das auch sauber asynchron entkoppelt.

Kuzl

Hallo zusammen,

danke für die Infos - probier ich heute mal aus.

Ich denke das UserReading sollte für den Wetterbericht wirklich die schönste Variante sein.
Hab noch nicht versucht Perl-Code als Label einzubinden, hab das auch noch in keinem Beispiel gesehen. Der Weg mit dem Dummy geht natürlich, ist allerdings nicht sehr schön.

Nochmal eine Frage zu dem bedingten Anzeigen:
die Data-classes bzw das Autohide funktionieren ja auch nur, wenn ich NUR ein Reading anzeigen will, ohne zusätzlichem Text. Denn der bleibt dann ja einfach stehen wenn ich das richtig verstanden habe oder?
Dann bleibt mir wieder nur ein Dummy, in das ich einfach gleich über ein notify den kompletten HTML-Code stecke.

Was mir sehr abgeht ist einfach die Möglichkeit, Readings schön irgendwo mit einzubauen. z.b. den Satz "Heute hat es 18 Grad." muss ich mir aus 3 Label-Widgets zusammenbasteln.
Eine Idee wär zum Beispiel sowas wie pre-data und post-data

setstate

#5
Das geht mit data-substution (RegEx Voodoo)
Mit pre und post wäre es natürlich einfachen.

Ein regex Beispiel kann ich dir heute Abend liefern. Am Telefon jetzt macht das keinen Spaß, das zusammen zuklickern.

Ich versuche es doch mal


data-substution="s/(.*)/Heute wird es $1 Grad/g"


Das habe ich noch gefunden:

// hide element when it's value equals data-hide
            // if data-hideparents is set, it is interpreted als jquery selector to hide elements parents filtered by this selector
           

Kuzl

ahhh, damit funktionierts :)
Nur in Zusammenhang mit autohide gehts dann nicht mehr, aber da werde ich dann einfach extern HTML-Code einbinden.
Vielen Dank an alle für die ganzen Antworten.
Den Perl-Code direkt einzubinden hat übrigens nicht geklappt - muss wohl auch über ein Dummy eingebunden werden.

Viele Grüße,
Kuzl

Kuzl

Hab jetzt das perfekte Widget für die bedingte Anzeige gefunden - classchanger
Damit kann ich in abhängigkeit eines states oder Readings beliebige andere Widgets einfach über die class "hide" aus und einblenden :)

Kuzl

Habt ihr eigentlich auch das kleine "+" oben in der mitte?