// jshint maxerr:1000 const dp_clock_html = '0_userdata.0.Zeit.clock_html'; fctInit(); function fctInit(){ if(!existsState(dp_clock_html)) { createState(dp_clock_html, {type: 'string', name: 'clock_html', role: 'value', read: true , write: true} ); } setStateDelayed(dp_clock_html, fctClock(), 1000); schedule("*/10 * * * * *", function () { setState(dp_clock_html, fctClock()); }) } function fctClock() { let str_Uhrzeit = String(formatDate(new Date(), "hh:mm")); let str_Datum = String(formatDate(new Date(), "DD.MM.YYYY")); let str_Wochentag = String(formatDate(new Date(), "WW", "de")); let ip = '192.x.x.x'; //let str_color_body = getState('0_userdata.0.Zeit.HTML_Hintergrundfarbe').val; //let str_color_font = getState('0_userdata.0.Zeit.HTML_Schriftfarbe_Uhr').val; let css_file = 'http://' + ip + ':8082/iqontrol.meta/clock.css' let js_file = 'http://' + ip + ':8082/iqontrol.meta/clock.js' let str_Tageszeit = 'Tag'; let str_HTML = ''; let str_HTML_head = ''; let str_HTML_waste = ''; let str_Restabfall = ''; let str_Papiertonne = ''; let str_Gelber_Sack = ''; let img_Wetter = './../iqontrol.meta/userimages/usericons/wetter/'; let img_Restabfall = ''; let img_Papiertonne = ''; let img_Gelber_Sack = ''; let img_Garbage_Truck = ''; let cnt_waste = 0; let show_waste; show_waste = false; if (show_waste == true){ img_Restabfall = './../iqontrol.meta/userimages/usericons/Abfallentsorgung/Restabfall_Tonne.png'; img_Papiertonne = './../iqontrol.meta/userimages/usericons/Abfallentsorgung/Papier_Tonne.png'; img_Gelber_Sack = './../iqontrol.meta/userimages/usericons/Abfallentsorgung/Gelbe_Tonne.png'; img_Garbage_Truck = './../iqontrol.meta/userimages/usericons/Abfallentsorgung/Garbage_Truck.png'; str_Restabfall = getState('0_userdata.0.Abfallentsorgung.Restabfall').val; str_Papiertonne = getState('0_userdata.0.Abfallentsorgung.Papiertonne').val; str_Gelber_Sack = getState('0_userdata.0.Abfallentsorgung.Gelber_Sack').val; } /* ########################################################################## HTML Kopf zusammenbauen inklusive Import der CSS-Styles und Java-Skripte ########################################################################## */ str_HTML_head = str_HTML_head + ''; str_HTML_head = str_HTML_head + ''; str_HTML_head = str_HTML_head + ''; str_HTML_head = str_HTML_head + ''; /* ########################################################################## Pruefen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen --> das ASTRO Skript muss laufen, sonst ist der Datenpunkt 'javascript.0.Astro.Tageszeit.current' nicht aktuell ########################################################################## */ if(existsState('javascript.0.Astro.Tageszeit.current')) { switch (getState('javascript.0.Astro.Tageszeit.current').val){ case "Sonnenuntergang": case "Abenddämmerung": case "Nacht": case "Morgendämmerung": str_Tageszeit = 'Nacht'; break; default: break; } } /* ########################################################################## Ab hier werden die verschiedenen HTML Flex Container zusammengebaut ########################################################################## Box 1 = Uhrzeit und Wettersymbol */ str_HTML = str_HTML_head + '
'; str_HTML = str_HTML + '' + str_Uhrzeit + ' Uhr'; if (str_Tageszeit == 'Tag'){ str_HTML = str_HTML + ''; }else{ str_HTML = str_HTML + ''; } str_HTML = str_HTML + '
'; /* Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten */ str_HTML = str_HTML + '
'; str_HTML = str_HTML + '
'; str_HTML = str_HTML + '' + str_Wochentag + '
' + str_Datum + '
'; str_HTML = str_HTML + '
'; if (show_waste == true){ str_HTML_waste = str_HTML_waste + '
'; if ((str_Restabfall == 'heute') || (str_Restabfall == 'morgen')){ cnt_waste++; str_HTML_waste = str_HTML_waste + ''; } if ((str_Papiertonne == 'heute') || (str_Papiertonne == 'morgen')){ cnt_waste++; str_HTML_waste = str_HTML_waste + ''; } if ((str_Gelber_Sack == 'heute') || (str_Gelber_Sack == 'morgen')){ cnt_waste++; str_HTML_waste = str_HTML_waste + ''; } if (cnt_waste == 0){ str_HTML_waste = str_HTML_waste + ''; } str_HTML_waste = str_HTML_waste + '
'; str_HTML = str_HTML + str_HTML_waste; } str_HTML = str_HTML + '
'; str_HTML = str_HTML + '' + Math.round(getState('linkeddevices.0.Außenbereich.Sensoren.Temperatur').val) + '°C'; if (str_Tageszeit == 'Tag'){ str_HTML = str_HTML + '' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + ''; }else{ str_HTML = str_HTML + '' + str_Tageszeit + ''; } str_HTML = str_HTML + '
'; str_HTML = str_HTML + '
'; /* Box 3 = Wettervorschau */ str_HTML = str_HTML + '
'; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; /* str_HTML = str_HTML + ''; */ str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; /* str_HTML = str_HTML + ''; */ str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; /* str_HTML = str_HTML + ''; */ str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; /* str_HTML = str_HTML + ''; */ str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; /* str_HTML = str_HTML + ''; */ str_HTML = str_HTML + ''; str_HTML = str_HTML + ''; str_HTML = str_HTML + '
Heute' + getState('daswetter.0.NextHours.Location_1.Day_1.tempmin_value').val + '°C bis '; str_HTML = str_HTML + getState('daswetter.0.NextHours.Location_1.Day_1.tempmax_value').val + '°C' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '
' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '' + getState('daswetter.0.NextHours.Location_1.Day_2.tempmin_value').val + '°C bis '; str_HTML = str_HTML + getState('daswetter.0.NextHours.Location_1.Day_2.tempmax_value').val + '°C' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '
' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '' + getState('daswetter.0.NextHours.Location_1.Day_3.tempmin_value').val + '°C bis '; str_HTML = str_HTML + getState('daswetter.0.NextHours.Location_1.Day_3.tempmax_value').val + '°C' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '
' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '' + getState('daswetter.0.NextHours.Location_1.Day_4.tempmin_value').val + '°C bis '; str_HTML = str_HTML + getState('daswetter.0.NextHours.Location_1.Day_4.tempmax_value').val + '°C' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '
' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '' + getState('daswetter.0.NextHours.Location_1.Day_5.tempmin_value').val + '°C bis '; str_HTML = str_HTML + getState('daswetter.0.NextHours.Location_1.Day_5.tempmax_value').val + '°C' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '
'; str_HTML = str_HTML + '
'; return str_HTML; }