let dataInputPath = ""; const inhaltFarbe="#c6c3b3"; //"black" const inhaltHintergrund="#415a77"; //"lightgray" const monatFarbe="white"; //"yellow"; const hintergrund="#1b263b"; //"gray" const htmlFarbTableBorderColor="yellow"; const abstandZelle=6; const htmlRahmenLinien="all" const htmlSchriftgroessehtmlSchriftart="" //nicht verwendbar! const htmlFarbFelderschrift="red"; //nicht verwendbar! const htmlSchriftgroesse="15px"; const htmlSchriftart="Ubuntu-Light"; //"Ubuntu-Light"//"monospace"; //oder z.b. "Helvetica" const weite="1500px"; //oder "500px" let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+ abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+"; font-size:"+ htmlSchriftgroesse+"; font-family:"+htmlSchriftart+";\""; const varData={ Tiefstwert: { einheit:"°C", name:"Minimum Temperatur"}, Hoechstwert: { einheit:"°C", name:"Maximum Temperatur"}, Durchschnitt: { einheit:"°C", name:"Max. Ø Temperatur"}, Max_Windboe: { einheit:' km/h ', name:"Max Windböe"}, Regenmenge_Tag: { einheit:' l/m² ', name:"Max. Regen/Tag"}, Regenmenge_Monat: { einheit:' l/m² ', name:"Regen Monat"}, Schneehoehe: { einheit:' mm ', name:"Max. Schneehöhe"}, Sonne_Tag: { einheit:'', name:"Sonnenstd/Tag Std:Min"}, Sonne_Monat: { einheit:'', name:"Sonnenstd/Monat Std:Min"}, WarmeTage: { einheit:"", name:"Warme Tage (> 20°C)"}, SommerTage: { einheit:"", name:"Sommertage (> 25°C)"}, HeisseTage: { einheit:"", name:'Heiße Tage (> 30°C)'}, FrostTage: { einheit:"", name:"Frosttage (Min < 0°C)"}, KalteTage: { einheit:"", name:"Kalte Tage (Max < 10°C)"}, EisTage: { einheit:"", name:"Eistage (Max < 0°C)"}, SehrkalteTage: { einheit:"", name:"Sehr kalte Tage (Min < -10°C)"} } const monate = ["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]; //--------------------------nix mehr ändern ab hier-------------------------------------- let myObj; let myArrAll=[] let myArrErstellt=[] let tableContent; let monWahlVIS; let lastThree; let aktMonat = new Date().getMonth(); let max_wert = []; let wert_min = 99; let wert_max = -99; //---------------------------------------------------------------------------------------- function dataStuff() { let myArrAll=[] let mySelector=dataInputPath + '.Monate.*' $(mySelector).each(function(id, i) { let ida=id.split("."); let lang=ida.length; let jahri=lang-3; let moni=lang-1; let obj2 = { jahr: ida[jahri]}; let obj3 = { monat: ida[moni]}; let helper = JSON.parse(getState(id).val); helper={ ...helper, ...obj2, ...obj3} myArrAll.push(JSON.stringify(helper)) }); tableContent = "" myObj=JSON.parse("["+myArrAll.toString()+"]") if (lastThree==0) { //KOPFZEILE let choseMonth=monate[monWahlVIS-1] let choseMonthArr=choseMonth.split(' ') let Jahrtext="" for (let i=0; i'+Jahrtext+'Wetterwerte' for (let i=0;i' + myObj[i].jahr+'' } }; tableContent=""+tableContent+"" //RESTZEILEN for(var index in varData) { tableContent+=''+varData[index].name+'' for (let i=0; i' + myObj[i][index] + '' } }; tableContent=""+tableContent+""; } } //lastThree else { myObj.sort(function (alpha, beta) { if (parseInt(alpha.monat) > parseInt(beta.monat)) return 1; if (parseInt(beta.monat) > parseInt(alpha.monat)) return -1; return 0; }); //KOPFZEILE LASTTHREE let choseJahr=lastThree.toString(); let choseMonthArr=choseJahr.split(''); let test="" for (let i=0; i'+test+'Wetterwerte' for (let i=0; i' + monate[parseInt(myObj[i].monat)-1]+''; } }; tableContent=""+tableContent+"" let testFarbe = inhaltHintergrund; //Beginn Min_Max let wert; max_wert = []; let x = 0; for(var index in varData) { wert_min = 99.0; wert_max = -99.0; let istWert; for (let i = 0; i < myObj.length; i++) { if (myObj[i][index].indexOf(' ') != -1) { //Datum vorhanden let a_altWert = myObj[i][index].split(' '); istWert = parseFloat(a_altWert[0]); } else { //Datum nicht vorhanden istWert = parseFloat(myObj[i][index]); }; if (x == 0) { if (wert_min > istWert) { wert_min = istWert wert = wert_min; }; } else { if (istWert > wert_max) { wert_max = istWert wert = wert_max; }; }; }; max_wert.push(wert); x ++; }; //Ende Min_Max //RESTZEILEN x = 0; for(var index in varData) { tableContent+=''+varData[index].name+'' for (let i=0; i' tableContent += ausgabe + teinheit + '' } }; tableContent=""+tableContent+"" if (testFarbe == inhaltHintergrund) { testFarbe = '#1b263b'; } else { testFarbe = inhaltHintergrund; }; x ++; } } tableContent = '<'+myTable+' >'+tableContent+'' //log(tableContent) setState("0_userdata.0.vis.Wetter.Daten.tempDaten.Tabelle_Jahr",tableContent) let temp = getState('0_userdata.0.vis.Wetter.Auswahl_Monat').val; setState('0_userdata.0.vis.Wetter.Auswahl_Monat', temp, true); } //-------------------------------------------------------------------------------------------------- function main() { lastThree = getState("0_userdata.0.vis.Wetter.Auswahl_Jahr").val; dataInputPath = "0_userdata.0.vis.Wetter.Daten." + lastThree; dataStuff(); } //----------------------------------------------------------------------------------------------------- function minToStd(minuten) { let stunde = ''; let minute = ''; let ausgabe = '-'; if (minuten > 0 ) { let tmpStd = parseInt(minuten / 60); let tmpMin = minuten - (tmpStd * 60); if (tmpStd < 10) { stunde = '0' + tmpStd.toString(); } else { stunde = tmpStd.toString(); }; if (tmpMin < 10) { minute = '0' + tmpMin.toString(); } else { minute = tmpMin.toString(); }; ausgabe = stunde + ':' + minute; }; if (ausgabe != '-') { ausgabe = ausgabe; }; return ausgabe }; on({id: "0_userdata.0.vis.Wetter.Auswahl_Jahr", change: "any"}, function (obj) { main() });