FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: klausw am 22 Januar 2018, 00:12:43

Titel: Vorschlag für Auswertung der fhemweb_url
Beitrag von: klausw am 22 Januar 2018, 00:12:43
Hallo setstate,

folgendes Problem:

auf zwei FHEM/FTUI Systeme wird über Apache Reverse Proxy zugegriffen.
Daher musste beim zweiten System der Webroot von "fhem" nach "fewo" umbenannt werden
Eins der Systeme ist über UMTS/VPN eingebunden
Auf das fewo System möchte ich auch lokal zugreifen können da dies erheblich schneller geht.
Bisher benötige ich dafür 2 unterschiedliche index.html mit verschiedenen fhemweb_url Konfigurationen
Wenn nach
ftui.config.fhemDir = $("meta[name='fhemweb_url']").attr("content") || location.origin + "/fhem/";
die Zeilen
if(new RegExp("(?!\/)").test($("meta[name='fhemweb_url']").attr("content"))) {
ftui.config.fhemDir = location.origin + "/" + ftui.config.fhemDir + "/";
}

in die fhem-tablet-ui eingefügt werden könnte man durch Angabe eines Pfadnamens die URL flexibel zusammenbauen, genau so wie du es beim weglassen von fhemweb_url schon für den Pfad fhem machst.

Könntest du dir vorstellen das einzubauen?

Grüße
Klaus
Titel: Antw:Vorschlag für Auswertung der fhemweb_url
Beitrag von: setstate am 22 Januar 2018, 05:58:29
Hallo Klaus,

wann soll der RegEx greifen? Gib mal bitte zwei Beispiele für jeweils true und false.
Titel: Antw:Vorschlag für Auswertung der fhemweb_url
Beitrag von: klausw am 22 Januar 2018, 09:50:42
die RegEx ist true wenn kein "/" in der fhemweb_url ist:
fhem
fhem2
fewo

in diesem Fall soll location.origin davorgestellt werden


False ist sie in diesen Fällen:
http://192.168.4.4/fhem2/
https://test.dyndns.de/fhem2/

allerdings auch bei
/fhem2
Aber das würde auch in deiner aktuellen Version nicht funktionieren
Titel: Antw:Vorschlag für Auswertung der fhemweb_url
Beitrag von: klausw am 05 Februar 2018, 19:16:33
Hallo setstate,

würdest du so was in der Art einbauen?
Soll ich noch was verändern?
Titel: Antw:Vorschlag für Auswertung der fhemweb_url
Beitrag von: setstate am 05 Februar 2018, 19:58:56
kann ich so übernehmen. Mir fällt jetzt auch keine bessere Lösung ein.

Nachtrag:
Wenn der Tag leer ist, klappt es nicht. Daher muss danach getestet werden


        var fhemUrl = $("meta[name='fhemweb_url']").attr("content");
        ftui.config.fhemDir = fhemUrl || location.origin + "/fhem/";
        if (fhemUrl && new RegExp("(?!\/)").test(fhemUrl)) {
            ftui.config.fhemDir = location.origin + "/" + ftui.config.fhemDir + "/";
        }