var pfad= "Garten.Rasenmäher.Editor."; var jpfad= "javascript.0."+ pfad; on({id: jpfad+ "Maehzeiten"/*Tag*/, change: "ne"}, function (obj) { var myJson = JSON.parse(getState(jpfad+ "Maehzeiten").val); var idKdienst = "Garten.Rasenmäher.Maehplan"; createState(idKdienst, "", { name: 'Maehplan JSON für VIS Widget', desc: 'Marhplan JSON für VIS Widget', type: 'string', role: 'value', unit: '' }); function setX (aktivBool) { return (aktivBool) ? "x" : ""; } function setKDienst (line,arg) { var kDienst = {"0":"M","1":"V","2":"---"}; var text; if(arg === 0){ text=""+line+""; } else{ text=line; } return text; } function fillStr(n, str) { // liefere Anzahl n nbsp in utf-8, wenn str nicht angegeben oder n-mal str var fill = ""; for (var i = 0; i < n; ++i) { fill += ((!str) ? " " : str); //   als utf-8 Code (Mac: alt+Leerzeichen) } return fill; } function fillTime(stundeStr,minuteStr) { // baut den Zeitstring und füllt Stunde und Minute auf zweistellig auf var text=""; text = (parseInt(stundeStr) < 10 ? "0"+ parseInt(stundeStr) : parseInt(stundeStr))+ ":" + (parseInt(minuteStr) < 10 ? "0"+ parseInt(minuteStr) : parseInt(minuteStr)); //return fillStr(2 - stundeStr.length,"0") + stundeStr + ":" + fillStr(2 - minuteStr.length,"0") + minuteStr; return text; } function buildJson() { var tabelle = []; var tempJson ={}; var woTag = ["So","Mo","Di","Mi","Do","Fr","Sa"]; for (var i = 1; i <= 7; i++) { if (i===7) {i=0;} tempJson = myJson[(i).toString()]; tabelle.push({ "Tag" : woTag[i], "Cut1" : setKDienst (fillTime(tempJson.Cut1.stunde,tempJson.Cut1.minute),tempJson.Cut1.dauer),//fillTime(tempJson.Cut1.stunde,tempJson.Cut1.minute), "Cut1_time" : tempJson.Cut1.dauer, "Cut2" : setKDienst (fillTime(tempJson.Cut2.stunde,tempJson.Cut2.minute),tempJson.Cut2.dauer), "Cut2_time" : tempJson.Cut2.dauer, "BorderCut" : setX(tempJson.Optionen.BorderCut), "Active" : setX(tempJson.Optionen.Active) }); if (i===0) {i=7;} } return tabelle; } function main () { log(JSON.stringify(buildJson())); setState("javascript." + instance + "." + idKdienst,JSON.stringify(buildJson())); } main; // Beim Skriptstart JSON-Tabelle für VIS Widget erstellen setTimeout(main,2000); });