New FHEM Tablet UI

Begonnen von setstate, 22 Februar 2015, 23:37:24

Vorheriges Thema - Nächstes Thema

skuggy

Zitat von: Brockmann am 10 Juli 2015, 09:52:57
Du kannst beliebig viele .html-Seiten erstellen und diese dann vom Gerät aus gezielt ansteuern, also beispielsweise anstatt einer index.html eine tablet.html und eine smartphone.html.

Super, dass es funktioniert.

Zitat von: setstate am 10 Juli 2015, 10:11:50
Wenn ein Element eine sizex="2" hat, 'verbraucht' dies auch 2 Columns.
Also Element1 mit data-col="2" und data-sizex="2" belegt column 2 und 3

Damit kann Element2 erst bei data-col="4" positioniert werden.
Das gleiche muss man auch bei Row beachten



Ahja, jetzt hab ich es verstanden. Ist eigentlich ganz einfach.

Danke.

...Gruß skuggy

FHEM 5.6 auf Raspberry Pi 2, HM-CFG-LAN, 8x HM-LC-Bl1PBU-FM, 5 x HM-CC-RT-DN, 1 x HM-LC-Sw1-Ba-PCB, 1 x HM-RC-4-2, 1 x JeeLink Clone, 10 x TX29DTH-IT, Fritzbox 7270

mc-hollin

#2161
Seitensteuerung über Konfigurationsdatei

ich denke ich kann mal meinen aktuellen Stand meiner Extension ftuiConfig posten.
Die Datei beinhaltet eine kleine Testanwendung, die als Aufsatz in die vorhandene Struktur kopiert werden kann.
Folgender Inhalt:
- indexConfig.html = eine weitere Startseite, damit die vorhandene Startseite nicht überschrieben wird. Hier ist die neue META Angabe Config wichtig, die angibt welche Konfigurationsdatei genutzt werden soll und die zusätzliche Angabe der fhem-tablet-ui-config.js.
- ftuiConfig.json = Konfigurationsdaten
- fhem-tablet-ui-config.js = Konfigurationsdatei auswerten.
- widget_pagebutton.js = steuert den Aufruf einer neuen Seite über eine Methode aus  fhem-tablet-ui-config.js

Ansonsten sind noch ein paar Testtemplates und Testwidgets als Beispiel enthalten.
Diese sind aber auch im Moment als reine Tests zu sehen.

Generell läuft die Initialisierung der Seiten wie gehabt über das initPage des Hauptframeworks.
Der Unterschied zur normalen Seitenerstellung besteht darin , dass man keine Seiten Html mehr bauen muss sondern diese in der Konfigurationsdatei definiert.
Somit müssen eigentlich nur noch die eigentlichen Templates geschrieben werden.
Die Startseite beinhaltet nur noch ein leeres Gridster.

Desweiteren habe ich in der Konfiguration eine Themeangabe implementiert, die automatisch eine css lädt.
Wenn hier die Angabe leer ist wird FTUI wie gewohnt angezeigt.

Ich hoffe ich habe keine Bugs eingebaut und freue mich für jeden Feedback.  :)

EDIT: Das LEER Template nutze ich um eine bessere Positionierung hinzubekommen, da Gridster die Templates vertikal automatisch nach oben verschiebt. Ein transparentes leeres Template sieht man nicht ;-)
Die momentane Einstellung ist optimiert für eine Auflösung von  1280x800 (Samsung Tablet 10")

EDIT: Erweitert um dynamische Devices, die man über die Config ans Template weitergeben kann.
EDIT: Config um Header Text erweitert

eki

#2162
Den Ansatz finde ich ziemlich cool. Ich habe das gerade mal folgendermaßen ausprobiert:

Deine Dateien aus dem Anhang über meine bestehende tablet Installation gespeichert (sollte ja, da alles neue Dateien, die bestehende Installation nicht stören, tut es auch nicht).

Die Oberfläche startet, allerdings sehe ich das Datum und die Zeit nicht.
Änderungen an den Templates werden nicht sofort bei einem Reload der Seite sichtbar

Wenn man das konsequent weiter denkt, dann wäre es ja schlau, die Templates tatsächlich als solche zu benutzen. Ich habe mehrere Räume, die alle ähnlich ausgestattet sind, wenn man den Templates die Info über data-device oder über die Labels aus der json Steuerdatei mitgeben könnte. Dann könnte man über ein Template mehrere gleich ausgestattete Räume anlegen (Modularität lässt grüßen).

mc-hollin

#2163
Hallo Eki,
schön dass du so schnell ein Feedback gibst.
Das ganze sollte genau in die Richtung gehen und weitere Ideen hervor bringen.

Änderungen an einem Template scheinen durch das Cachen des Browsers nciht direkt angezeigt zu werden.
Ich lösche meistens mit Strg+Shift+Entf den BrowserCache und dann wird über F5 alles korrekt angezeigt
Oder beim Seitenaufruf das "#0" entfernen und nochmal aufrufen ?!
Mal sehen ob ich dafür noch ne Lösung finde.

EDIT: Oder hast du Fehler auf der Konsole?

eki

Mit Ctrl+Shift+Ent und Neuladen klappt es.

hillbicks

Ich hab im Moment noch das Problem das die simplecharts nicht aktualisiert werden, bei einem manuellen Reload wird der aktuelle Stand angezeigt. Das betrifft sowohl WebViewControl als auch den Firefox auf dem Laptop. Die Uhrzeit wird hingegen brav im sekundentakt aktualisiert.

longpoll steht sowohl in der index.html auf 1, als auch in der fhem.cfg fuer den standard port (den ich auch nutze) auf 1.

Gibt es sonst noch etwas was ich uebersehen haben koennte?

Sky

Wer kann mir sagen warum ich in WinSCP unter einer SFTP Anmeldung als Benutzer pi keine Änderungen vornehmen kann ?
Bin auf den Raspberry 2 gewechselt,alles neu eingerichtet und wollte nun über Win SCP meine html-Seiten im Ordner tablet einfügen......habe aber keine Berechtigung.


Dies habe ich bei meinem vorherigen Raspberry so gelöst ,das ich die Rechte über Putty geändert habe.
Warum geht das nicht als Benutzer pi , dies wurde doch bei der Einrichtung über die Anleitung von
http://www.meintechblog.de/2013/05/fhem-server-auf-dem-raspberry-pi-in-einer-stunde-einrichten/

mit
cd /opt && sudo chmod -R a+w fhem && sudo usermod -a -G tty pi && sudo usermod -a -G tty fhem

geändert .....

Ist zwar keine Frage zum Frontend aber vielleicht ist einer so freundlich ........ ;)

CoolTux

Also bei Deinem Befehlen ist nicht ein einziger dabei der Dateirechte für einen bestimmten User setzt
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

namor

Clock zeigt nichts an!

Ich bin zwar kein spezialist und habe gerade erst mit der Tablet UI angefangen aber irgend wie bin ich zu doof für die Uhrzeit.

Habe brav nach dem Beispiel von nesges gearbeitet, bekomme aber nichts angezeigt?

Mein Eintrag in der index.html:

<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
       <header>HEUTE</header>
       <div data-type="clock"></div>

Was mache ich falsch???

Braakhekke

#2169
bei mir schaut es so aus :

<li data-row="1" data-col="1" data-sizex="1" data-sizey="1">
   <header>UHR</header>
   <div class="container inline">
      <div data-type="clock" data-format="H:i" class="cell bigger"></div>
      <div data-type="clock" data-format="d.n.Y" class="cell bigger"></div>
   </div>
</li>

Grüße,

Ben
1 x NUC mit PROXMOX (ct FHEM mit Tablet UI, ct Zoneminder v1.30.4, ct habridge) 2 x Raspberry Pi Modell 3, WLAN, HMLAN, V 1.67 nanoCUL868, nodemcu esp8266, viele HM-Komponenten, KS300, HUEDevice

namor

@Braakhekke

geht leider auch nicht :(

Habe es eingefügt, leider keine Anzeige...

Braakhekke

Hallo namor,

Wie schaut den Dein "index.html" aus? Hast Du auch alles so installiert/angelegt wie am Anfang von thread beschrieben?

Grüße, Ben
1 x NUC mit PROXMOX (ct FHEM mit Tablet UI, ct Zoneminder v1.30.4, ct habridge) 2 x Raspberry Pi Modell 3, WLAN, HMLAN, V 1.67 nanoCUL868, nodemcu esp8266, viele HM-Komponenten, KS300, HUEDevice

DJ_SAMMY190

FHEM auf Raspberry Pi 2 b mit Homematic Komponenten

Brockmann

Zitat von: namor am 12 Juli 2015, 21:22:03
geht leider auch nicht :(
Ist diese Datei vorhanden und passen die Zugriffsrechte?
www/tablet/js/widget_clock.js

namor

Werde ich heute Abend nachschauen.