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. Skripten / Logik
  4. Brauche Hilfe bei einem Script für mein Material Design Vis

NEWS

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

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

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

Brauche Hilfe bei einem Script für mein Material Design Vis

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
1 Beiträge 1 Kommentatoren 208 Aufrufe
  • Ä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.
  • T Offline
    T Offline
    Torsten_MG
    schrieb am zuletzt editiert von
    #1

    Ich muß vorneweg sagen, dass ich absoluter Neuling in Sachen JS und Co bin und deshalb noch so meine schwierigkeiten mit dem verstehen habe.

    Ich habe mit Hilfe eines Scriptes welches ich hier im Forum gefunden und leicht angepasst habe

    `var idCal = "ical.0";
    var idCalTrigger   = idCal + ".data.trigger";
    var idCalTable     = idCal + ".data.table";
    var idCalHTML      = idCal + ".data.html";
    var idCalHTMLtable = idCal + ".html";
    
    createState(idCalHTMLtable, " ");
    
    function iCalToHTMLTable() {
        var html     = "";
        var calTable = getState(idCalTable);
        var inst     = getObject("system.adapter."+idCal);
        var instopt  = inst.native;
        var calendar = {};
    
        for (var i = 0; i < 9; i++) { 
            var entry = calTable.val[i];
            if ( entry._calName != calendar.name ) {
                calendar = {};
                for (var c = 0; c < instopt.calendars.length; c++ ) {
                    if (entry._calName == instopt.calendars[c].name ) {
                        calendar = instopt.calendars[c];
                        break;
                    }
                }
            }    
            html+="";
            html+/		if (calendar.name == "Schicht Tanja")
    			html+="";
    		else
    			html+="";
            html+/        html+="";
        }
        html+="
    
    | Zeit | Text | Kalendar |
    | --- | --- | --- |
    | "+entry.date+" | "+entry._calName+" | "+entry._calName+" | "+entry.event+" |
    
    ";    
        setState(idCalHTMLtable, html);    
    //dump( html );
    }
    
    on({id: idCalTable, change: "ne"}, function (obj) {
        iCalToHTMLTable();
    });
    
    schedule("5,35 * * * *", function () { iCalToHTMLTable(); });
    iCalToHTMLTable();`
    
    meine Darstellung wie folgt hinbekommen:
     ![9214_vis-md01.jpg](/assets/uploads/files/9214_vis-md01.jpg) 
    
    Gerne würde ich bei folgendem Kalender
     ![9214_vis-md02.jpg](/assets/uploads/files/9214_vis-md02.jpg) 
    
    das die Anzeige Restmüll, Verpackungen, Altpapier und Biotonne jeweils in einer anderen Farbe angezeigt werden, bekomme es aber leider nicht hin:
    `~~[code]~~var idCal = "ical.2";
    var idCalTrigger   = idCal + ".data.trigger";
    var idCalTable     = idCal + ".data.table";
    var idCalHTML      = idCal + ".data.html";
    var idCalHTMLtable = idCal + ".html";
    
    createState(idCalHTMLtable, " ");
    
    function iCalToHTMLTable() {
        var html     = "";
        var calTable = getState(idCalTable);
        var inst     = getObject("system.adapter."+idCal);
        var instopt  = inst.native;
        var calendar = {};
    
        for (var i = 0; i < 4; i++) { 
            var entry = calTable.val[i];
            if ( entry._calName != calendar.name ) {
                calendar = {};
                for (var c = 0; c < instopt.calendars.length; c++ ) {
                    if (entry._calName == instopt.calendars[c].name ) {
                        calendar = instopt.calendars[c];
                        break;
                    }
                }
            }    
            html+="";
            html+/        html+="";
            html+/        html+="";
        }
        html+="
    
    | Zeit | Text | Kalendar |
    | --- | --- | --- |
    | "+entry.date+" | "+entry._calName+" | "+entry.event+" |
    
    ";    
        setState(idCalHTMLtable, html);    
    //dump( html );
    }
    
    on({id: idCalTable, change: "ne"}, function (obj) {
        iCalToHTMLTable();
    });
    
    schedule("5,35 * * * *", function () { iCalToHTMLTable(); });
    iCalToHTMLTable();`
    
    bei jedem Versuch, den ich gestartet habe, kam es zu dem Ergebnis, dass die letzte Zeile nicht mehr Dargestellt wird.
    
    EDIT:
    
    Beim Aufruf von `~~[code]~~log(JSON.stringify(getState('ical.2.data.table').val));[/code]`
    
    Bekomme ich das ausgegeben:
    
    `~~[code]~~javascript.0 script.js.Test.Skript2: [{"date":"29.12.2018 ","event":"Restmüll (grau) // GEM","_class":"ical_Müllplan ical_tomorrow","_date":"2018-12-28T23:00:00.000Z","_end":"2018-12-29T23:00:00.000Z","_section":"","_IDID":"grau-2018-12-29@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"31.12.2018 ","event":"Verpackungen (gelb) // GEM","_class":"ical_Müllplan ical_3days","_date":"2018-12-30T23:00:00.000Z","_end":"2018-12-31T23:00:00.000Z","_section":"","_IDID":"gelb-2018-12-31@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"04.01.2019 ","event":"Restmüll (grau) // GEM","_class":"ical_Müllplan ical_oneweek","_date":"2019-01-03T23:00:00.000Z","_end":"2019-01-04T23:00:00.000Z","_section":"","_IDID":"grau-2019-01-04@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"07.01.2019 ","event":"Altpapier (blau) // GEM","_class":"ical_Müllplan ","_date":"2019-01-06T23:00:00.000Z","_end":"2019-01-07T23:00:00.000Z","_section":"","_IDID":"blau-2019-01-07@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"11.01.2019 ","event":"Bioabfall (braun) // GEM","_class":"ical_Müllplan ","_date":"2019-01-10T23:00:00.000Z","_end":"2019-01-11T23:00:00.000Z","_section":"","_IDID":"braun-2019-01-11@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"12.01.2019 ","event":"Grünschnitt //GEM","_class":"ical_Müllplan ","_date":"2019-01-11T23:00:00.000Z","_end":"2019-01-12T23:00:00.000Z","_section":"Weitere Informationen finden Sie unter https://www.mags.de/gruenschnitt/.","_IDID":"grün-2019-01-12@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"14.01.2019 ","event":"Verpackungen (gelb) // GEM","_class":"ical_Müllplan ","_date":"2019-01-13T23:00:00.000Z","_end":"2019-01-14T23:00:00.000Z","_section":"","_IDID":"gelb-2019-01-14@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"},{"date":"17.01.2019 ","event":"Restmüll (grau) // GEM","_class":"ical_Müllplan ","_date":"2019-01-16T23:00:00.000Z","_end":"2019-01-17T23:00:00.000Z","_section":"","_IDID":"grau-2019-01-17@mags.de","_allDay":true,"_rule":" ","location":"","_calName":"Müllplan"}][/code]`[/i][/code][/i]
    
    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

    677

    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