FTUI3 Testinstanz

Aus FHEMWiki
Zur Navigation springen Zur Suche springen

Zielsetzung

Bei FTUI3 Updates werden unter Umständen Dinge angepasst, die bestehende Funktionen beeinträchtigen. Wie kann ich meine FTUI3 Installation davor schützen?

Umsetzung

Um den Betrieb möglichst wenig zu gefährden und die Akzeptanz in der Familie zu erhöhen, kopiert man das ftui Verzeichnis auf ein ftui_stable (siehe auch Quelltext unten) Verzeichnis und verwendet in Zukunft dieses Verzeichnis, um es auf den "produktiven" Geräten (Tablet im Wohnzimmer, Handy der Ehefrau usw.) anzuzeigen. Auf meinen "Testgeräten" (eigenes Handy, eigener PC) läuft immer das FTUI3 im Standard FTUI Verzeichnis.

So gelangen die Updates und auch eigene Weiterentwicklungen zunächst auf meine Testgeräte, bevor ich sie dann auf die Enduser ausgerollt werden. (per Kopie des ftui Folders auf den ftui_stable folder)

Das folgende Skript selber muss in den html body, am besten als erste Anweisung.

<script>
   if (this.location.pathname.includes("ftui_stable")) {
     document.head.innerHTML += '<meta name="toast" content="0">';
   } else {
     document.head.innerHTML += '<meta name="toast" content="1">';
     document.head.innerHTML += '<meta name="toast_position" content="topLeft">';
     document.body.innerHTML += '<div id="div1">Test-Version</div>';
   }
</script>

Optional: Um die Versionen noch besser unterscheidbar zu machen, kann noch folgende Erweiterung vorgenommen werden. Damit erreicht man, dass in der Test-Version ein entsprechendes Banner angezeigt wird, was in der produktiven Instanz dann nicht hinzugefügt wird. Außerdem zeigt die Testversion auch Toast Messages an.

Ein CSS File (hier user.css) muss existieren und auch im html header verlinkt sein:

<link href="user.css" rel="stylesheet" type="text/css" />

In dieses CSS File schreibt man anschließend den folgenden Code, um damit das hinzugefügte DIV noch zu stylen.

#div1 {
    color: red;
    text-align: center;
    z-index: 99;
    height: 30px;
    width: 100px;
    background-color: pink;
    right: 10px;
    position: absolute;
    padding: 10px;
    top: 10px;
}

Wichtig: Der Ordner muss ftui_stable heißen oder man muss das Skript anpassen.