Autor Thema: Floorplan wie eine App öffnen (Full Screen Mode)  (Gelesen 1016 mal)

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Floorplan wie eine App öffnen (Full Screen Mode)
« am: 29 März 2019, 15:17:25 »
Hallo,
ich würde gerne meine Floorplans direkt über die jeweilige Floorplan-URL auf dem Tablet (iPad) aufrufen. Der Floorplan soll dann möglichst ohne Browser-Ballast (ohne Tabs und Adresszeile und ohne Statuszeile) erscheinen. Ich meine, dafür lässt sich
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
verwenden.
Wie kann ich aber das im FLoorplan selber einstellen? Ich baue ja keine html-Seite, sondern Konfiguriere lediglich über das FHEM UI oder die CSS (darkfloorplanstyle.css).

Danke für eure Hilfe.

Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #1 am: 29 März 2019, 16:56:00 »
Zum Ausprobieren habe ich mal testweise die 95_FLOORPLAN.pm verändert:

...
FP_htmlHeader($) {
  my $title = shift;
  $title = "FHEM floorplan" if (!$title);
  ### Page start
  $FW_RET = "";
  $FW_RET .= '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'."\n";
  $FW_RET .= '<html xmlns="http://www.w3.org/1999/xhtml">'."\n";
  FW_pO "<head root=\"$FW_ME\">\n<title>$title</title>";
  FW_pO "<meta charset=\"$FW_encoding\">"; # Forum 28666
  FW_pO "<meta name=\"apple-mobile-web-app-capable\" content=\"yes\"/>";
...

Aber das ist ja eher unschön. Gibt's da andere Wege?
Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

Offline mchilli

  • Jr. Member
  • **
  • Beiträge: 74
  • whoami?
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #2 am: 30 März 2019, 06:35:28 »
Hey, du kannst auch über Javascript Zeilen nachträglich in den Header schreiben, ist jedenfalls eleganter als im Modul was zu ändern.

https://stackoverflow.com/questions/1900874/how-to-add-anything-in-head-through-jquery-javascript
Mehr als 3, der eine macht das, der andere was ganz anderes und einer was ganz ähnliches, was ein anderer auch machen soll.

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #3 am: 30 März 2019, 07:11:30 »
Aber wo füge ich das JAvaScript ein - also in welche Datei schreibe ich den Code?
Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

Offline mchilli

  • Jr. Member
  • **
  • Beiträge: 74
  • whoami?
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #4 am: 30 März 2019, 15:11:12 »
Floorplan hat auch das Attribut "JavaScripts", wo du eigene Scripte zusätzlich laden kannst.

Heißt: Du erstellst dir eine *.js Datei im FHEM Ordner "www" und trägst sie in das attr ein.

In dieses Script kannst du dann all deinen Javascript Code einfügen!
Mehr als 3, der eine macht das, der andere was ganz anderes und einer was ganz ähnliches, was ein anderer auch machen soll.

Offline Invers

  • Hero Member
  • *****
  • Beiträge: 1818
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #5 am: 30 März 2019, 16:05:18 »
Bei Apple weiss ich es nicht genau, ob das auch geht, aber bei Android mache ich das mit Chrome so, dass ich die betreffende Seite anzeige und dann im Menü "zum Startbildschirm zufügen" klicke. Dadurch wird ein Icon auf dem Bildschirm des Tabs abgelegt.
Wenn ich über dieses Icon starte, dann ist alles so, wie du es dir gerade gewünscht hast.
Früher ging das auch mal mit Firefox, aber jetzt offenbar nicht mehr. Weiss nicht, warum. Die früher erzeugten Links funktionieren nach wie vor noch.
Vielleicht geht das ja mit Apple auch.
Pi3B Stretch | F.-Box 7490 | CUL 433 | CUL 868 | SDuino + Siro Rollos | HM-LAN | 12 x Dect200 | 5 x TX3TH | 3 x Heizung FHT + Fensterkont. | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkontakt TFK-TI | HM-Bew.-Melder aussen + innen | 3 x Smokedet. HM-SEC-SD-2 | SAT Gigablue quad+ |

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #6 am: 01 April 2019, 21:46:35 »
Floorplan hat auch das Attribut "JavaScripts", wo du eigene Scripte zusätzlich laden kannst.

Heißt: Du erstellst dir eine *.js Datei im FHEM Ordner "www" und trägst sie in das attr ein.

In dieses Script kannst du dann all deinen Javascript Code einfügen!

ich habe das jetzt probiert, und eine eigene Javascript-Datei abgelegt.
Sie wird vermutlich auch geladen. Im Chrome kann ich zumindest beim Netzwrrktraffic sehen, dass sie geladen wird.
Wie bekomme ich denn jetzt aber das Script ausgeführt? Ich habe scho ein paar Varianten probiert, aber das scheint nichts zu bringen:
var sMeta;
sMeta = document.createElement('meta');
sMeta.name = 'apple-mobile-web-app-capable';
sMeta.content = 'yes';
document.getElementsByTagName('head')[0].appendChild(sMeta);

 window.onload = function () {
window.alert("Hallo Welt!");
var sMeta;
sMeta = document.createElement('meta');
sMeta.name = 'apple-mobile-web-app-capable';
sMeta.content = 'yes';
document.getElementsByTagName('head')[0].appendChild(sMeta);
}
Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

Offline mchilli

  • Jr. Member
  • **
  • Beiträge: 74
  • whoami?
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #7 am: 02 April 2019, 10:13:28 »
warum denn nicht einfach so?

$('head').append('<meta name="apple-mobile-web-app-capable" content="yes">'+
                 '<meta name="apple-mobile-web-app-status-bar-style" content="black">');
Mehr als 3, der eine macht das, der andere was ganz anderes und einer was ganz ähnliches, was ein anderer auch machen soll.

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #8 am: 02 April 2019, 10:17:20 »
Das kann ich direkt so in meine JavaScript Datei schreiben?
Und dann würde das funktionieren?
Oder ist das nur eine andere Schreibweise für meinen Ansatz, der leider nicht den gewünschten Erfolg bringt?
Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

Offline mchilli

  • Jr. Member
  • **
  • Beiträge: 74
  • whoami?
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #9 am: 02 April 2019, 10:39:53 »
Deine Schreibweise ist reiner Javascript Code und meine JQuery Code.

Also ich kann dir nur sagen das es bei mir so funktioniert, hab bei mir auch den meta tag im head stehen.
Mehr als 3, der eine macht das, der andere was ganz anderes und einer was ganz ähnliches, was ein anderer auch machen soll.

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #10 am: 04 April 2019, 21:24:59 »
Ich schein mich zu blöd anzustellen.

myFloorplan.js (Ordner: opt/fhem/www):
$('head').append('<meta name="apple-mobile-web-app-capable" content="yes">'+'<meta name="apple-mobile-web-app-status-bar-style" content="black">');
fhem.cfg:
...
define Erdgeschoss FLOORPLAN
attr Erdgeschoss JavaScripts myFloorplan.js
attr Erdgeschoss fp_arrange 0
attr Erdgeschoss fp_noMenu 1
attr Erdgeschoss room Floorplans

Trotz neustart des kompletten Systems, erscheint weiterhin auf dem iPad und iPhone die Adresszeile und Statuszeile.
Was mache ich denn falsch?
Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

Offline mchilli

  • Jr. Member
  • **
  • Beiträge: 74
  • whoami?
Mehr als 3, der eine macht das, der andere was ganz anderes und einer was ganz ähnliches, was ein anderer auch machen soll.

Offline stobor

  • Full Member
  • ***
  • Beiträge: 407
Antw:Floorplan wie eine App öffnen (Full Screen Mode)
« Antwort #12 am: 05 April 2019, 15:54:47 »
Komisch ist nur, dass meine Änderungen in der 95_FLOORPLAN.pm den gewünschten Erfolg brachten:


Zum Ausprobieren habe ich mal testweise die 95_FLOORPLAN.pm verändert:

...
FP_htmlHeader($) {
  my $title = shift;
  $title = "FHEM floorplan" if (!$title);
  ### Page start
  $FW_RET = "";
  $FW_RET .= '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'."\n";
  $FW_RET .= '<html xmlns="http://www.w3.org/1999/xhtml">'."\n";
  FW_pO "<head root=\"$FW_ME\">\n<title>$title</title>";
  FW_pO "<meta charset=\"$FW_encoding\">"; # Forum 28666
  FW_pO "<meta name=\"apple-mobile-web-app-capable\" content=\"yes\"/>";
...

Aber das ist ja eher unschön. Gibt's da andere Wege?
Intel NUC mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM
FS20: 1x PIRI-2, 6x PIRA, 9x ST-3, 2x DI-5, 2x HMS 100 TF, 1x FS20SM8, 1x FS20SI3
1x FS20SR, 1x FS20S20, 1x FS20S6A
HM: 1x CCU-2, 14x Fensterkontakte, 9x Heizkörperthermostate, 1x Wandthermostat

 

decade-submarginal