smartVISU - Widget Vorstellung

Begonnen von chris1284, 08 Februar 2015, 14:24:49

Vorheriges Thema - Nächstes Thema

chris1284

Da man sich aktuell aus 2 Themen die Widgets zusammen suchen muss würde ich ein Widget Thema starten. Ziel ist eine Sammlung von SmartVisu Widgets. Wenn es nicht geünscht ist einfach Löschen den Post :-)

Ich fang mal mit einem Weather Yahoo-Widget auf basis des Fhem-Modules "Weather" an (das Umlaute-Problem ist ja bekannt):
- Anpassung visu.js:

// ----- mybasic.yahooimage ----------------------------------------------------------
$(document).delegate('[data-widget="mybasic.yahooimage"]', {
'update': function (event, response) {
$('#' + this.id).html('<img class="icon" src="icons/weather/' + response + '.png" style="width:50%;height:50%" >');
}
});

- mybasic.html im Anhang in euren page-Ordner kopieren.
- widget_weather_yahoo.html im Anhang in euren page-Ordner kopiere.
- Einbau auf eurer Seite per
{% import  "widget_weather_yahoo.html" as weather %}
es kann dann für die aktullen Wetterdaten so auferufen werden:
{{ weather.weather_current("weather_yahoo") }}
weather_yahoo = id
und für den forecast so, wobei 1 = fc1, 2= fc2, 3 = fc3 usw.

{% set fcs = [1, 2, 3, 4, 5] %}
{{ weather.weather_forecast("weather_yahoo", fcs) }}

weather_yahoo = id, fcs = variable mit den zahlen
- den Ordner mit den FHEM-Icons /opt/fhem/www/images/default/weather  nach smartVISU/icons/weather kopieren.

Ihr könnt den Pfad zum Iconordner einfach im src Teil in visu.js anpassen falls ihr andere verwendet, smartVISU bringt ja glaube ich auch Wetterbilder...

dancatt

Cubietruck: FHEM-Server 6.0

Homematic: HM-USB-CFG2, HM-CFG-LAN, HM-LC-SW1-FM, HM-LC-Sw1-Pl-DN-R1, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-SC-2, HM-SEC-SD, HM-PB-6-WM55

marvin78

@bgewehr: Ich sehe, du hast dein SELECT-Widget im git von hermannj eingepflegt. Leider kann es nur 10 Einträge aufnehmen. Es wäre schön, wenn du es durch das hier ersetzen könntest:


{% macro selectmenu(id, gad, items, label) %}
<div align="center">
        <label for="{{ uid(page, id) }}" class="select">{{ label }}</label>
<select id="{{ uid(page, id) }}" data-widget="basic.selectmenu" data-item="{{ gad }}" data-native-menu="false" data-placeholder="false" />
{% for item in items %}
            <option>{{ item }}</option>
                {% endfor %}
</select>
</label>
    </div>
{% endmacro %}


Das ist deutlich universeller einsetzbar und kann auch mit mehr als 10 Einträgen umgehen. Der Javascript Teil bleibt gleich.

Verwendet wird es dann so:

{{ basic.selectmenu(id,gad,['Select 1','Select2','Select 3',...,'Select N'],'LABEL') }}

Cybers

Zitat von: chris1284 am 08 Februar 2015, 14:24:49
Da man sich aktuell aus 2 Themen die Widgets zusammen suchen muss würde ich ein Widget Thema starten. Ziel ist eine Sammlung von SmartVisu Widgets. Wenn es nicht geünscht ist einfach Löschen den Post :-)

Ich fang mal mit einem Weather Yahoo-Widget auf basis des Fhem-Modules "Weather" an (das Umlaute-Problem ist ja bekannt):
- Anpassung visu.js:

// ----- mybasic.yahooimage ----------------------------------------------------------
$(document).delegate('[data-widget="mybasic.yahooimage"]', {
'update': function (event, response) {
$('#' + this.id).html('<img class="icon" src="icons/weather/' + response + '.png" style="width:50%;height:50%" >');
}
});

- mybasic.html im Anhang in euren page-Ordner kopieren.
- widget_weather_yahoo.html im Anhang in euren page-Ordner kopiere.
- Einbau auf eurer Seite per
{% import  "widget_weather_yahoo.html" as weather %}
es kann dann für die aktullen Wetterdaten so auferufen werden:
{{ weather.weather_current("weather_yahoo") }}
weather_yahoo = id
und für den forecast so, wobei 1 = fc1, 2= fc2, 3 = fc3 usw.

{% set fcs = [1, 2, 3, 4, 5] %}
{{ weather.weather_forecast("weather_yahoo", fcs) }}

weather_yahoo = id, fcs = variable mit den zahlen
- den Ordner mit den FHEM-Icons /opt/fhem/www/images/default/weather  nach smartVISU/icons/weather kopieren.

Ihr könnt den Pfad zum Iconordner einfach im src Teil in visu.js anpassen falls ihr andere verwendet, smartVISU bringt ja glaube ich auch Wetterbilder...


Hallo,
ich bekomme das ganze nicht zum laufen. Bei mir werden nur die blauen Rahmen und die Einheiten zu den einzelnen Werten angezeigt. Es werden scheinbar keine Werte eingelesen und demnach auch nicht angezeigt.
Für weather_yahoo muß ich doch meine Yahoo-Weather-Id-Nummer eingeben oder nicht.

Gruß, Sascha
FHEM 6.2 auf Raspberry PI 4 / Smartvisu
Eltako Serie 14: FAM14, FGW14-USB, FSB14, FSR14-4x, FSR14-2x, FDG14, FTS14-EM in Kombination mit Jung F50 24V Tastern
1-Wire Temperatursensoren
aus alter Zeit:
Gott sei Dank nur noch 3 Homematic Jalousie- & Schaltaktoren! Wer sich mit Funk auskennt, legt Kabel

Jojo11

Zitat von: marvin78 am 13 Februar 2015, 07:14:16
@bgewehr: Ich sehe, du hast dein SELECT-Widget im git von hermannj eingepflegt. Leider kann es nur 10 Einträge aufnehmen. Es wäre schön, wenn du es durch das hier ersetzen könntest:


{% macro selectmenu(id, gad, items, label) %}
<div align="center">
        <label for="{{ uid(page, id) }}" class="select">{{ label }}</label>
<select id="{{ uid(page, id) }}" data-widget="basic.selectmenu" data-item="{{ gad }}" data-native-menu="false" data-placeholder="false" />
{% for item in items %}
            <option>{{ item }}</option>
                {% endfor %}
</select>
</label>
    </div>
{% endmacro %}


Das ist deutlich universeller einsetzbar und kann auch mit mehr als 10 Einträgen umgehen. Der Javascript Teil bleibt gleich.

Verwendet wird es dann so:

{{ basic.selectmenu(id,gad,['Select 1','Select2','Select 3',...,'Select N'],'LABEL') }}

Hallo Marvin,

habe mal das alte gegen Dein selectmenu ausgetauscht. Funktioniert soweit ganz gut und man erspart sich die Tipperei bei mehreren Feldern. Allerdings habe ich auch damit das Problem, dass führende Nullen abgeschnitten werden (wie hier beschrieben: http://forum.fhem.de/index.php/topic,33231.msg337653.html#msg337653). Hast Du eine Idee, wie sich das verhindern lässt? Ich würde gerne "00", "01" usw. übergeben.

Was mir auch aufgefallen ist: Sowohl die alte als auch Deine Version haben eine Begrenzung. Mehr als 32 Einträge werden nicht angezeigt. Lässt sich das erweitern?

schöne Grüße
Jo

marvin78

@führende Null: verwendest du Anführungszeichen? Probiere mal doppelte

@32 Optionen: Ich habe keine Ahnung, warum das so ist. Könnte an Twig oder smartVISU liegen. Generell sollte es kein Limit geben.

Norbert_G

Hallo Allerseits,

ich habe das Modul in mein smartvisu eingebaut, eigentlich läuft alles perfekt, aber leider werden keine Icons angezeigt. Selbst ein direkter Verweis auf den Ordner im visu.js hat nicht geholfen. Kann mir jemand einen Tip geben, was man im GAD einstellen muss?.

Danke im Voraus

Norbert
Cubietruck, HM über HMLAN und HMUSB, 1-wire, IPCAMs, Visualisierung über smartVISU

dev0

Ich benutze das Widget nicht, aber haben die Icons die richtigen file permissions? Die Seite schon mal mit Firebug o.ä. untersucht?

reiphi

Zitat von: Norbert_G am 02 Dezember 2015, 21:53:58
Hallo Allerseits,

ich habe das Modul in mein smartvisu eingebaut, eigentlich läuft alles perfekt, aber leider werden keine Icons angezeigt. Selbst ein direkter Verweis auf den Ordner im visu.js hat nicht geholfen. Kann mir jemand einen Tip geben, was man im GAD einstellen muss?.

Danke im Voraus

Norbert

Hallo Norbert_G,

ist zwar schon etwas her, aber konntest du das Problem mit den Icons lösen?
Bei mir werden leider auch keine angezeigt.

Danke!
Philipp