Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Diese smartVISU-Lösung habe ich nun auf den aktuellen (2.8)-Stand gebracht. Kompliment! Nur für den Kalender das ICAL eingefügt, sonst alles bestens!
Nur beiim ersten Aufruf der Visu ist das Haussymbol nicht vorhanden, nach jeder Wechsel über Index2 ist das Symbol verhanden!
Ebenso feht nach dem Aufruf über das Werkzeugsymbol in der Service-Maske das entsprechende Symbol.
Es wird jeweils die *.svg im icons/or gesucht! image_52981.jpg
Service
image_52982.jpg
Sobald ich diese svg iin das or-Verzeichnis kopiere, geht alles richtig!
Ist das mit dem Index2 noch notwendig?
Wo steckt der Verweis auf /icons/or?
Zuletzt geändert von schloessl; 27.09.2016, 10:06.
was machen wir jetzt mit dem Skript?
Wenn wir die SV so veröffentlichen kommen danach zig Fragen von Profis wie mir, die an der Umstellung scheitern.
Konkrete Fragen:
1) ist mein bisheriges Skript soweit ok, oder muss was geändert werden?
2) nach welcher Regel identifiziere ich die Elemente, bei denen ich dies machen muss?
Leider ist es nicht ganz so einfach. Folgendes wäre z.B. möglich:
Es sind noch andere Attribute im img-Tag.
Die Reihenfolge der Attribute ist umgekehrt.
Weitere CSS-Klassen sind im class-Attribut.
Irgendwo sind 2 Leerzeichen nacheinander oder andere Whitespaces verwendet.
Tags oder Attribute sind in Grossbuchstaben.
Es wurden ' anstelle von " verwendet.
Und dies sind erst die in HTML validen Möglichkeiten, welche mir so einfallen. Es gibt sicher noch weitere, welche in toleranten Browsern funktionieren.
Folgendes könnte dies abdecken.
Aber Achtung: Es ist ungetestet und ich kenne mich mit sed nicht aus, nur mit RegEx im Allgemeinen.
Code:
sed -i 's/(<img[:space:][^>]*class=)("[^"]*icon)((["\']|[:space:])[^>]*src=["\']){{[:space:]*icon1[:space:]*}}/\1\2 icon1\3{{ icon }}/gi' *.html
sed -i 's/(<img[:space:][^>]*class=)(\'[^\']*icon)((["\']|[:space:])[^>]*src=["\']){{[:space:]*icon1[:space:]*}}/\1\2 icon1\3{{ icon }}/gi' *.html
sed -i 's/(<img[:space:][^>]*src="{{[:space:]*icon[:space:]*}}[^"]*\.)png(["?])|/\1svg\2/gi' *.html
sed -i 's/(<img[:space:][^>]*src=\'{{[:space:]*icon[:space:]*}}[^\']*\.)png([\'?])|/\1svg\2/gi' *.html
Damit sind aber die verschiedenen Farben auch noch nicht umgesetzt.
Deine zweite Zeile, welche jedes .png durch .svg ersetzt halte ich für sehr riskant. Man kann ja durchaus neben den Icons auch andere PNG in den Visu-Pages haben.
Nachtrag:
Ich habe eben festgestellt, dass der zweite Punkt nicht erfüllt wird. Dazu müssten die beiden ersten Zeilen nochmal mit umgekehrter Attributreihenfolge formuliert werden.
Zuletzt geändert von smai; 26.09.2016, 22:33.
Grund: Nachtrag
Hallo,
hat niemand eine Idee zur Frage in Beitrag 32?
Jegliche Suche nach "icons/or" in meinen Sourcen brachte hein Ergebnis?
Wo kann ich noch forschen?
NG-Master (letzter Stand), VISU (Master)
Danke smai
für Deinen Hinweis. Ich arbeite mit "night".
EinTest mit "ICE" brachte ein ähnliches Ergebnis. Das Servic e.svg wird jetzt unter icons/bl gesucht.
Wo kann ich testweise ändern?
Wo wird icons/xx modifiziert ?
Ich arbeite mit smartVISU-Master gezogen am 24.09.
Ich suche vorerst einmal in /designs.
Aber ich glaube hier muss noch einmal ein Profi ran.
Leider kenne ich mich auch nicht gut genug aus, nehme aber an, dass ein Zeichen escaped werden muss.
Damit sind aber die verschiedenen Farben auch noch nicht umgesetzt.
Was meinst du damit? Es sollte doch möglich sein, wenigstens die alte Funktionalität (z.B. Weiss/Orange) wieder herzustellen.
Deine zweite Zeile, welche jedes .png durch .svg ersetzt halte ich für sehr riskant. Man kann ja durchaus neben den Icons auch andere PNG in den Visu-Pages haben.
Das stimmt natürlich. Ich habe kurz gesucht, ob man sed dazu bringen kann, vor dem ersetzen nachzufragen. Das geht aber nicht.
Man könnte den Nutzer vor diesem Schritt fragen.
BTW: Würden deine RegEx auch funktionieren, wenn ein Zeilenumbruch im Tag enthalten ist?
schloessl sorry, hatte deinen Beitrag vorher übersehen.
Was du beschreibst passt genau zum {{ icon1 }}, hast du mal danach gesucht?
Dies wird direkt in der index.php, Zeilen 62 bis 76 definiert.
Das ist sicher nicht sonderlich schön, aber durch die SVG-Umstellung wird das Macro {{ icon1 }} eh nicht mehr benötigt und kann in einer späteren Version entfernt werden.
Hallo,
ich hab jetzt auch auf 2.8 umgestellt, einschließlich des UZSU Widgets V5.0. Hier ein kurzer Erfahrungsbericht.
Um die händische Änderung der Icons auf .svg kommt man wohl nicht herum. Eine etwas ausführlichere Erklärung im Wiki wäre klasse. Bei dem Widget "Basic.dual" musste ich ohne Anleitung erst mal experimentieren. Man muss hier 2x das gleiche Icon eingeben, wenn man nicht beim aktiven Zustand das Default-Icon sehen möchte.
Aus
Wichtig wäre auch noch eine Angabe, was die richtige Protokollversion für SmarthomeNG ist. Bei mir erwartet SmarthomeNG die Version 3, während Smartvisu die Version 4 verwendet. Ich habe den Smarthome-Treiber von Smartvisu umgestellt, indem ich in der Datei .../smartvisu/driver/io_smarthome.py.js den Eintrag auf
Code:
version: 3
abgeändert habe. Ebenso in .../smartvisu/driver/io_smarthome.py.min.js
Beim Umstellen von SmarthomeNG auf das passende sqlite-Plugin tritt ein Fehler auf. Im Wiki und im Forum steht geschrieben, man solle das Plugin auf "plugins.sqlite_visu_28" umstellen. In SmarthomeNG heißt das aber "plugins.sqlite_visu2_8". Nach Korrektur sind die Fehlermeldungen weg, aber die Plots für Speicher, Prozessorlast etc. auf der Übersichtsseite für Smarthome sind leer (auch nach Reboot). Mit dem alten sqlite-Plugin waren die übrigens auch unter Smartvisu 2.8 noch in Ordnung.
Das UZSU-widget funktioniert auf Anhieb problemlos.
Der Umstieg lohnt sich auf jeden Fall. Die Performance hat sich deutlich verbessert und ist richtig klasse. Vielen Dank für die unermüdliche Arbeit!
Gruß Wolfram
Nachtrag:
hab noch mal gesucht und die Protokollversion im Treiber auf 4 zurück gestellt. Dafür bei SmarthomeNG in der plugin.conf im Abschnitt [visu] ein
Code:
wsproto = 4
ergänzt. Die Plots bleiben trotzdem leer.
Zuletzt geändert von wvhn; 03.10.2016, 22:56.
Grund: Nachtrag
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar