FTUI auf mehreren Geräten

Begonnen von Superposchi, 02 Mai 2021, 16:04:09

Vorheriges Thema - Nächstes Thema

Superposchi

Hallo, ich würde gerne mein FTUI auf verschiedenen Geräten mit verschiedenen Auflösungen betreiben.
Da ich mir einen selbstgebastelten Floorplan aufgebaut habe, wo ich mit festen Angaben für Left und Top Symbole über eine Hintergrundgrafik lege, ist das nicht möglich, da die Angaben immer nur für eine Auflösung stimmen. Auch Angaben in Prozent bringen keine Lösung.

Daher war meine Idee, die betreffenden Seiten in je ein Unterverzeichnis für jede Auflösung auszulagern.
Ich müsste als nach meinem Verständnis im Pagetap Objekt nicht direkt die Seite aufrufen, sondern erst noch auf ein Unterverzeichnis verweisen in dem die Seite liegt.

Ginge sowas?

Superposchi

Keiner eine Idee wie man so etwas lösen kann?

Wetterhexe

Ich habe FTUI auch auf (drei) unterschiedlichen Geräten mit unterschiedlichen Auflösungen laufen. Bei mir liegen die Seiten alle im Hauptverzeichnis von FTUI. Unterverzeichnisse habe ich nicht für nötig befunden, weil ich für zwei der drei Geräte nur eine einzige Seite brauche. Der Aufruf lautet dann zB:


https://server/fhem/ftui/tablet.html
https://server/fhem/ftui/gartenhaus.html


Superposchi

Du rufst eine unterschiedliche index-Datei auf, richtig?
Ich wollte innerhalb des Menüs auf unterschiedliche Unterordner verzweigen.

Hintergrund ist, dass ich mir einen eigenen floorplan gebastelt habe in dem mit zb class="ontop" style="left: 1080px; top: 310px" Elemente als Overlay über eine Hintergrundgrafik gelegt werden.
Dies ist bei unterschiedlichen Auflösungen extrem unterschiedlich in der Darstellung, da anscheinend die pixel Hardcodiert werden und was bei dem einen Bildschirm am linken Bildrand ist, bei einem anderen in der Bildschirmmitte liegt.

Wenn ich jeweils die Startseite für jedes Gerät in ein separates Unterverzeichnis lege, müsste ich auch alle normalen Seiten mit Gridster-Aufteilung doppelt und dreifach anlegen und pflegen obwohl diese komplett identisch sind. Da wird der Seiteninhalt ja offenbar entsprechend der Bildschirmdiagonale angepasst.

Wetterhexe

Zitat von: Superposchi am 11 Mai 2021, 19:57:30
Du rufst eine unterschiedliche index-Datei auf, richtig?
nein, ich rufe eine Url auf die für das jeweilige Gerät die entsprechend gestaltete Seite hat. Wir reden über FTUI richtig? Weil mit floorplan hat das nix zu tun?!

Superposchi

Ja wir reden von ftui. Florian habe ich nur erwähnt, da ich mir in ftui Seiten gebastelt habe die über einem Hintergrundbild, verschiedene Overlay-Symbole anzeigen.
Aber genau diese Overlay-Symbole sind das Problem, da sie auf feste Positionen gesetzt sind, die natürlich bei unterschiedlichen Auflösungen nicht mehr identisch sind.

Wie werden unterschiedliche Seiten mit der gleichen URL aufgerufen. Das geht meines Wissens nur per css. Dabei werden aber eigentlich auch zwei verschiedene Seiten aufgerufen, nur abhängig der ausgelesen Geräteinfo eine andere.
Das geht aber nur auf rootebene, also mit der Index.html.
Da ich etwa 80% der Seiten identisch habe und lediglich die Seiten die den 'Floorplan' darstellen unterschiedlich sind, wäre das doppelte und dreifache Arbeit. Denn dann müsste ich ja auch jede gleiche Seite für jedes Gerät duplizieren und doppelt pflegen und verwalten.
Ich würde aber gerne nur die 20% duplizieren, nicht alles.

Tobias

Hi,
ich habe genau den Anwendungsfall, ich habe 4 FTUIs.
Ich habe 4 verschiedene FTUI Ordner angelegt. Damit ist jeder erstmal autark.
Ich arbeite mit Templates die ich in einem separaten "Template" Order parallel zu den FTUI Ordnern habe. Die Templates habe ich dann per symlink in jeden FTIU Ordner verlinkt.
Damit kann man die identischen Inhalte simpel an mehreren Stellen ohne Duplikate halten.

Schau mal in mein Wiki für meine Bewässerungssteuerung, da habe ich ganz unten den Templateansatz als Beispiel aufgeführt

https://github.com/tobiasfaust/ESP8266_PumpControl/wiki/Integration-FHEM
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Superposchi

Interessanter Ansatz, werde ich mir anschauen.