NEWS
HTML Tabelle für ical Adapter (mehrere Instanzen)
-
@Scrounger (table widget)
hi -könntest du uns einen ipp geben, wie wir es hinbekommen, dass die erste spalte immer alles anzeigt - und die anderen spalten nicht so viel platz bekommen - habe rumprobiert - bekomme es nicht hin
-
Ich hab noch etwas experimentiert.
Die Lösung liegt tatsächlich in der Konfiguration der Tabelle.
Wenn man die Spaltenbreite bei allen angibt, und der Wert unter CSS allgemein dazu passt, wird die Tabelle auch entsprechend aufgeteilt.
Das hat bei mir aber erst funktioniert, nachdem ich "feste Tabellenüberschrift" aktiviert hatte.Ergebnis in der Runtime:
Die Farbe für "Heute" muss noch etwas heller werden - dann ist's genau so, wie ich mir das vorgestellt hatte
-
@hausbaer sagte in HTML Tabelle für ical Adapter (mehrere Instanzen):
feste tabellenüberschrift muss nicht zwingend aktiv sein. Aber er muss eine feste breite für die spalte definiert werden und
kein Zeilenumbruch
aktiviert sein. -
@hausbaer dann paßt ja alles -die farbe einzustellen ist ja kein problem
@scrounger - hat sich erledigt
-
@scrounger feste breite - dachte ich auch - hat aber nix geändert - bei dem beispiel ist die erste spalte mit 300 eingegeben
erst das mit der festen tabellenüberschrift hat den erfolg gebracht
-
@liv-in-sky
mhh ok, dann wird es in der kommenden v0.5.x nicht mehr notwendig sein, das feste tabellenüberschrift an sein muss -
du kannst für die überschriften bestimmte zeichen einfügen - und für bestimmte , "gefilterte" einträge - aber nicht für alle einträge für einen kalender - das ginge nur, wenn du schon im kalender das symbol einfügst
nur übrschriften:
das sind html-codes für sonderzeichen: siehe : https://unicode-table.com/de/2A3B/ oder emojis: https://emojiterra.com/de/
alle einträge geht nur so:
-
gebutstage sind eigentlich nicht teil des google kalenders sondern werden in google kontakte verwaltet.
mit diesem script https://www.smarthomejetzt.de/die-geburtstage-der-apple-und-android-kontakte-in-einem-kalender-in-der-vis-oberflaeche-auf-iobroker-anzeigen/
konnte ich die geburtstage in den ical bekommen. danach kann man in der ical instanz diesen neuen kalender dazufügen oder eine neue instanz anlegen - in dem script, welches verwendet wird, werden keine jahresdaten übergeben, daher kann auch kein alter berechnet werden.
aber immerhin, kannst du so die geburtstage in den kalender bekommen -
Wie bekommt man die Icons in einer reihe dargestellt???
Hast du vielleicht eine Idee?//HIER DIE SPALTEN ANZAHL DEFINIEREN - jede Spalte einen Wert - in diesem Beispiel sind es 4 var htmlFeld1='Termine'; var Feld1lAlign="left"; // überschrift Tabellen Spalte1 und Ausrichtung left,right or center var htmlFeld2='⏰'; var Feld2lAlign="center"; // überschrift Tabellen Spalte2 und Ausrichtung left,right or center var htmlFeld3='📆'; var Feld3lAlign="center"; // überschrift Tabellen Spalte3 und Ausrichtung left,right or center var htmlFeld4='📆'; var Feld4lAlign="center"; // überschrift Tabellen Spalte4 und Ausrichtung left,right or center var htmlFeld5='⏳'; var Feld5lAlign="center"; // überschrift Tabellen Spalte5 und Ausrichtung left,right or center //-----------------------------------
//NICHTS ÄNDERN - abhängig von den oben definierten _Spalten - in diesem Beispiel sind es 5 var htmlTabUeber2="<td width="+htmlSpalte1Weite+" align="+Feld1lAlign+"> "+htmlFeld1+" </td><td align="+Feld2lAlign+"> "+htmlFeld2+" </td><td align="+Feld3lAlign+"> "+htmlFeld3+" </td><td align="+Feld4lAlign+"> "+htmlFeld4+" </td><td align="+Feld5lAlign+"> "+htmlFeld5+" </td>"; var htmlTabUeber2_1="<td width="+htmlSpalte1Weite+" align="+Feld1lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\"> "+htmlFeld1+" </td><td align="+Feld2lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\"> "+htmlFeld3+ " </td><td align="+Feld3lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\"> "+htmlFeld3+" </td><td align="+Feld4lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\"> "+htmlFeld4+ " </td><td align="+Feld5lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\"> "+htmlFeld5+" </td>"; //------------------------------------------------------
Vielen Dank
Gruß Rene
-
@rene-r du brauchst mehr breite - das html widget breiter machen oder im script setting unter breite erhöhen
-
Ahh danke habt es geschafft
-
@liv-in-sky Hallo! erst mal Danke für dies Tabellenscript. es funktioniert bei mir seit langem.
da aber bei mir einige ganztägige Ereignisse vom ical adapter als 02:00 bis 0:00 ausgewertet werden also nicht mehr ganztägig , habe ich da im cal da jetzt fixes eingebaut wurden mal eine beta version des ical getestet. mit Versionen ab ical 1.10. gibt dein script folgenden Fehler aus:10:55:48.110 error javascript.0 (890) script.js.System.Verwaltung.Tabelle_für_ical_mehre_Instanzen: TypeError: Cannot read property 'includes' of undefined 10:55:48.110 error javascript.0 (890) at writeHTML (script.js.System.Verwaltung.Tabelle_für_ical_mehre_Instanzen:441:64) 10:55:48.111 error javascript.0 (890) at script.js.System.Verwaltung.Tabelle_für_ical_mehre_Instanzen:856:2 10:55:48.111 error javascript.0 (890) at script.js.System.Verwaltung.Tabelle_für_ical_mehre_Instanzen:1194:3
ich bin auf die 1.9.3 des ical zurück und das script funktioniert wieder.
der Trashadapter wurde auch angepasst und funktionier auch mit versionen über 1.10.
es muß wohl eine erhebliche Änderung im ical adapter geben. aber ich hab von adaptern keine Ahnung, kann sie nur anwenden...
Gruß aus HH -
habe ich gerade selbst getestet - im script muss eine zeile geändert werden, damit es erstmal wieder läuft - habe aber noch nicht alles getestet
die änderung ist eine zeile :
let myDpInput=JSON.parse((getState(dpTSJson[i]).val));
das liegt an der datenpunktänderung im adapter - es wurde von object auf json-txt umgestellt - mit JSON.parse wird erstmal wieder der datenpunkt lesbar für das script
-
@liv-in-sky hab die Zeile gefunden bei mir war es 387 und geändert:
bin wieder auf die 1.11.1 aber es kommt noch folgender Fehlertext
388 ist deine neue Zeile
zeilen 845 bis 865 als code. 857 ist das zweite writeHTML()::
mein script endet bei 1194 1195 gibt es nicht.
aber es drängt ja keine Zeit ich gehe erst mal dieder auf 1.9 zurück und werde die nächsten Tage/Wochen beobachten was sich tut. -
du hast sicherlich das script mit firefox runter-kopiert - nimm dazu den chromebrowser - der ff fügt immer viele leerzeichen ein, danach ist die fehlersuche schwierig und es kommt auch zu fehlern
probier nach dem neuanlegen und neukopieren des scriptes nochmal mit deinen setting - ob es dann läuft
-
@liv-in-sky so jetzt hab ich wieder zeit. hab dein Script von ganz oben jetzt mit chrome kopiert und als neues script angelegt. dann meine datenfelder eingetragen.
in meinem script ist es zeile 195 in deinem anderen post war es bei dir 202. aber ich hab es zeilennummernweise verglichen. die 195 durch die neue ersatzt.
aber es kommt wieder der gleiche Fehler:
195 ist wie gesagt die neue Zeile
427 ist wieder das 2. write html
und die letzte zeilennummer ist 596
kann es irgendwie an meinen Datenpunkten liegen. die habe zwar alle mit der alten version funktioniert- -
kannst du mal den datenpunkt inhalt (state) posten - von dem ical table datenpunkt ( ical.0.data.table )
falls du deine kalender daten nicht posten willst, kannst du dir die daten mal im online checker ansehen
wenn da ein fehler drin ist, wäre das wissenswerthttps://jsoneditoronline.org/#left=local.xeliso&right=local.nokifi
ODER:
kann es sein, daß du mehrere ical instanzen eingetragen hast und ein kalender leer ist ?
wenn ja- teste mal mit nur einem eintrag
let dpTSJson=["ical.0.data.table"];
-
@liv-in-sky Jo! das wars. ich hatte noch nen ical.1 mit drin. ich hab für müll ical .0 für google ical1 und für meinen MS Outlook export ical2. hab ical1 jetzt raus und es kommt kein Fehler mehr.
Damke!! -
@liv-in-sky ahoi!
heute wieder alles auf latest aktualisiert.
nachdem ich da im protokoll öfter shelly_tabelle lese, frag ich mal...javascript.0 2021-08-01 01:45:00.032 error at processTimers (internal/timers.js:497:7) javascript.0 2021-08-01 01:45:00.031 error at listOnTimeout (internal/timers.js:554:17) javascript.0 2021-08-01 01:45:00.031 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7) javascript.0 2021-08-01 01:45:00.031 error at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28 javascript.0 2021-08-01 01:45:00.031 error at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15) javascript.0 2021-08-01 01:45:00.031 error at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34) javascript.0 2021-08-01 01:45:00.031 error at Object.<anonymous> (script.js.common.Diverses.Shelly_Tabelle:358:2) javascript.0 2021-08-01 01:45:00.031 error at writeHTML (script.js.common.Diverses.Shelly_Tabelle:175:22) javascript.0 2021-08-01 01:45:00.030 error at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:819:29) javascript.0 2021-08-01 01:45:00.030 error at script.js.common.Diverses.Shelly_Tabelle:188:37 javascript.0 2021-08-01 01:45:00.028 error Error in callback: TypeError: val[3].replace is not a function javascript.0 2021-08-01 01:30:00.094 error at processTimers (internal/timers.js:497:7) javascript.0 2021-08-01 01:30:00.094 error at listOnTimeout (internal/timers.js:554:17) javascript.0 2021-08-01 01:30:00.094 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7) javascript.0 2021-08-01 01:30:00.094 error at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28 javascript.0 2021-08-01 01:30:00.094 error at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15) javascript.0 2021-08-01 01:30:00.094 error at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34) javascript.0 2021-08-01 01:30:00.094 error at Object.<anonymous> (script.js.common.Diverses.Shelly_Tabelle:358:2) javascript.0 2021-08-01 01:30:00.094 error at writeHTML (script.js.common.Diverses.Shelly_Tabelle:175:22) javascript.0 2021-08-01 01:30:00.094 error at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:819:29) javascript.0 2021-08-01 01:30:00.094 error at script.js.common.Diverses.Shelly_Tabelle:188:37 javascript.0 2021-08-01 01:30:00.093 error Error in callback: TypeError: val[3].replace is not a function javascript.0 2021-08-01 01:15:00.035 error at processTimers (internal/timers.js:497:7) javascript.0 2021-08-01 01:15:00.035 error at listOnTimeout (internal/timers.js:554:17) javascript.0 2021-08-01 01:15:00.035 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7) javascript.0 2021-08-01 01:15:00.035 error at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28 javascript.0 2021-08-01 01:15:00.034 error at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15) javascript.0 2021-08-01 01:15:00.034 error at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34) javascript.0 2021-08-01 01:15:00.034 error at Object.<anonymous> (script.js.common.Diverses.Shelly_Tabelle:358:2) javascript.0 2021-08-01 01:15:00.033 error at writeHTML (script.js.common.Diverses.Shelly_Tabelle:175:22) javascript.0 2021-08-01 01:15:00.033 error at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:819:29) javascript.0 2021-08-01 01:15:00.033 error at script.js.common.Diverses.Shelly_Tabelle:188:37 javascript.0 2021-08-01 01:15:00.031 error Error in callback: TypeError: val[3].replace is not a function
-
bist aber im falschen thread - gehört das zu der shelly html tabelle
val[3].replace is not a function
schaut sehr nache einer tabelle von mir aus - da ich keinen shelly adapter nutze wird es schwierig mit der fehlersuche - hast du den shelly adapter upgedatet ?
richtiger thread? https://forum.iobroker.net/topic/42903/html-tabelle-für-shelly-device-übersicht?page=1
kann es sein, dass du eine sonderanfetigung des scriptes hast