[FTUI3] new PinPad für FTUI3

Begonnen von mr_petz, 05 April 2021, 11:12:24

Vorheriges Thema - Nächstes Thema

StephanFHEM

noshake funktioniert
banana funktioniert tatsächlich auch.. war mir 100% sicher, dass ich das schon als eine der ersten Sachen probiert hatte.. vielleicht war der cache da auch nicht richtig gelöscht...

auf jeden Fall: Danke!

Timothee

Hallo,
kann mir jemand sagen bzw. erklären, wie ich es schaffe, dass das PinPad immer angezeigt wird? Ich hab schon hidden=false sowie open=true probiert. Bei hidden=false wird es gar nicht angezeigt und bei open=true wird es zwar angezeigt, jedoch nur bis man das erste mal den korrekten Pin eingegeben hat. Anschließend muss ich immer die Seite neuladen, damit das PinPad wieder angezeigt wird.

Viele Grüße
Tim

mr_petz

Hi Tim,
kannst du mir bitte erklären in welchen Zusammenhang das Pinpad offen bleiben soll und warum?
Es ist ja so konzipiert wenn der richtige Pin, dann schließt es sich.
LG

Timothee

Grundsätzlich geht es darum, dass ich über die TabletUI Oberfläche meinen Server per Wake on Lan starten möchte. Hierzu möchte ich gern, dass beim Klick auf mein Server-Icon das PinPad erscheint. Im Hauptthread zu TabletUI V3 wurde mir ja vorgeschlagen, dass PinPad in ein Popup zu packen, damit ich es auf einfachen Wege schließen kann. Ohne das Popup war das PinPad nur über Umwege zu schließen. Das funktioniert nun wunderbar. Wenn man dann den Pin korrekt eingibt, schließt sich das PinPad und der Server startet (hier kämpfe ich noch mit dem Popup, da sich dieses nach erfolgreicher Pineingabe nicht schließt, aber anderes Thema). Wenn man nun jedoch ein weiteres Mal den Server wecken möchte (weil Server nicht gestartet ist bspw.), erscheint beim Klick auf das Server-Icon nur noch das Popup ohne das PinPad. An dieser Stelle hilft dann nur ein Neuladen der TabletUI Oberfläche. Ich hab versucht, das PinPad mit dem Attribut hidden=false zu öffnen. Hierbei erscheint das PinPad bei mir nie. Dann habe ich es mit dem Attribut open=true versucht, wobei ich nun das beschriebene verhalten habe. Ich hoffe, ich konnte mein Anliegen nun besser beschreiben.

Tim

mr_petz

#19
Ich könnte dir wenn du magst bei click auf den overlay (ringsum das Pad) das Pinpad schließen lassen.
Damit musst du nicht den umweg über das Popup gehen...
Dazu nur extra-close mit angeben.
Ich hänge mal an.

LG

Edit:
Du brauchst bei hidden und open einen Trigger wie in der example zu sehen...
https://github.com/mr-petz/ftui/blob/pinpad/www/ftui/examples/pinpad.html

Oh.. gerade bemerkt, geht so direkt im overlay nicht... ich mach noch was...

Edit: Aber jetzt...
Jetzt wird bei der Pineingabe nicht mehr geschlossen. Auf allen anderen Elementen schon... ;)

Timothee

#20
Vielen Dank für die schnelle Hilfe. Leider schließt das PinPad bei jeder Eingabe einer Ziffer. Aber ich denke, den Fehler hast du bereits bemerkt. In dem Beispiel konnte ich jetzt nirgends ein Trigger finden (auch nicht per Suche). Außerdem ist mir die Funktionsweise auch nicht wirklich klar. Kannst du mir vielleicht ein Beispiel oder ein Link geben, wo das mal thematisiert wurde? Ich fange wie gesagt erst an mich mit TabletUI auseinandersetzen.

Edit:
Mit der aktuellen Version funktioniert es nun. Vielen Dank nochmal für die schnelle Anpassung  ;)

LG Tim

mr_petz

#21
Sehr gut, jetzt brauchst du einen Trigger damit es immer offen bleibt. Bsp.:

[hidden]="dummy | map('.*:false')"

Das kann auch das (device) selbst sein...

LG mr_petz

Edit:
das extra set nur für extra Anwendungen/Devices die nicht on und off sind verwenden...
Also bei (device) wird off bei richtigen Pin gesendet...

Timothee

Kann man in TabletUI eigentlich auch die Bedingungen verketten? Also bei dem Attribut hidden bspw. sowas wie [hidden]="device | map('.*:false') AND device2 | map(''on:true, off:false')" ? Meine Wunschlösung sehe nämlich so aus, dass sich das PinPad nur öffnet, wenn der Status meines Servers offline ist. Wenn ich nun jedoch bei hidden mein presence-device dafür hinterlege, erscheint ja das PinPad sofort nach dem Laden der Oberfläche. Und mit der Verkettung könnte ich das relativ simpel lösen.

mr_petz

#23
Da kannst du nur mit [hidden] und [open] arbeiten für 2 Devices....

LG

Edit:
Gerade wieder eingefallen. Auch mit Semikolontrennung... Damit kannst du mehrere Device abonnieren/binden... Bsp.:

[hidden]="device | map('off:false'); device2 | map('off:true, on:false')"

Das müsste mal ins wiki....!