New FHEM Tablet UI

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

Vorheriges Thema - Nächstes Thema

nesges

Zitat von: jsloot am 23 Mai 2015, 12:25:46
was kann der Grund sein, dass das normale Frontend von FHEM über ein trigger WEB JS:location.reload(true) aktualisiert wird, das FTUI aber nicht?

Das ist eine Funktion von FHEMWEB die FTUI nicht kennt. Ich habe aber grade ein widget_reload im Testing-Verzeichnis eingecheckt.

<div data-type="reload"
            data-device="TEST"
            data-reload-on="1"
            data-reset-to="0"></div>


Wenn TEST den Wert "1" hat wird ein Pagereload ausgelöst und der Wert wird auf "0" zurück gesetzt. Das ist notwendig um eine unendliche Reload-Schleife zu verhindern. Um das Widget zu verwenden, sollte man also einen Dummy definieren, den man gezielt setzt um Pagereloads anzustoßen.

nesges

Zitat von: jehu am 23 Mai 2015, 15:41:47
Gerade ist mir aufgefallen, dass im weather-widget das Proplanta Matching für "Nebel" (M) fehlt.

Habs aufgenommen, danke!

jsloot

Zitat von: nesges am 25 Mai 2015, 02:01:13
Das ist eine Funktion von FHEMWEB die FTUI nicht kennt. Ich habe aber grade ein widget_reload im Testing-Verzeichnis eingecheckt.

<div data-type="reload"
            data-device="TEST"
            data-reload-on="1"
            data-reset-to="0"></div>


Wenn TEST den Wert "1" hat wird ein Pagereload ausgelöst und der Wert wird auf "0" zurück gesetzt. Das ist notwendig um eine unendliche Reload-Schleife zu verhindern. Um das Widget zu verwenden, sollte man also einen Dummy definieren, den man gezielt setzt um Pagereloads anzustoßen.

Hi nesges,

ich bin begeistert! Vielen Dank!!!
Ein FHEM-Raspi mit HM-CFG-USB-2. 9 HM Heizthermostate, 9 HM Temperatursensoren, 22 HM Fensterkontakte, 7 Rolloaktoren, 17 HM Unterputz-Aktoren

bjoernbo

@Phil__ : Ich habe deinen "Abfallkalender" übernommen. Anstelle eines Google-Kalenders habe ich mir das .ics-File direkt in FHEM abgelegt. Das sollte doch auch Funktionieren oder?? Allerdings bekomme ich die Pfadauflösung nicht hin.

Beide Funktionieren leider nicht :-(

Zitatical url opt/fhem/www/tablet/Muellkalender/USB_Abfuhrtermine.ICS 3600

Zitatical url /www/tablet/Muellkalender/USB_Abfuhrtermine.ICS 3600

ZitatCalendar Abfall: Could not retrieve file at URL. <hidden>: malformed or unsupported URL
Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

Doggiebert

schau dir die commandref von calendar an, nicht url sondern file, damit sollte es klappen...
SW: FHEM 5.5, Raspian, XBMC, Testinstallation auf Win7
HW: Raspi B, 32GB SD, enocean Pi, RFXTRX433E, BSC - MwC-32, Onkyo TX-NR709, Samsung UE55F8090, Jung LS-Eno, permundo SmartPlug, KDG-FB 6490cable (ohne FHEM)

bjoernbo

Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

Phil__

Zitat von: viegener am 21 Mai 2015, 00:46:34
Hallo Thomas,
Nein generell ist das nicht nötig. Bei mir enthält die Index.html im Head alle includes (also css und js-Dateine).

Die einzelnen Seiten, die als pagetab geladen werden, enthalten dann im wesentlichen nur noch den Seiteninhalt. Ich habe sie weiterhin als vollwertige HTML-Seiten ausgeführt aber nur noch die eigentlichen Gridster-Element mit den widgets:


<!DOCTYPE html>
<html>
<head>
<title>Detail</title>
</head>
<body>

<div class="gridster">

<ul>

<li data-row="1" data-col="1" data-sizex="1" data-sizey="4" data-template="menu.templ"></li>

<!-- *******Hier kommen dann die einzelnen widgets als weitere li-Einträge  *********** -->

</ul>
</div>
</body>
</html>


Gruss,
Johannes

Hallo,

beim ersten überfliegen hört es sich interessant an.
Nur leider hab ich das Gefühö das ich es nicht 100%ig verstanden haben.
Kann das jemand genauer erklären?

Was passiert da genau?
Wird hier zB das Menü als pagetab nur einmal geladen und dann immer nur die Änderungen (Unterschiedliche Widgets der Unterseiten)?
Was genau ist der Vorteil?

Viele Grüße
Server: Intel DH77EB + Core i3-2120 mit Ubuntu Server 14.04
Backup: Beaglebone Black
Homematic: HM-LAN-Adapter, HM-CC-RT-DN, HM-CC-TC, HM-LC-SW1-PL2, HM-SEC-RHS, HM-SEC-SC, HM-TC-IT-WM-W-EU, HM-WDS10-TH-O
Weitere: Denon-AVR, PhilipsTV, PhilipsHue, Raspi+XBMC
Nexus 7 (WebViewControl + FTUI)

viegener

Zitat von: Phil__ am 25 Mai 2015, 11:28:05
Hallo,

beim ersten überfliegen hört es sich interessant an.
Nur leider hab ich das Gefühö das ich es nicht 100%ig verstanden haben.
Kann das jemand genauer erklären?

Was passiert da genau?
Wird hier zB das Menü als pagetab nur einmal geladen und dann immer nur die Änderungen (Unterschiedliche Widgets der Unterseiten)?
Was genau ist der Vorteil?

Viele Grüße

Also ich versuche mal eine Erklärung:

Mein Problem war ursprünglich ein Problem mit pagetab:
Die Unterseiten (also .../index.html#andererpagetab.html) wurden bei einem Refresh nicht wieder geladen, sondern die Hauptseite, denn die Unterseite war ja nur als #... ausgeführt (also eigentlich eine Markierung innerhalb von index.html). Ausserdem war dann auch der falsche pagetab-Button aktiv. Ich fand das während der Entwicklung schwierig, da es immer ziemlich viele Ladevorgänge waren bis man wieder eine veränderte Seite sehen konnte.

Also habe ich dann pagetab angepasst, das geht allerdings nicht ohne eine Verhaltensänderung, nämlich muss sich die Standardseite, also die Widgets, die in index.html sind auch in eine getrennte pagetab-Seite ausgelagert werden.

Index.html enthält die Verweise zu allen css und js-Dateien, den gridster-Eintrag und NUR das Menu
 
<div class="gridster" >
  <ul>
    <li data-row="1" data-col="1" data-sizex="1" data-sizey="4" data-template="menu.templ"></li>
  </ul>
</div>


Beim Laden der Seite wird nun index.html geladen und das Menu. Im Menu entscheidet das pagetab-Widget nun, welche Seite wirklich geladen werden soll. Diese wird dann im HIntergrund geladen und der Inhalt des Gridster-Tags wird dann durch diese Inhalte ersetzt. Da nur der Gridster-Inhalt ersetzt wird, sind keine weiteren css/JS includes nötig und eigentlich braucht man auch keine vollständige HTML-Seite, denn es wird ja nur ein innerer Teil ersetzt.

Etwas unschön ist noch, dass das Menu zweimal geladen wird, da es ja in index.html enthalten sein muss (um überhaupt ein pagetab widget zu haben) und auch nochmal in der Unterseite, die dann zusätzlich geladen wird. Dies ist momentan notwendig, da der ganze Gridster-Inhalt (inklusive dem Menu) ersetzt wird.

Vorteil:
- Alle Unterseiten sind identisch strukturiert. Es gibt keine Unterschied mehr zwischen "Einstiegsseite" also was standardmässig angezeigt wird beim Einstieg in das ftui und den Unterseiten. Ich persönlich finde das klarer und einfacher.
- Der Reload funktioniert auch auf Unterseiten (Und das war für mich das eigentliche Ziel)

Ich hoffe das war etwas klarer beschrieben.

Gruss,
Johannes

PS: Wenn wir die beiden pagetab-Varianten nicht zusammenführen können, wäre es auch denkbar meinen pagetab umzubenennen in subscreen o.ä.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Risiko

Zitat von: setstate am 21 Mai 2015, 20:45:16
1. Erweiterung Dimmer Widget
- neues Attribut "data-dim" für ein separates Reading für den Dimmer

Der Dimlevel wird prima synchronisiert. Habe aber Probleme mit dem Status (on,off)
Dieser stimmt erst nach einem page reload.
Im consolen log ist nichts zu finden. Ideen?

Danke. Risiko.


setstate

Updates von nesges, viegener und mir sind eingechecked:

- Select Widget kennt jetzt data-quote, um zum Beispiel ein Playlist mit Leerzeichen auswählen zu können. Die List kann dann mit Anführungszeichen umschlossen werden.
- mit <meta name="widget_margin" content="3"> kann man die Abstände der Gridster Elemente kleiner machen
- Weather Widget hat jetzt das Proplanta Matching für "Nebel" (M)
- Slider Widget kann jetzt optional auch mit data-width / data-height beeinflusst werden.
- Pagetab and readingsgroup Widget von viegener

SvenJust

Hallo,

seit dem Update funktioniert bei mir bei dem label das data-fix nicht mehr. Es werden jetzt alle Nachkommastellen einer Zahl angezeigt.

Kann dies jamand bestätigen? Danke!

VG
Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

update71

Zitat von: setstate am 26 Mai 2015, 00:54:52
Updates von nesges, viegener und mir sind eingechecked:

- Select Widget kennt jetzt data-quote, um zum Beispiel ein Playlist mit Leerzeichen auswählen zu können. Die List kann dann mit Anführungszeichen umschlossen werden.
- mit <meta name="widget_margin" content="3"> kann man die Abstände der Gridster Elemente kleiner machen
- Weather Widget hat jetzt das Proplanta Matching für "Nebel" (M)
- Slider Widget kann jetzt optional auch mit data-width / data-height beeinflusst werden.
- Pagetab and readingsgroup Widget von viegener
Super .... *daumenhoch* und immer wieder Danke an alle die helfen und bauen !!!

Sind für das pagetab-widget von viegener noch die js Anpassungen nötig oder habt ihr die jetzt per default im code?
Thomas
###########
Raspi mit Fhem, nanoCUL 433 + mehrere Brennstuhl Steckdosen - HM-LAN + Thermostat, 6 fach Taster, Aussensensor - HUEBridge + 3 weiße LEDs ... mehr folgt

setstate

Zitat von: SvenJust am 26 Mai 2015, 07:46:14
Hallo,

seit dem Update funktioniert bei mir bei dem label das data-fix nicht mehr. Es werden jetzt alle Nachkommastellen einer Zahl angezeigt.

Kann dies jamand bestätigen? Danke!

VG
Sven

Danke Sven,

trotz 4-Augen Prinzip ist ein Bug durchgerutscht. Ist jetzt gefixed.

Sorry

SvenJust

Vielen Dank für die schnelle Korrektur und eure tolle Arbeit.
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

Phil__

Gibt es die Möglichkeit aus dem oa fonts nur die von mir benötigten icons zu exportieren und in einen font zu packen. Wenn ja kann mir das jemand erklären? Werde aus dem wiki nicht schlau...

Viele Grüsse
Server: Intel DH77EB + Core i3-2120 mit Ubuntu Server 14.04
Backup: Beaglebone Black
Homematic: HM-LAN-Adapter, HM-CC-RT-DN, HM-CC-TC, HM-LC-SW1-PL2, HM-SEC-RHS, HM-SEC-SC, HM-TC-IT-WM-W-EU, HM-WDS10-TH-O
Weitere: Denon-AVR, PhilipsTV, PhilipsHue, Raspi+XBMC
Nexus 7 (WebViewControl + FTUI)