Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Material Design Widgets: Table Widget

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

Material Design Widgets: Table Widget

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
95 Beiträge 33 Kommentatoren 17.6k Aufrufe 38 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • sigi234S sigi234

    @Scrounger

    Hallo, kann man die Überschrift beim scrollen dauerhaft einblenden?

    Erledigt.

    ScroungerS Offline
    ScroungerS Offline
    Scrounger
    Developer
    schrieb am zuletzt editiert von
    #64

    @sigi234
    Feste Tabellenüberschrift aktivieren

    <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

    <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      DevChannel-de
      schrieb am zuletzt editiert von
      #65

      @Scrounger
      Hallo, ich versuche pro Tabellenzeile weitere Details anzuzeigen, die nach einer User-Interaktion ge-triggered werden . Momentan habe ich es mir so vorgestellt, dass in jeder Zeile ein Button angezeigt wird oder aber der User direkt auf die gesamte Zeile klicken kann und dann wird ein Dialog mit weiteren Details, die zu dieser Zeile gehören, angezeigt.
      Prinzipiell würde z.B. das "jqui - HTML - Dialog"-Widget die Anforderung erfüllen, allerdings müsste ja solches Nicht-MD-Widget in die JSON-Struktur kommen... Hast Du einen Tipp für mich, wie ich das umsetzen könnte?
      Danke im Voraus :-)

      1 Antwort Letzte Antwort
      0
      • ScroungerS Scrounger

        Ab version 0.3.13 kann man jetzt verschiedene Widgets per json string in die Zellen der Tabelle packen.

        table_control_example.gif

        alle infos wie das ganze funktioniert findet ihr in der Doku:
        https://github.com/Scrounger/ioBroker.vis-materialdesign#control-elements

        Json String vom oberen Beispiel:

        [
        	{
        		"col_1": "Button Toggle",
        		"col_2": {
                        	"type": "buttonToggle_vertical",
                        	"width": "102px",
                        	"height": "67px",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"buttonStyle": "raised",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "top",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"buttontext": "off",
                        	"labelTrue": "on",
                        	"colorBgTrue": "#ffffff",
                        	"image": "access-point-network-off",
                        	"imageTrue": "access-point-network",
                        	"imageColor": "#c70000",
                        	"iconHeight": "36",
                        	"lockEnabled": true,
                        	"imageTrueColor": "#36fa29",
                        	"labelColorTrue": "#000000",
                        	"lockIconColor": "#000000"
                        },
        		"col_3": {
                        	"type": "buttonToggle",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"buttonStyle": "raised",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "left",
                        	"autoLockAfter": "10",
                        	"lockFilterGrayscale": "30",
                        	"buttontext": "off",
                        	"labelTrue": "on",
                        	"image": "access-point-network-off",
                        	"imageColor": "#c70000",
                        	"imageTrue": "access-point-network",
                        	"colorBgTrue": "#a2bc9f",
                        	"imageTrueColor": "#36fa29"
                        },
        		"col_4": {
                        	"type": "buttonToggle_icon",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "45",
                        	"lockIconLeft": "55",
                        	"lockIconSize": "20",
                        	"lockIconColor": "red",
                        	"lockFilterGrayscale": "30",
                        	"image": "access-point-network-off",
                        	"imageColor": "#c70000",
                        	"imageTrue": "access-point-network",
                        	"colorBgTrue": "#a2bc9f",
                        	"imageTrueColor": "#000000"
                        }
        	},
        	{
        		"col_1": "Checkbox / Switch",
        		"col_2": {
                        	"type": "checkbox",
                        	"width": "71px",
                        	"height": "24px",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"labelPosition": "left",
                        	"labelClickActive": "true",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"labelFalse": "on",
                        	"labelTrue": "off"
                        },
        		"col_3": {
                        	"type": "switch",
                        	"width": "83px",
                        	"height": "44px",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"labelPosition": "right",
                        	"labelClickActive": "true",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"labelFalse": "off",
                        	"labelTrue": "on",
                        	"lockEnabled": true
                        },
        		"col_4": {
                        	"type": "switch",
                        	"width": "83px",
                        	"height": "44px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"toggleType": "value",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"labelPosition": "right",
                        	"labelClickActive": "true",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"labelFalse": "off",
                        	"labelTrue": "on",
                        	"lockEnabled": false,
                        	"valueOff": "10",
                        	"valueOn": "70"
                        }
        	},	
        	{
        		"col_1": "Button State",
        		"col_2": {
                        	"type": "buttonState_icon",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"vibrateOnMobilDevices": "50",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "45",
                        	"lockIconLeft": "55",
                        	"lockIconSize": "20",
                        	"lockIconColor": "red",
                        	"lockFilterGrayscale": "30",
                        	"image": "battery",
                        	"value": "100",
                        	"imageColor": "#44739e"
                        },
        		"col_3": {
                        	"type": "buttonState",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"buttonStyle": "raised",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "left",
                        	"autoLockAfter": "10",
                        	"lockFilterGrayscale": "30",
                        	"buttontext": "70",
                        	"image": "battery-70",
                        	"iconHeight": "20",
                        	"value": "70"
                        },
        		"col_4": {
                        	"type": "buttonState_vertical",
                        	"width": "102px",
                        	"height": "67px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"buttonStyle": "raised",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "top",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"value": "10",
                        	"buttontext": "10",
                        	"image": "battery-10",
                        	"iconHeight": "38"
                        }
        	},
        	{
        		"col_1": "Progress",
        		"col_2": {
                        	"type": "progress_circular",
                        	"width": "83px",
                        	"height": "81px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"showValueLabel": true,
                        	"min": "0",
                        	"max": "100",
                        	"colorProgress": "",
                        	"colorOneCondition": "60",
                        	"colorOne": "gold",
                        	"colorTwoCondition": "80",
                        	"colorTwo": "red",
                        	"colorProgressBackground": "",
                        	"progressCircularSize": "80",
                        	"progressCircularWidth": "10",
                        	"progressCircularRotate": "90",
                        	"innerColor": "",
                        	"textColor": "",
                        	"valueLabelStyle": "progressValue",
                        	"valueLabelUnit": "",
                        	"valueMaxDecimals": "3"
                        },
        		"col_3": {
                        	"type": "progress",
                        	"width": "152px",
                        	"height": "24px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"progressRounded": false,
                        	"showValueLabel": "true",
                        	"valueLabelStyle": "progressPercent",
                        	"textAlign": "end",
                        	"min": "0",
                        	"max": "100",
                        	"colorProgress": "#ff780a",
                        	"colorOne": "gold",
                        	"colorTwo": "red",
                        	"colorOneCondition": "50",
                        	"colorTwoCondition": "70"
                        },
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "Slider",
        		"col_2": {
                        	"type": "slider",
                        	"width": "187px",
                        	"height": "60px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"orientation": "horizontal",
                        	"knobSize": "knobSmall",
                        	"step": "1",
                        	"vibrateOnMobilDevices": "50",
                        	"showTicks": "no",
                        	"showValueLabel": "true",
                        	"valueLabelWidth": "50",
                        	"showThumbLabel": "no",
                        	"valueLabelUnit": "%",
                        	"prepandTextWidth": "1"
                        },
        		"col_3": {
                        	"type": "slider_round",
                        	"width": "80px",
                        	"height": "80px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"step": "1",
                        	"startAngle": "135",
                        	"arcLength": "270",
                        	"handleZoom": "1.5",
                        	"vibrateOnMobilDevices": "50",
                        	"showValueLabel": "true"
                        },
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "Select",
        		"col_2": {
                        	"type": "select",
                        	"width": "100%",
                        	"height": "38px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "inputPerEditor",
                        	"countSelectItems": "2",
                        	"listPosition": "auto",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"value0": "10",
                        	"value1": "70",
                        	"value2": "100",
                        	"label0": "val0",
                        	"listIcon0": "alpha-d-box",
                        	"label1": "val1",
                        	"label2": "val2",
                        	"listIcon1": "account-alert",
                        	"listIcon2": "karate",
                        	"inputLabelText": "by Editor"
                        },
        		"col_3": {
                        	"type": "select",
                        	"width": "183px",
                        	"height": "38px",
                        	"oid": "0_userdata.0.MDW.Table.Control.string",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "jsonStringObject",
                        	"countSelectItems": "0",
                        	"listPosition": "auto",
                        	"inputLayout": "solo-shaped",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"inputLabelText": "by JSON Editor",
                        	"jsonStringObject": [
                        		{
                        			"text": "1 Tag",
                        			"value": "1 day"
                        		},
                        		{
                        			"text": "3 Tage",
                        			"value": "3 days"
                        		},
                        		{
                        			"text": "1 Woche",
                        			"value": "7 days"
                        		},
                        		{
                        			"text": "2 Wochen",
                        			"value": "14 days"
                        		},
                        		{
                        			"text": "1 Monat",
                        			"value": "1 month"
                        		},
                        		{
                        			"text": "2 Monate",
                        			"value": "2 months"
                        		},
                        		{
                        			"text": "3 Monate",
                        			"value": "3 months"
                        		},
                        		{
                        			"text": "6 Monate",
                        			"value": "6 months"
                        		},
                        		{
                        			"text": "1 Jahr",
                        			"value": "1 year"
                        		}
                        	]
                        },
        		"col_4": {
                        	"type": "select",
                        	"width": "183px",
                        	"height": "38px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "valueList",
                        	"countSelectItems": "0",
                        	"listPosition": "auto",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"inputLabelText": "by Value List",
                        	"valueList": "10;30;90",
                        	"valueListLabels": "val1;val2;val3",
                        	"valueListIcons": "home;home;home"
                        }
        	},
        	{
        		"col_1": "Input / Autocomplete",
        		"col_2": {
                        	"type": "textfield",
                        	"oid": "0_userdata.0.MDW.Table.Control.string",
                        	"inputType": "text",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true"
                        },
        		"col_3": {
                        	"type": "autocomplete",
                        	"oid": "0_userdata.0.MDW.Table.Control.string",
                        	"inputMode": "write",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "jsonStringObject",
                        	"countSelectItems": "1",
                        	"listPosition": "auto",
                        	"listPositionOffset": "true",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"jsonStringObject": [
                        		{
                        			"text": "1 Tag",
                        			"value": "1 day"
                        		},
                        		{
                        			"text": "3 Tage",
                        			"value": "3 days"
                        		},
                        		{
                        			"text": "1 Woche",
                        			"value": "7 days"
                        		},
                        		{
                        			"text": "2 Wochen",
                        			"value": "14 days"
                        		},
                        		{
                        			"text": "1 Monat",
                        			"value": "1 month"
                        		},
                        		{
                        			"text": "2 Monate",
                        			"value": "2 months"
                        		},
                        		{
                        			"text": "3 Monate",
                        			"value": "3 months"
                        		},
                        		{
                        			"text": "6 Monate",
                        			"value": "6 months"
                        		},
                        		{
                        			"text": "1 Jahr",
                        			"value": "1 year"
                        		}
                        	]
                        },
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	}
        ]
        
        ScroungerS Offline
        ScroungerS Offline
        Scrounger
        Developer
        schrieb am zuletzt editiert von
        #66

        @DevChannel-de sagte in Material Design Widgets: Table Widget:

        @Scrounger
        Hallo, ich versuche pro Tabellenzeile weitere Details anzuzeigen, die nach einer User-Interaktion ge-triggered werden . Momentan habe ich es mir so vorgestellt, dass in jeder Zeile ein Button angezeigt wird oder aber der User direkt auf die gesamte Zeile klicken kann und dann wird ein Dialog mit weiteren Details, die zu dieser Zeile gehören, angezeigt.
        Prinzipiell würde z.B. das "jqui - HTML - Dialog"-Widget die Anforderung erfüllen, allerdings müsste ja solches Nicht-MD-Widget in die JSON-Struktur kommen... Hast Du einen Tipp für mich, wie ich das umsetzen könnte?
        Danke im Voraus :-)

        Ja siehe mein Post. Z.b. Buttons einfügen - man kann den button auch über die gesamte Zeilenlänge machen, dann ist es wie wenn du eine Zeile anklickst.

        @Scrounger sagte in Material Design Widgets: Table Widget:

        Ab version 0.3.13 kann man jetzt verschiedene Widgets per json string in die Zellen der Tabelle packen.

        table_control_example.gif

        alle infos wie das ganze funktioniert findet ihr in der Doku:
        https://github.com/Scrounger/ioBroker.vis-materialdesign#control-elements

        Json String vom oberen Beispiel:

        [
        	{
        		"col_1": "Button Toggle",
        		"col_2": {
                        	"type": "buttonToggle_vertical",
                        	"width": "102px",
                        	"height": "67px",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"buttonStyle": "raised",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "top",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"buttontext": "off",
                        	"labelTrue": "on",
                        	"colorBgTrue": "#ffffff",
                        	"image": "access-point-network-off",
                        	"imageTrue": "access-point-network",
                        	"imageColor": "#c70000",
                        	"iconHeight": "36",
                        	"lockEnabled": true,
                        	"imageTrueColor": "#36fa29",
                        	"labelColorTrue": "#000000",
                        	"lockIconColor": "#000000"
                        },
        		"col_3": {
                        	"type": "buttonToggle",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"buttonStyle": "raised",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "left",
                        	"autoLockAfter": "10",
                        	"lockFilterGrayscale": "30",
                        	"buttontext": "off",
                        	"labelTrue": "on",
                        	"image": "access-point-network-off",
                        	"imageColor": "#c70000",
                        	"imageTrue": "access-point-network",
                        	"colorBgTrue": "#a2bc9f",
                        	"imageTrueColor": "#36fa29"
                        },
        		"col_4": {
                        	"type": "buttonToggle_icon",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "45",
                        	"lockIconLeft": "55",
                        	"lockIconSize": "20",
                        	"lockIconColor": "red",
                        	"lockFilterGrayscale": "30",
                        	"image": "access-point-network-off",
                        	"imageColor": "#c70000",
                        	"imageTrue": "access-point-network",
                        	"colorBgTrue": "#a2bc9f",
                        	"imageTrueColor": "#000000"
                        }
        	},
        	{
        		"col_1": "Checkbox / Switch",
        		"col_2": {
                        	"type": "checkbox",
                        	"width": "71px",
                        	"height": "24px",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"labelPosition": "left",
                        	"labelClickActive": "true",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"labelFalse": "on",
                        	"labelTrue": "off"
                        },
        		"col_3": {
                        	"type": "switch",
                        	"width": "83px",
                        	"height": "44px",
                        	"oid": "0_userdata.0.MDW.Table.Control.bool",
                        	"toggleType": "boolean",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"labelPosition": "right",
                        	"labelClickActive": "true",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"labelFalse": "off",
                        	"labelTrue": "on",
                        	"lockEnabled": true
                        },
        		"col_4": {
                        	"type": "switch",
                        	"width": "83px",
                        	"height": "44px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"toggleType": "value",
                        	"stateIfNotTrueValue": "on",
                        	"vibrateOnMobilDevices": "50",
                        	"labelPosition": "right",
                        	"labelClickActive": "true",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"labelFalse": "off",
                        	"labelTrue": "on",
                        	"lockEnabled": false,
                        	"valueOff": "10",
                        	"valueOn": "70"
                        }
        	},	
        	{
        		"col_1": "Button State",
        		"col_2": {
                        	"type": "buttonState_icon",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"vibrateOnMobilDevices": "50",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "45",
                        	"lockIconLeft": "55",
                        	"lockIconSize": "20",
                        	"lockIconColor": "red",
                        	"lockFilterGrayscale": "30",
                        	"image": "battery",
                        	"value": "100",
                        	"imageColor": "#44739e"
                        },
        		"col_3": {
                        	"type": "buttonState",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"buttonStyle": "raised",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "left",
                        	"autoLockAfter": "10",
                        	"lockFilterGrayscale": "30",
                        	"buttontext": "70",
                        	"image": "battery-70",
                        	"iconHeight": "20",
                        	"value": "70"
                        },
        		"col_4": {
                        	"type": "buttonState_vertical",
                        	"width": "102px",
                        	"height": "67px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"buttonStyle": "raised",
                        	"vibrateOnMobilDevices": "50",
                        	"iconPosition": "top",
                        	"autoLockAfter": "10",
                        	"lockIconTop": "5",
                        	"lockIconLeft": "5",
                        	"lockFilterGrayscale": "30",
                        	"value": "10",
                        	"buttontext": "10",
                        	"image": "battery-10",
                        	"iconHeight": "38"
                        }
        	},
        	{
        		"col_1": "Progress",
        		"col_2": {
                        	"type": "progress_circular",
                        	"width": "83px",
                        	"height": "81px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"showValueLabel": true,
                        	"min": "0",
                        	"max": "100",
                        	"colorProgress": "",
                        	"colorOneCondition": "60",
                        	"colorOne": "gold",
                        	"colorTwoCondition": "80",
                        	"colorTwo": "red",
                        	"colorProgressBackground": "",
                        	"progressCircularSize": "80",
                        	"progressCircularWidth": "10",
                        	"progressCircularRotate": "90",
                        	"innerColor": "",
                        	"textColor": "",
                        	"valueLabelStyle": "progressValue",
                        	"valueLabelUnit": "",
                        	"valueMaxDecimals": "3"
                        },
        		"col_3": {
                        	"type": "progress",
                        	"width": "152px",
                        	"height": "24px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"progressRounded": false,
                        	"showValueLabel": "true",
                        	"valueLabelStyle": "progressPercent",
                        	"textAlign": "end",
                        	"min": "0",
                        	"max": "100",
                        	"colorProgress": "#ff780a",
                        	"colorOne": "gold",
                        	"colorTwo": "red",
                        	"colorOneCondition": "50",
                        	"colorTwoCondition": "70"
                        },
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "Slider",
        		"col_2": {
                        	"type": "slider",
                        	"width": "187px",
                        	"height": "60px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"orientation": "horizontal",
                        	"knobSize": "knobSmall",
                        	"step": "1",
                        	"vibrateOnMobilDevices": "50",
                        	"showTicks": "no",
                        	"showValueLabel": "true",
                        	"valueLabelWidth": "50",
                        	"showThumbLabel": "no",
                        	"valueLabelUnit": "%",
                        	"prepandTextWidth": "1"
                        },
        		"col_3": {
                        	"type": "slider_round",
                        	"width": "80px",
                        	"height": "80px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"step": "1",
                        	"startAngle": "135",
                        	"arcLength": "270",
                        	"handleZoom": "1.5",
                        	"vibrateOnMobilDevices": "50",
                        	"showValueLabel": "true"
                        },
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "Select",
        		"col_2": {
                        	"type": "select",
                        	"width": "100%",
                        	"height": "38px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "inputPerEditor",
                        	"countSelectItems": "2",
                        	"listPosition": "auto",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"value0": "10",
                        	"value1": "70",
                        	"value2": "100",
                        	"label0": "val0",
                        	"listIcon0": "alpha-d-box",
                        	"label1": "val1",
                        	"label2": "val2",
                        	"listIcon1": "account-alert",
                        	"listIcon2": "karate",
                        	"inputLabelText": "by Editor"
                        },
        		"col_3": {
                        	"type": "select",
                        	"width": "183px",
                        	"height": "38px",
                        	"oid": "0_userdata.0.MDW.Table.Control.string",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "jsonStringObject",
                        	"countSelectItems": "0",
                        	"listPosition": "auto",
                        	"inputLayout": "solo-shaped",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"inputLabelText": "by JSON Editor",
                        	"jsonStringObject": [
                        		{
                        			"text": "1 Tag",
                        			"value": "1 day"
                        		},
                        		{
                        			"text": "3 Tage",
                        			"value": "3 days"
                        		},
                        		{
                        			"text": "1 Woche",
                        			"value": "7 days"
                        		},
                        		{
                        			"text": "2 Wochen",
                        			"value": "14 days"
                        		},
                        		{
                        			"text": "1 Monat",
                        			"value": "1 month"
                        		},
                        		{
                        			"text": "2 Monate",
                        			"value": "2 months"
                        		},
                        		{
                        			"text": "3 Monate",
                        			"value": "3 months"
                        		},
                        		{
                        			"text": "6 Monate",
                        			"value": "6 months"
                        		},
                        		{
                        			"text": "1 Jahr",
                        			"value": "1 year"
                        		}
                        	]
                        },
        		"col_4": {
                        	"type": "select",
                        	"width": "183px",
                        	"height": "38px",
                        	"oid": "0_userdata.0.MDW.Table.Control.number",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "valueList",
                        	"countSelectItems": "0",
                        	"listPosition": "auto",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"inputLabelText": "by Value List",
                        	"valueList": "10;30;90",
                        	"valueListLabels": "val1;val2;val3",
                        	"valueListIcons": "home;home;home"
                        }
        	},
        	{
        		"col_1": "Input / Autocomplete",
        		"col_2": {
                        	"type": "textfield",
                        	"oid": "0_userdata.0.MDW.Table.Control.string",
                        	"inputType": "text",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true"
                        },
        		"col_3": {
                        	"type": "autocomplete",
                        	"oid": "0_userdata.0.MDW.Table.Control.string",
                        	"inputMode": "write",
                        	"inputType": "text",
                        	"vibrateOnMobilDevices": "50",
                        	"inputLayout": "regular",
                        	"showInputMessageAlways": "true",
                        	"showInputCounter": false,
                        	"clearIconShow": "true",
                        	"listDataMethod": "jsonStringObject",
                        	"countSelectItems": "1",
                        	"listPosition": "auto",
                        	"listPositionOffset": "true",
                        	"showSelectedIcon": "prepend-inner",
                        	"showValue": "true",
                        	"jsonStringObject": [
                        		{
                        			"text": "1 Tag",
                        			"value": "1 day"
                        		},
                        		{
                        			"text": "3 Tage",
                        			"value": "3 days"
                        		},
                        		{
                        			"text": "1 Woche",
                        			"value": "7 days"
                        		},
                        		{
                        			"text": "2 Wochen",
                        			"value": "14 days"
                        		},
                        		{
                        			"text": "1 Monat",
                        			"value": "1 month"
                        		},
                        		{
                        			"text": "2 Monate",
                        			"value": "2 months"
                        		},
                        		{
                        			"text": "3 Monate",
                        			"value": "3 months"
                        		},
                        		{
                        			"text": "6 Monate",
                        			"value": "6 months"
                        		},
                        		{
                        			"text": "1 Jahr",
                        			"value": "1 year"
                        		}
                        	]
                        },
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	},
        	{
        		"col_1": "col_1",
        		"col_2": "col_2",
        		"col_3": "col_3",
        		"col_4": "col_4"
        	}
        ]
        

        <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

        <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

        D 1 Antwort Letzte Antwort
        0
        • ScroungerS Scrounger

          @DevChannel-de sagte in Material Design Widgets: Table Widget:

          @Scrounger
          Hallo, ich versuche pro Tabellenzeile weitere Details anzuzeigen, die nach einer User-Interaktion ge-triggered werden . Momentan habe ich es mir so vorgestellt, dass in jeder Zeile ein Button angezeigt wird oder aber der User direkt auf die gesamte Zeile klicken kann und dann wird ein Dialog mit weiteren Details, die zu dieser Zeile gehören, angezeigt.
          Prinzipiell würde z.B. das "jqui - HTML - Dialog"-Widget die Anforderung erfüllen, allerdings müsste ja solches Nicht-MD-Widget in die JSON-Struktur kommen... Hast Du einen Tipp für mich, wie ich das umsetzen könnte?
          Danke im Voraus :-)

          Ja siehe mein Post. Z.b. Buttons einfügen - man kann den button auch über die gesamte Zeilenlänge machen, dann ist es wie wenn du eine Zeile anklickst.

          @Scrounger sagte in Material Design Widgets: Table Widget:

          Ab version 0.3.13 kann man jetzt verschiedene Widgets per json string in die Zellen der Tabelle packen.

          table_control_example.gif

          alle infos wie das ganze funktioniert findet ihr in der Doku:
          https://github.com/Scrounger/ioBroker.vis-materialdesign#control-elements

          Json String vom oberen Beispiel:

          [
          	{
          		"col_1": "Button Toggle",
          		"col_2": {
                          	"type": "buttonToggle_vertical",
                          	"width": "102px",
                          	"height": "67px",
                          	"oid": "0_userdata.0.MDW.Table.Control.bool",
                          	"buttonStyle": "raised",
                          	"toggleType": "boolean",
                          	"stateIfNotTrueValue": "on",
                          	"vibrateOnMobilDevices": "50",
                          	"iconPosition": "top",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "5",
                          	"lockIconLeft": "5",
                          	"lockFilterGrayscale": "30",
                          	"buttontext": "off",
                          	"labelTrue": "on",
                          	"colorBgTrue": "#ffffff",
                          	"image": "access-point-network-off",
                          	"imageTrue": "access-point-network",
                          	"imageColor": "#c70000",
                          	"iconHeight": "36",
                          	"lockEnabled": true,
                          	"imageTrueColor": "#36fa29",
                          	"labelColorTrue": "#000000",
                          	"lockIconColor": "#000000"
                          },
          		"col_3": {
                          	"type": "buttonToggle",
                          	"oid": "0_userdata.0.MDW.Table.Control.bool",
                          	"buttonStyle": "raised",
                          	"toggleType": "boolean",
                          	"stateIfNotTrueValue": "on",
                          	"vibrateOnMobilDevices": "50",
                          	"iconPosition": "left",
                          	"autoLockAfter": "10",
                          	"lockFilterGrayscale": "30",
                          	"buttontext": "off",
                          	"labelTrue": "on",
                          	"image": "access-point-network-off",
                          	"imageColor": "#c70000",
                          	"imageTrue": "access-point-network",
                          	"colorBgTrue": "#a2bc9f",
                          	"imageTrueColor": "#36fa29"
                          },
          		"col_4": {
                          	"type": "buttonToggle_icon",
                          	"oid": "0_userdata.0.MDW.Table.Control.bool",
                          	"toggleType": "boolean",
                          	"stateIfNotTrueValue": "on",
                          	"vibrateOnMobilDevices": "50",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "45",
                          	"lockIconLeft": "55",
                          	"lockIconSize": "20",
                          	"lockIconColor": "red",
                          	"lockFilterGrayscale": "30",
                          	"image": "access-point-network-off",
                          	"imageColor": "#c70000",
                          	"imageTrue": "access-point-network",
                          	"colorBgTrue": "#a2bc9f",
                          	"imageTrueColor": "#000000"
                          }
          	},
          	{
          		"col_1": "Checkbox / Switch",
          		"col_2": {
                          	"type": "checkbox",
                          	"width": "71px",
                          	"height": "24px",
                          	"oid": "0_userdata.0.MDW.Table.Control.bool",
                          	"toggleType": "boolean",
                          	"stateIfNotTrueValue": "on",
                          	"vibrateOnMobilDevices": "50",
                          	"labelPosition": "left",
                          	"labelClickActive": "true",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "5",
                          	"lockIconLeft": "5",
                          	"lockFilterGrayscale": "30",
                          	"labelFalse": "on",
                          	"labelTrue": "off"
                          },
          		"col_3": {
                          	"type": "switch",
                          	"width": "83px",
                          	"height": "44px",
                          	"oid": "0_userdata.0.MDW.Table.Control.bool",
                          	"toggleType": "boolean",
                          	"stateIfNotTrueValue": "on",
                          	"vibrateOnMobilDevices": "50",
                          	"labelPosition": "right",
                          	"labelClickActive": "true",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "5",
                          	"lockIconLeft": "5",
                          	"lockFilterGrayscale": "30",
                          	"labelFalse": "off",
                          	"labelTrue": "on",
                          	"lockEnabled": true
                          },
          		"col_4": {
                          	"type": "switch",
                          	"width": "83px",
                          	"height": "44px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"toggleType": "value",
                          	"stateIfNotTrueValue": "on",
                          	"vibrateOnMobilDevices": "50",
                          	"labelPosition": "right",
                          	"labelClickActive": "true",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "5",
                          	"lockIconLeft": "5",
                          	"lockFilterGrayscale": "30",
                          	"labelFalse": "off",
                          	"labelTrue": "on",
                          	"lockEnabled": false,
                          	"valueOff": "10",
                          	"valueOn": "70"
                          }
          	},	
          	{
          		"col_1": "Button State",
          		"col_2": {
                          	"type": "buttonState_icon",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"vibrateOnMobilDevices": "50",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "45",
                          	"lockIconLeft": "55",
                          	"lockIconSize": "20",
                          	"lockIconColor": "red",
                          	"lockFilterGrayscale": "30",
                          	"image": "battery",
                          	"value": "100",
                          	"imageColor": "#44739e"
                          },
          		"col_3": {
                          	"type": "buttonState",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"buttonStyle": "raised",
                          	"vibrateOnMobilDevices": "50",
                          	"iconPosition": "left",
                          	"autoLockAfter": "10",
                          	"lockFilterGrayscale": "30",
                          	"buttontext": "70",
                          	"image": "battery-70",
                          	"iconHeight": "20",
                          	"value": "70"
                          },
          		"col_4": {
                          	"type": "buttonState_vertical",
                          	"width": "102px",
                          	"height": "67px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"buttonStyle": "raised",
                          	"vibrateOnMobilDevices": "50",
                          	"iconPosition": "top",
                          	"autoLockAfter": "10",
                          	"lockIconTop": "5",
                          	"lockIconLeft": "5",
                          	"lockFilterGrayscale": "30",
                          	"value": "10",
                          	"buttontext": "10",
                          	"image": "battery-10",
                          	"iconHeight": "38"
                          }
          	},
          	{
          		"col_1": "Progress",
          		"col_2": {
                          	"type": "progress_circular",
                          	"width": "83px",
                          	"height": "81px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"showValueLabel": true,
                          	"min": "0",
                          	"max": "100",
                          	"colorProgress": "",
                          	"colorOneCondition": "60",
                          	"colorOne": "gold",
                          	"colorTwoCondition": "80",
                          	"colorTwo": "red",
                          	"colorProgressBackground": "",
                          	"progressCircularSize": "80",
                          	"progressCircularWidth": "10",
                          	"progressCircularRotate": "90",
                          	"innerColor": "",
                          	"textColor": "",
                          	"valueLabelStyle": "progressValue",
                          	"valueLabelUnit": "",
                          	"valueMaxDecimals": "3"
                          },
          		"col_3": {
                          	"type": "progress",
                          	"width": "152px",
                          	"height": "24px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"progressRounded": false,
                          	"showValueLabel": "true",
                          	"valueLabelStyle": "progressPercent",
                          	"textAlign": "end",
                          	"min": "0",
                          	"max": "100",
                          	"colorProgress": "#ff780a",
                          	"colorOne": "gold",
                          	"colorTwo": "red",
                          	"colorOneCondition": "50",
                          	"colorTwoCondition": "70"
                          },
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "Slider",
          		"col_2": {
                          	"type": "slider",
                          	"width": "187px",
                          	"height": "60px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"orientation": "horizontal",
                          	"knobSize": "knobSmall",
                          	"step": "1",
                          	"vibrateOnMobilDevices": "50",
                          	"showTicks": "no",
                          	"showValueLabel": "true",
                          	"valueLabelWidth": "50",
                          	"showThumbLabel": "no",
                          	"valueLabelUnit": "%",
                          	"prepandTextWidth": "1"
                          },
          		"col_3": {
                          	"type": "slider_round",
                          	"width": "80px",
                          	"height": "80px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"step": "1",
                          	"startAngle": "135",
                          	"arcLength": "270",
                          	"handleZoom": "1.5",
                          	"vibrateOnMobilDevices": "50",
                          	"showValueLabel": "true"
                          },
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "Select",
          		"col_2": {
                          	"type": "select",
                          	"width": "100%",
                          	"height": "38px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"inputType": "text",
                          	"vibrateOnMobilDevices": "50",
                          	"inputLayout": "regular",
                          	"showInputMessageAlways": "true",
                          	"showInputCounter": false,
                          	"clearIconShow": "true",
                          	"listDataMethod": "inputPerEditor",
                          	"countSelectItems": "2",
                          	"listPosition": "auto",
                          	"showSelectedIcon": "prepend-inner",
                          	"showValue": "true",
                          	"value0": "10",
                          	"value1": "70",
                          	"value2": "100",
                          	"label0": "val0",
                          	"listIcon0": "alpha-d-box",
                          	"label1": "val1",
                          	"label2": "val2",
                          	"listIcon1": "account-alert",
                          	"listIcon2": "karate",
                          	"inputLabelText": "by Editor"
                          },
          		"col_3": {
                          	"type": "select",
                          	"width": "183px",
                          	"height": "38px",
                          	"oid": "0_userdata.0.MDW.Table.Control.string",
                          	"inputType": "text",
                          	"vibrateOnMobilDevices": "50",
                          	"inputLayout": "regular",
                          	"showInputMessageAlways": "true",
                          	"showInputCounter": false,
                          	"clearIconShow": "true",
                          	"listDataMethod": "jsonStringObject",
                          	"countSelectItems": "0",
                          	"listPosition": "auto",
                          	"inputLayout": "solo-shaped",
                          	"showSelectedIcon": "prepend-inner",
                          	"showValue": "true",
                          	"inputLabelText": "by JSON Editor",
                          	"jsonStringObject": [
                          		{
                          			"text": "1 Tag",
                          			"value": "1 day"
                          		},
                          		{
                          			"text": "3 Tage",
                          			"value": "3 days"
                          		},
                          		{
                          			"text": "1 Woche",
                          			"value": "7 days"
                          		},
                          		{
                          			"text": "2 Wochen",
                          			"value": "14 days"
                          		},
                          		{
                          			"text": "1 Monat",
                          			"value": "1 month"
                          		},
                          		{
                          			"text": "2 Monate",
                          			"value": "2 months"
                          		},
                          		{
                          			"text": "3 Monate",
                          			"value": "3 months"
                          		},
                          		{
                          			"text": "6 Monate",
                          			"value": "6 months"
                          		},
                          		{
                          			"text": "1 Jahr",
                          			"value": "1 year"
                          		}
                          	]
                          },
          		"col_4": {
                          	"type": "select",
                          	"width": "183px",
                          	"height": "38px",
                          	"oid": "0_userdata.0.MDW.Table.Control.number",
                          	"inputType": "text",
                          	"vibrateOnMobilDevices": "50",
                          	"inputLayout": "regular",
                          	"showInputMessageAlways": "true",
                          	"showInputCounter": false,
                          	"clearIconShow": "true",
                          	"listDataMethod": "valueList",
                          	"countSelectItems": "0",
                          	"listPosition": "auto",
                          	"showSelectedIcon": "prepend-inner",
                          	"showValue": "true",
                          	"inputLabelText": "by Value List",
                          	"valueList": "10;30;90",
                          	"valueListLabels": "val1;val2;val3",
                          	"valueListIcons": "home;home;home"
                          }
          	},
          	{
          		"col_1": "Input / Autocomplete",
          		"col_2": {
                          	"type": "textfield",
                          	"oid": "0_userdata.0.MDW.Table.Control.string",
                          	"inputType": "text",
                          	"inputLayout": "regular",
                          	"showInputMessageAlways": "true",
                          	"showInputCounter": false,
                          	"clearIconShow": "true"
                          },
          		"col_3": {
                          	"type": "autocomplete",
                          	"oid": "0_userdata.0.MDW.Table.Control.string",
                          	"inputMode": "write",
                          	"inputType": "text",
                          	"vibrateOnMobilDevices": "50",
                          	"inputLayout": "regular",
                          	"showInputMessageAlways": "true",
                          	"showInputCounter": false,
                          	"clearIconShow": "true",
                          	"listDataMethod": "jsonStringObject",
                          	"countSelectItems": "1",
                          	"listPosition": "auto",
                          	"listPositionOffset": "true",
                          	"showSelectedIcon": "prepend-inner",
                          	"showValue": "true",
                          	"jsonStringObject": [
                          		{
                          			"text": "1 Tag",
                          			"value": "1 day"
                          		},
                          		{
                          			"text": "3 Tage",
                          			"value": "3 days"
                          		},
                          		{
                          			"text": "1 Woche",
                          			"value": "7 days"
                          		},
                          		{
                          			"text": "2 Wochen",
                          			"value": "14 days"
                          		},
                          		{
                          			"text": "1 Monat",
                          			"value": "1 month"
                          		},
                          		{
                          			"text": "2 Monate",
                          			"value": "2 months"
                          		},
                          		{
                          			"text": "3 Monate",
                          			"value": "3 months"
                          		},
                          		{
                          			"text": "6 Monate",
                          			"value": "6 months"
                          		},
                          		{
                          			"text": "1 Jahr",
                          			"value": "1 year"
                          		}
                          	]
                          },
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	},
          	{
          		"col_1": "col_1",
          		"col_2": "col_2",
          		"col_3": "col_3",
          		"col_4": "col_4"
          	}
          ]
          
          D Offline
          D Offline
          DevChannel-de
          schrieb am zuletzt editiert von
          #67

          @Scrounger
          Das Problem ist, dass der Dialog-Inhalt, der nach dem Klicken auf den Button angezeigt wird, pro Zeile spezifisch ist. Der Use-Case ist der folgende: ich kann bei der Anlage eines Kalendereintrages (z.B. im Google-Kalender) eine Beschreibung hinzufügen. Diese bekomme ich auch aus iCal in JS abgegriffen. Ich möchte aber diese Kalendereintrag-Beschreibungen nicht direkt in der Tabelle anzeigen sondern erst, wenn der User auf einen Button bzw. die Zeile klickt- also im geöffneten Dialog.
          In anderen Worten, diese Kalendereintrag-Beschreibungen müssten Teil der JSON-Struktur sein, die schlussendlich als Inhalt des geöffneten Dialogs verwendet werden würden.

          Das genannte "jqui - HTML - Dialog"-Widget hat ja ein "HTML im Dialog"-Feld, das diese Anforderung theoretisch erfüllen würde:
          3e7531b5-bb25-4228-825c-cac9a2d63a2b-image.png

          ScroungerS 1 Antwort Letzte Antwort
          0
          • D DevChannel-de

            @Scrounger
            Das Problem ist, dass der Dialog-Inhalt, der nach dem Klicken auf den Button angezeigt wird, pro Zeile spezifisch ist. Der Use-Case ist der folgende: ich kann bei der Anlage eines Kalendereintrages (z.B. im Google-Kalender) eine Beschreibung hinzufügen. Diese bekomme ich auch aus iCal in JS abgegriffen. Ich möchte aber diese Kalendereintrag-Beschreibungen nicht direkt in der Tabelle anzeigen sondern erst, wenn der User auf einen Button bzw. die Zeile klickt- also im geöffneten Dialog.
            In anderen Worten, diese Kalendereintrag-Beschreibungen müssten Teil der JSON-Struktur sein, die schlussendlich als Inhalt des geöffneten Dialogs verwendet werden würden.

            Das genannte "jqui - HTML - Dialog"-Widget hat ja ein "HTML im Dialog"-Feld, das diese Anforderung theoretisch erfüllen würde:
            3e7531b5-bb25-4228-825c-cac9a2d63a2b-image.png

            ScroungerS Offline
            ScroungerS Offline
            Scrounger
            Developer
            schrieb am zuletzt editiert von Scrounger
            #68

            @DevChannel-de

            pro Zeile einen Button (Button State) machen, der in einen DP z.B. Zeile X schreibt. Dann ein Script, wenn sich der Wert ändert Dialog öffnen. Im Dialog ein Widget verwenden, das dynamisch auf den oberen Datenpunkt zugreift und in Abhängigkeit von Zeile X die entsprechenden Daten anzeigt - das geht über ein Script oder könnte man sicher auch mit Binding realisieren.

            <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

            <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

            D 1 Antwort Letzte Antwort
            0
            • ScroungerS Scrounger

              @DevChannel-de

              pro Zeile einen Button (Button State) machen, der in einen DP z.B. Zeile X schreibt. Dann ein Script, wenn sich der Wert ändert Dialog öffnen. Im Dialog ein Widget verwenden, das dynamisch auf den oberen Datenpunkt zugreift und in Abhängigkeit von Zeile X die entsprechenden Daten anzeigt - das geht über ein Script oder könnte man sicher auch mit Binding realisieren.

              D Offline
              D Offline
              DevChannel-de
              schrieb am zuletzt editiert von DevChannel-de
              #69

              @Scrounger
              Habe jetzt verschiedene Möglichkeiten durchgespielt aber ich komme an einer Stelle nicht weiter, weil ich mehrere Tablets habe und die Logik Instanz-spezifisch ablaufen soll. D.h. ich möchte erreichen, dass die gesamte Logik nur auf dem Tablet greift, von dem der User die Aktion ge-triggered hat. Ich habe gehofft, dass ich mit dem Special Binding (https://github.com/ioBroker/ioBroker.vis#special-bindings) über
              "{instance}" die aktuelle Instanz-ID bekomme und darauf basierend (über das Control Interface) ein Dialog auf dieser Instanz öffnen kann. Es scheitert aber schon daran, dass "{instance}" mir ein undefined liefert... :-/

              Du schreibst "...Dann ein Script, wenn sich der Wert ändert Dialog öffnen...".
              Könntest Du mir etwas mehr Details geben, wie ein Skript aussehen würde, das dynamisch so ein Dialog öffnet?
              Hast Du dabei auch an das Control Interface (https://github.com/ioBroker/ioBroker.vis#control-interface) gedacht oder kennst Du einen anderen Weg?

              UPDATE:
              Habe jetzt einen anderen Weg eingeschlagen und es folgendermaßen gelöst bekommen: ich generiere dynamisch per JS clientseitig jQuery-Dialoge, die ich per onClick-Events an die relevanten Zellen der Tabelle binde. Da es jetzt clientseitiges JS-Coding ist, ist damit auch gewährleistet, dass die Interaktion sich nur auf dem jeweiligen Tablet abspielt.

              1 Antwort Letzte Antwort
              0
              • ScroungerS Scrounger

                Hab das ical2Table skript nochmal überarbeitet:

                • nun werden alle ical instanzen berücksichtigt
                • Sortierung nach Zeit aufsteigend hinzugefügt
                var instances = $(`[id=ical.*.data.table]`);
                instances.on(ical2TableWidget);
                
                function ical2TableWidget() {
                    try {
                        let calList = [];
                
                        for (var inst = 0; inst <= instances.length - 1; inst++) {
                            let icalObj = getState(instances[inst]).val;
                
                            if (icalObj) {
                                for (var i = 0; i <= icalObj.length - 1; i++) {
                                    let item = icalObj[i];
                
                                    let calendarName = item._class.split(' ')[0].replace('ical_', '');
                
                                    // Objekt für Tabelle erzeugen
                                    calList.push({
                                        farbe: `<div style="background: ${getMyCalendarColor(calendarName)}; width: 3px; height: 20px"></div>`,
                                        zeit: item.date,
                                        termin: item.event,
                                        kalender: calendarName,
                                        timestamp: Date.parse(item._date)
                                    })
                                }
                            }
                        }
                
                        // Liste sort by timestamp asc
                        calList.sort(function (a, b) {
                            return a.timestamp == b.timestamp ? 0 : +(a.timestamp > b.timestamp) || -1;
                        });
                
                        // Enter the destination data point that is to be used as object ID in the widget
                        setState('0_userdata.0.ical', JSON.stringify(calList), true);
                
                        function getMyCalendarColor(calendarName) {
                            // assign colors via the calendar names, use calendar name as set in ical
                            if (calendarName === 'calendar1') {
                                return '#FF0000';
                            } else if (calendarName === 'calendar2') {
                                return '#44739e'
                            } else if (calendarName === 'calendar3') {
                                return '#32a852'
                            }
                        }
                
                    } catch (e) {
                        console.error(`ical2MaterialDesignTableWidget: message: ${e.message}, stack: ${e.stack}`);
                    }
                }
                
                ical2TableWidget();
                

                fc84b25f-c6f0-4b0b-b197-eefd74fdaa97-grafik.png

                Widget:

                [{"tpl":"tplVis-materialdesign-Table","data":{"oid":"0_userdata.0.ical","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","countCols":"3","tableLayout":"standard","showHeader":"true","headerTextSize":"headline6","showColumn0":"true","colType0":"text","textAlign0":"left","showColumn1":"true","colType1":"text","textAlign1":"left","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"showColumn2":"true","colType2":"text","textAlign2":"left","showColumn3":"true","colType3":"text","textAlign3":"left","label0":" ","label1":"Zeit","label2":"Termin","label3":"Kalender","columnWidth0":"0","sortKey1":"timestamp"},"style":{"left":"163px","top":"67px","width":"692px","height":"480px"},"widgetSet":"materialdesign"}]
                

                R Offline
                R Offline
                Rosi8818
                schrieb am zuletzt editiert von Rosi8818
                #70

                @scrounger wie bekommst du die Farben in der ersten Spalte angezeigt (fast ganz oben bei dem Beispiel)?
                Ich habe alles angelegt (DP), widget geladen aus diesem Beitrag, Eintrag "jeder kalender hat eigene Farbe", ... Der DP wird auch geschrieben und hat in der ersten "Spalte" im DP und auch die Farbe ausgelesen aber die Anzeige bekomme ich nicht hin
                hier der Anfang des DP
                [{"farbe":"<div style="background: #FF0000; width: 3px; height: 20px"></div>","zeit":"26.01.2021 23:00","termin":"testversuch","kalender":"Ralf","timestamp":1611698400000},{"farbe"...

                ScroungerS D 2 Antworten Letzte Antwort
                0
                • R Rosi8818

                  @scrounger wie bekommst du die Farben in der ersten Spalte angezeigt (fast ganz oben bei dem Beispiel)?
                  Ich habe alles angelegt (DP), widget geladen aus diesem Beitrag, Eintrag "jeder kalender hat eigene Farbe", ... Der DP wird auch geschrieben und hat in der ersten "Spalte" im DP und auch die Farbe ausgelesen aber die Anzeige bekomme ich nicht hin
                  hier der Anfang des DP
                  [{"farbe":"<div style="background: #FF0000; width: 3px; height: 20px"></div>","zeit":"26.01.2021 23:00","termin":"testversuch","kalender":"Ralf","timestamp":1611698400000},{"farbe"...

                  ScroungerS Offline
                  ScroungerS Offline
                  Scrounger
                  Developer
                  schrieb am zuletzt editiert von
                  #71

                  @rosi8818
                  Also der Json String sieht soweit ok aus. Erstell Mal das Widget komplett neue, also kein import. Evtl. Ist das noch ne sehr alte Version.

                  <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                  <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                  O 1 Antwort Letzte Antwort
                  0
                  • R Rosi8818

                    @scrounger wie bekommst du die Farben in der ersten Spalte angezeigt (fast ganz oben bei dem Beispiel)?
                    Ich habe alles angelegt (DP), widget geladen aus diesem Beitrag, Eintrag "jeder kalender hat eigene Farbe", ... Der DP wird auch geschrieben und hat in der ersten "Spalte" im DP und auch die Farbe ausgelesen aber die Anzeige bekomme ich nicht hin
                    hier der Anfang des DP
                    [{"farbe":"<div style="background: #FF0000; width: 3px; height: 20px"></div>","zeit":"26.01.2021 23:00","termin":"testversuch","kalender":"Ralf","timestamp":1611698400000},{"farbe"...

                    D Offline
                    D Offline
                    DevChannel-de
                    schrieb am zuletzt editiert von
                    #72

                    @rosi8818
                    Versuche mal bei der ersten Spaltenbreite einen Wert höher 0 einzutragen:

                    a28e7264-4f98-4c52-a2c9-7d95574308e6-image.png

                    R 1 Antwort Letzte Antwort
                    0
                    • D DevChannel-de

                      @rosi8818
                      Versuche mal bei der ersten Spaltenbreite einen Wert höher 0 einzutragen:

                      a28e7264-4f98-4c52-a2c9-7d95574308e6-image.png

                      R Offline
                      R Offline
                      Rosi8818
                      schrieb am zuletzt editiert von
                      #73

                      @devchannel-de , @Scrounger danke, beide Tipps haben gefruchtet.
                      Eine Frage habe ich noch, so wie ich es gesehen habe, werden die Instanzen eingelesen also ical.0, ical.1, ...
                      wie kann ich aber alle Kalender einer Instanz einlesen? Denn ich kann ja in einer Instanz mehrere Kalender angeben.

                      D 1 Antwort Letzte Antwort
                      0
                      • R Rosi8818

                        @devchannel-de , @Scrounger danke, beide Tipps haben gefruchtet.
                        Eine Frage habe ich noch, so wie ich es gesehen habe, werden die Instanzen eingelesen also ical.0, ical.1, ...
                        wie kann ich aber alle Kalender einer Instanz einlesen? Denn ich kann ja in einer Instanz mehrere Kalender angeben.

                        D Offline
                        D Offline
                        DevChannel-de
                        schrieb am zuletzt editiert von
                        #74

                        @rosi8818
                        Dafür sorgt der ical Adapter bereits. Wenn Du in das Skript genauer schaust, werden die Daten aus den ical.*.data.table Objekten ausgelesen, also aus ical.0.data.table, ical.1.data.table, usw. In jedem von diesen table-Objekten sind Daten aller Kalender enthalten.

                        R 1 Antwort Letzte Antwort
                        0
                        • D DevChannel-de

                          @rosi8818
                          Dafür sorgt der ical Adapter bereits. Wenn Du in das Skript genauer schaust, werden die Daten aus den ical.*.data.table Objekten ausgelesen, also aus ical.0.data.table, ical.1.data.table, usw. In jedem von diesen table-Objekten sind Daten aller Kalender enthalten.

                          R Offline
                          R Offline
                          Rosi8818
                          schrieb am zuletzt editiert von
                          #75

                          @devchannel-de danke für die Info, dann muss ich nochmal schauen, denn im ical.1 habe ich drei Kalender drin und nur der erste darin wird gelesen aber ansonsten liest er alle Instanzen ical.0, ical.1

                          D 1 Antwort Letzte Antwort
                          0
                          • R Rosi8818

                            @devchannel-de danke für die Info, dann muss ich nochmal schauen, denn im ical.1 habe ich drei Kalender drin und nur der erste darin wird gelesen aber ansonsten liest er alle Instanzen ical.0, ical.1

                            D Offline
                            D Offline
                            DevChannel-de
                            schrieb am zuletzt editiert von DevChannel-de
                            #76

                            @rosi8818
                            Eine häufige Stolperfalle ist der "Tagesvorschau"-Wert. Der Default ist nur auf wenige Tage gestellt. Wie du hier siehst, habe ich es z.B. bei mir auf 365 gestellt:
                            667b6799-c6e0-4d19-bdc6-f86be003851c-image.png

                            Ansonsten immer in den Logs schauen, ob dort etwas steht...

                            R 1 Antwort Letzte Antwort
                            0
                            • D DevChannel-de

                              @rosi8818
                              Eine häufige Stolperfalle ist der "Tagesvorschau"-Wert. Der Default ist nur auf wenige Tage gestellt. Wie du hier siehst, habe ich es z.B. bei mir auf 365 gestellt:
                              667b6799-c6e0-4d19-bdc6-f86be003851c-image.png

                              Ansonsten immer in den Logs schauen, ob dort etwas steht...

                              R Offline
                              R Offline
                              Rosi8818
                              schrieb am zuletzt editiert von
                              #77

                              @devchannel-de das habe ich auch schob probiert, im zweiten Kalender einer Instanz habe ich extra für morgen ein Termin eingestellt aber den Kalender zeigt er überhaupt nicht an... das wird bestimmt wieder eine Kleinigkeit sein (wie immer).
                              Auch interessant, den Filter kann man einstellen und funktioniert aber mit zwei Werten auch nicht bspw. Test;Bio
                              Ich muss noch viel suchen und lernen ;)

                              1 Antwort Letzte Antwort
                              0
                              • ScroungerS Scrounger

                                @rosi8818
                                Also der Json String sieht soweit ok aus. Erstell Mal das Widget komplett neue, also kein import. Evtl. Ist das noch ne sehr alte Version.

                                O Online
                                O Online
                                Oli
                                schrieb am zuletzt editiert von
                                #78

                                @scrounger

                                sorry ich checks mal wieder nicht.

                                ich fülle mir über ein Script eine Tabelle, was muss ich in die Json mit einbauen, damit ich über alle Spalten einen Button_State habe?

                                Hier mal der Codeschnipsel für mein Json:

                                deviceList.push({
                                      image: image,                    
                                      subText: subText,
                                      ist: temp + " °C",
                                      soll: stemp + " °C",
                                      ventil: ventil + " %", 
                                     status: status,
                                     etage: etage,                                                                                                                    
                                });
                                

                                Gruß
                                Oliver

                                ScroungerS 1 Antwort Letzte Antwort
                                0
                                • O Oli

                                  @scrounger

                                  sorry ich checks mal wieder nicht.

                                  ich fülle mir über ein Script eine Tabelle, was muss ich in die Json mit einbauen, damit ich über alle Spalten einen Button_State habe?

                                  Hier mal der Codeschnipsel für mein Json:

                                  deviceList.push({
                                        image: image,                    
                                        subText: subText,
                                        ist: temp + " °C",
                                        soll: stemp + " °C",
                                        ventil: ventil + " %", 
                                       status: status,
                                       etage: etage,                                                                                                                    
                                  });
                                  
                                  ScroungerS Offline
                                  ScroungerS Offline
                                  Scrounger
                                  Developer
                                  schrieb am zuletzt editiert von Scrounger
                                  #79

                                  @oli
                                  Warte bitte auf die v0.5.x, ich hab hier nochmal was geändert. Version gibts als beta wahrscheinlich am Wochenende.

                                  Du kannst aber auch die aktuelle github version testen, hier ist beschrieben wie das geht inkl. einem Beispiel:
                                  https://github.com/Scrounger/ioBroker.vis-materialdesign#control-elements-using-html-widgets

                                  <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                                  <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                                  GlasfaserG 1 Antwort Letzte Antwort
                                  1
                                  • ScroungerS Scrounger

                                    @oli
                                    Warte bitte auf die v0.5.x, ich hab hier nochmal was geändert. Version gibts als beta wahrscheinlich am Wochenende.

                                    Du kannst aber auch die aktuelle github version testen, hier ist beschrieben wie das geht inkl. einem Beispiel:
                                    https://github.com/Scrounger/ioBroker.vis-materialdesign#control-elements-using-html-widgets

                                    GlasfaserG Offline
                                    GlasfaserG Offline
                                    Glasfaser
                                    schrieb am zuletzt editiert von
                                    #80

                                    @liv-in-sky
                                    siehe oben ...
                                    das wäre was für dich HTML Control Widgets , zum eventuellen einbauen in deine Script´s !!!!

                                    Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                    ScroungerS 1 Antwort Letzte Antwort
                                    1
                                    • GlasfaserG Glasfaser

                                      @liv-in-sky
                                      siehe oben ...
                                      das wäre was für dich HTML Control Widgets , zum eventuellen einbauen in deine Script´s !!!!

                                      ScroungerS Offline
                                      ScroungerS Offline
                                      Scrounger
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #81

                                      @glasfaser sagte in Material Design Widgets: Table Widget:

                                      @liv-in-sky
                                      siehe oben ...
                                      das wäre was für dich HTML Control Widgets , zum eventuellen einbauen in deine Script´s !!!!

                                      Genau, gutes Beispiel wo man das sehr gut anwenden könnte.
                                      Aber bitte wartet bis ich die v0.5.0-beta hier im Forum zum testen freigebe - wahrscheinlich am WE.

                                      <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                                      <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                                      1 Antwort Letzte Antwort
                                      1
                                      • 0 Offline
                                        0 Offline
                                        0018
                                        schrieb am zuletzt editiert von 0018
                                        #82

                                        Hallo zusammen,

                                        wie bekomme ich den Wert eines Datenpunktes z.B. "tankerkoenig.0.stations.0.diesel.short" in das Feld "Daten aus JSON"
                                        integriert, damit mir der Wert des DP angezeigt wird? Geht das nur über dem Umweg mit einem Script eine Json zu erstellen?

                                        EDIT: Hat sich erledigt, habe es über ein Script realisiert.

                                        Mfg
                                        0018

                                        1 Antwort Letzte Antwort
                                        0
                                        • ScroungerS Scrounger

                                          Hab das ical2Table skript nochmal überarbeitet:

                                          • nun werden alle ical instanzen berücksichtigt
                                          • Sortierung nach Zeit aufsteigend hinzugefügt
                                          var instances = $(`[id=ical.*.data.table]`);
                                          instances.on(ical2TableWidget);
                                          
                                          function ical2TableWidget() {
                                              try {
                                                  let calList = [];
                                          
                                                  for (var inst = 0; inst <= instances.length - 1; inst++) {
                                                      let icalObj = getState(instances[inst]).val;
                                          
                                                      if (icalObj) {
                                                          for (var i = 0; i <= icalObj.length - 1; i++) {
                                                              let item = icalObj[i];
                                          
                                                              let calendarName = item._class.split(' ')[0].replace('ical_', '');
                                          
                                                              // Objekt für Tabelle erzeugen
                                                              calList.push({
                                                                  farbe: `<div style="background: ${getMyCalendarColor(calendarName)}; width: 3px; height: 20px"></div>`,
                                                                  zeit: item.date,
                                                                  termin: item.event,
                                                                  kalender: calendarName,
                                                                  timestamp: Date.parse(item._date)
                                                              })
                                                          }
                                                      }
                                                  }
                                          
                                                  // Liste sort by timestamp asc
                                                  calList.sort(function (a, b) {
                                                      return a.timestamp == b.timestamp ? 0 : +(a.timestamp > b.timestamp) || -1;
                                                  });
                                          
                                                  // Enter the destination data point that is to be used as object ID in the widget
                                                  setState('0_userdata.0.ical', JSON.stringify(calList), true);
                                          
                                                  function getMyCalendarColor(calendarName) {
                                                      // assign colors via the calendar names, use calendar name as set in ical
                                                      if (calendarName === 'calendar1') {
                                                          return '#FF0000';
                                                      } else if (calendarName === 'calendar2') {
                                                          return '#44739e'
                                                      } else if (calendarName === 'calendar3') {
                                                          return '#32a852'
                                                      }
                                                  }
                                          
                                              } catch (e) {
                                                  console.error(`ical2MaterialDesignTableWidget: message: ${e.message}, stack: ${e.stack}`);
                                              }
                                          }
                                          
                                          ical2TableWidget();
                                          

                                          fc84b25f-c6f0-4b0b-b197-eefd74fdaa97-grafik.png

                                          Widget:

                                          [{"tpl":"tplVis-materialdesign-Table","data":{"oid":"0_userdata.0.ical","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","countCols":"3","tableLayout":"standard","showHeader":"true","headerTextSize":"headline6","showColumn0":"true","colType0":"text","textAlign0":"left","showColumn1":"true","colType1":"text","textAlign1":"left","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"showColumn2":"true","colType2":"text","textAlign2":"left","showColumn3":"true","colType3":"text","textAlign3":"left","label0":" ","label1":"Zeit","label2":"Termin","label3":"Kalender","columnWidth0":"0","sortKey1":"timestamp"},"style":{"left":"163px","top":"67px","width":"692px","height":"480px"},"widgetSet":"materialdesign"}]
                                          

                                          0 Offline
                                          0 Offline
                                          0018
                                          schrieb am zuletzt editiert von
                                          #83

                                          @scrounger sagte in Material Design Widgets: Table Widget:

                                          fc84b25f-c6f0-4b0b-b197-eefd74fdaa97-grafik.png

                                          Hi Scrounger,

                                          ist es möglich die heutigen Termine in einer anderen Schriftfarbe zu kennzeichnen?

                                          Mfg
                                          0018

                                          ScroungerS 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          580

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe