Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

Scheduled Pinned Locked Moved Tester
appdark-modeiqontrolresponsivevisvisualisierungvisualizationwidget
7.6k Posts 296 Posters 7.1m Views 201 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B blackeagle998

    @dslraser
    Echt ne schicke View!
    Sollte dich der blaue Hintergrund der Uhr-Kachel stören, sag Bescheid, dann machen wir das transparent und die Schriftfarbe weiß. Würde bestimmt auch cool aussehen.

    dslraserD Offline
    dslraserD Offline
    dslraser
    Forum Testing Most Active
    wrote on last edited by
    #3672

    @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

    @dslraser
    Echt ne schicke View!
    Sollte dich der blaue Hintergrund der Uhr-Kachel stören, sag Bescheid, dann machen wir das transparent und die Schriftfarbe weiß. Würde bestimmt auch cool aussehen.

    Danke, in der View sind ja auch Deine Sachen dabei.👍
    Deine Vorschläge würde ich gern probieren. (ich nutze die Version ohne Müll usw. Brauchst Du das Script in Kopie ?)

    B 1 Reply Last reply
    0
    • dslraserD dslraser

      @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

      @dslraser
      Echt ne schicke View!
      Sollte dich der blaue Hintergrund der Uhr-Kachel stören, sag Bescheid, dann machen wir das transparent und die Schriftfarbe weiß. Würde bestimmt auch cool aussehen.

      Danke, in der View sind ja auch Deine Sachen dabei.👍
      Deine Vorschläge würde ich gern probieren. (ich nutze die Version ohne Müll usw. Brauchst Du das Script in Kopie ?)

      B Offline
      B Offline
      blackeagle998
      wrote on last edited by
      #3673

      @dslraser
      Ja, die Kopie brauche ich bitte, sonst komme ich nur durcheinander und dann funktioniert am Ende nichts :-)

      dslraserD 1 Reply Last reply
      0
      • dslraserD dslraser

        @s-bormann sagte in Test Adapter iQontrol 1.4.x:

        Versuch mal die aktuelle Github-Version

        Jetzt sind die kleinen Icon schön dicht untereinander. 👍
        Ich habe in meiner Ansicht bei Listen inaktive Kacheln versteckt. Es passen sechs Kacheln in eine Reihe, danach habe ich NZ (neue Zeile) gemacht. Ist das so gewollt, das dann der "leere Platz" reserviert ist, oder könnte auch das Icon aus der neuen Zeile da hin rutschen ?

        Screenshot_20201102-222950_Chrome.jpg

        da_WoodyD Offline
        da_WoodyD Offline
        da_Woody
        wrote on last edited by
        #3674

        @dslraser jau, sieht echt geil aus! in welcher px grösse hast du deine icons gespeichert?

        gruß vom Woody
        HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

        1 Reply Last reply
        0
        • B blackeagle998

          @dslraser
          Ja, die Kopie brauche ich bitte, sonst komme ich nur durcheinander und dann funktioniert am Ende nichts :-)

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          wrote on last edited by dslraser
          #3675

          @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

          Ja, die Kopie brauche ich bitte, sonst komme ich nur durcheinander und dann funktioniert am Ende nichts

          ich nutze aktuell dieses Script

          
          const DP_Uhr_digital 				= '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7_neu';
          const DP_Wetter_Vorschau 			= '0_userdata.0.Uhr.Wetter_Vorschau';
          const DP_Wetter_Vorschau_Trigger	= '0_userdata.0.Uhr.Wetter_Vorschau_Trigger';
          
          fctInit();
          
          on({id:DP_Wetter_Vorschau_Trigger, val:true} , function (dp) {
            if (getState(DP_Wetter_Vorschau).val){
                setState(DP_Wetter_Vorschau, false);
            }else{
                setState(DP_Wetter_Vorschau, true);
            }
          });
          
          function fctInit(){
          if(!existsState(DP_Uhr_digital)) {
              createState(DP_Uhr_digital,
                  {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
              );
          }
          if(!existsState(DP_Wetter_Vorschau_Trigger)) {
              createState(DP_Wetter_Vorschau_Trigger,
                  {type: 'boolean', name: 'Wetter Vorschau Trigger', role: 'button', read: false , write: true}
              );
          }
          if(!existsState(DP_Wetter_Vorschau)) {
              createState(DP_Wetter_Vorschau,
                  {type: 'boolean', name: 'Wetter Vorschau', role: 'switch', read: true , write: true, def: false}
              );
          }
          setStateDelayed(DP_Uhr_digital, fctUhrzeitDatumWetter_V7(), 1000);
          schedule("*/10 * * * * *", function () {
              setState(DP_Uhr_digital, fctUhrzeitDatumWetter_V7());
          })
          }
          
          function fctUhrzeitDatumWetter_V7() {
          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 str_color_body      = '#005c78';
          let str_color_cell      = '#47575c';
          let str_color_font      = 'Silver';
          
          let str_position_font   = 'left'
          let str_Tageszeit       = 'Tag';
          let str_html            = '';
          let str_html_head       = '';
          let image_Wetter_Pfad   = './../iqontrol.meta/userimages/usericons/wetter/';
          
          // ##########################################################################
          // CSS Style (Formatierung der HTML Elemente)
          // ##########################################################################
          str_html_head = str_html_head + '<head><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">';
          str_html_head = str_html_head + '<style>';
          str_html_head = str_html_head + 'body {';
          str_html_head = str_html_head + 'background-color:' + str_color_body + ';';
          str_html_head = str_html_head + '}';
          
          str_html_head = str_html_head + 'span {';
          //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
          //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
          //Textausrichtung
          str_html_head = str_html_head + 'text-align:' + str_position_font + ';';
          //Schriftfarbe
          str_html_head = str_html_head + 'color:' + str_color_font + ';';
          //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
          //str_html_head = str_html_head + 'background-color:' + str_color_cell + ';';
          str_html_head = str_html_head + '}';
          
          str_html_head = str_html_head + 'td {';
          str_html_head = str_html_head + 'border-width:1px;';
          str_html_head = str_html_head + 'border-style:solid;';
          str_html_head = str_html_head + 'border-color:black;';
          str_html_head = str_html_head + '}';
          
          str_html_head = str_html_head + '.container_column {';
          str_html_head = str_html_head + 'display:flex;';
          //Elemente werden untereinander dargestellt
          str_html_head = str_html_head + 'flex-direction: column;';
          str_html_head = str_html_head + 'justify-content: flex-start;';
          //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
          //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
          str_html_head = str_html_head + '}';
          
          str_html_head = str_html_head + '.container_row {';
          str_html_head = str_html_head + 'display: flex;';
          //Elemente werden untereinander dargestellt
          str_html_head = str_html_head + 'flex-direction: row;';
          str_html_head = str_html_head + 'justify-content: space-between;';
          //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
          //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
          str_html_head = str_html_head + '}';
          
          str_html_head = str_html_head + 'input {';
          str_html_head = str_html_head + 'height:10vw;';
          str_html_head = str_html_head + 'width:10vw;';
          str_html_head = str_html_head + '}';
          
          str_html_head = str_html_head + '.img_wetter {';
          str_html_head = str_html_head + 'height:15vw;';
          str_html_head = str_html_head + 'width:15vw;';
          str_html_head = str_html_head + '}';
          
          //Hier habt ihr die Möglichkeit, CSS Eigenschaften für jede Box einzeln einzutragen.
          //Bspw. könnt ihr hier eine separate Hintergrundfarbe einstellen.
          //Außerdem steuert ihr hier die Schriftgrößen der einzelnen Boxen
          str_html_head = str_html_head + '.box_uhr {font-size:14vmax;}';
          str_html_head = str_html_head + '.box_datum {font-size:4vmax;text-align:center;}';
          str_html_head = str_html_head + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
          
          str_html_head = str_html_head + '.table_Wettervorschau {';
          str_html_head = str_html_head + 'margin-top:3vw;';
          str_html_head = str_html_head + 'border-collapse: collapse;';
          str_html_head = str_html_head + 'font-size:3vmax;';
          str_html_head = str_html_head + 'color:' + str_color_font + ';';
          str_html_head = str_html_head + '}';
          str_html_head = str_html_head + '</style>';
          str_html_head = str_html_head + '<script type="text/javascript">';
          str_html_head = str_html_head + 'function setState(stateId, value){';
          str_html_head = str_html_head + 'sendPostMessage("setState", stateId, value);';
          str_html_head = str_html_head + '}';
          str_html_head = str_html_head + 'function sendPostMessage(command, stateId, value){';
          str_html_head = str_html_head + 'message = { command: command, stateId: stateId, value: value};';
          str_html_head = str_html_head + 'window.parent.postMessage(message, "*");';
          str_html_head = str_html_head + '}';
          str_html_head = str_html_head + '</script>';
          str_html_head = str_html_head + '</head>';
          
          // ##########################################################################
          // Prüfen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen
          // ##########################################################################
          //Wenn ihr den nachfolgenden Datenpunkt 'javascript.0.Astro.Tageszeit.current' auch habt, könnt ihr das einkommentieren --> /* und */ löschen
          //--> dafür gibt es ein ASTRO Skript hier im Forum
          /*
          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 + str_html_head + '<div class="container_row">';
          str_html = str_html + '<span class="box_uhr"><b>' + str_Uhrzeit + ' Uhr</b></span>';
          if (str_Tageszeit == 'Tag'){
                str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '" />';
          }else{
                str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '" />';
          }
          str_html = str_html + '</div>';
          
          //Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten
          str_html = str_html + '<div class="container_row">';
          str_html = str_html + '<div class="container_column">';
          str_html = str_html + '<span class="box_datum"><b><i>' + str_Wochentag + ', ' + str_Datum + '</i></b></span>';
          str_html = str_html + '</div>';
          str_html = str_html + '<div class="container_column">';
          str_html = str_html + '<span class="box_wetter"><b><i>' + Math.round(getState('hm-rpc.0.0010D8A98AD4AC.1.ACTUAL_TEMPERATURE'/*Temperatursensor aussen ACTUAL TEMPERATURE*/).val) + '°C</i></b></span>';
          if (str_Tageszeit == 'Tag'){
              str_html = str_html + '<span class="box_wetter"><i>' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + '</i></span>';
          }else{
              str_html = str_html + '<span class="box_wetter"><i>' + str_Tageszeit + '</i></span>';
          }
          
          str_html = str_html + '</div>';
          str_html = str_html + '</div>';
          
          //Box 3 = Wettervorschau
          str_html = str_html + '<div class="container_column">';
          str_html = str_html + '<table class="table_Wettervorschau">';
          
          str_html = str_html + '<tr>';
          str_html = str_html + '<td>heute</td>';
          str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_value').val + '.png' + '"/></td>';
          str_html = str_html + '<td nowrap>' + 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</td>';
          //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%</td>';
          str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '</td>';
          str_html = str_html + '</tr>';
          
          str_html = str_html + '<tr>';
          str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '</td>';
          str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_value').val + '.png' + '"/></td>';
          str_html = str_html + '<td nowrap>' + 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</td>';
          //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%</td>';
          str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '</td>';
          str_html = str_html + '</tr>';
          
          str_html = str_html + '<tr>';
          str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '</td>';
          str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_value').val + '.png' + '"/></td>';
          str_html = str_html + '<td nowrap>' + 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</td>';
          //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%</td>';
          str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '</td>';
          str_html = str_html + '</tr>';
          
          str_html = str_html + '<tr>';
          str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '</td>';
          str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_value').val + '.png' + '"/></td>';
          str_html = str_html + '<td nowrap>' + 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</td>';
          //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%</td>';
          str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '</td>';
          str_html = str_html + '</tr>';
          
          str_html = str_html + '<tr>';
          str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '</td>';
          str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_value').val + '.png' + '"/></td>';
          str_html = str_html + '<td nowrap>' + 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</td>';
          //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%</td>';
          str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '</td>';
          str_html = str_html + '</tr>';
          
          str_html = str_html + '</table>';
          str_html = str_html + '</div>';
          
          return str_html;
          }
          
          
          

          In meinen Listen nutze ich aktuell Die Überschrift auch in weiß und Border und inaktive Geräte ist die Schriftfarbe : silver. Der Hintergrund ist in #424242

          Beispiel Liste

          Screenshot_20201103-131357_Chrome.jpg

          B S 2 Replies Last reply
          0
          • dslraserD dslraser

            @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

            Ja, die Kopie brauche ich bitte, sonst komme ich nur durcheinander und dann funktioniert am Ende nichts

            ich nutze aktuell dieses Script

            
            const DP_Uhr_digital 				= '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7_neu';
            const DP_Wetter_Vorschau 			= '0_userdata.0.Uhr.Wetter_Vorschau';
            const DP_Wetter_Vorschau_Trigger	= '0_userdata.0.Uhr.Wetter_Vorschau_Trigger';
            
            fctInit();
            
            on({id:DP_Wetter_Vorschau_Trigger, val:true} , function (dp) {
              if (getState(DP_Wetter_Vorschau).val){
                  setState(DP_Wetter_Vorschau, false);
              }else{
                  setState(DP_Wetter_Vorschau, true);
              }
            });
            
            function fctInit(){
            if(!existsState(DP_Uhr_digital)) {
                createState(DP_Uhr_digital,
                    {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
                );
            }
            if(!existsState(DP_Wetter_Vorschau_Trigger)) {
                createState(DP_Wetter_Vorschau_Trigger,
                    {type: 'boolean', name: 'Wetter Vorschau Trigger', role: 'button', read: false , write: true}
                );
            }
            if(!existsState(DP_Wetter_Vorschau)) {
                createState(DP_Wetter_Vorschau,
                    {type: 'boolean', name: 'Wetter Vorschau', role: 'switch', read: true , write: true, def: false}
                );
            }
            setStateDelayed(DP_Uhr_digital, fctUhrzeitDatumWetter_V7(), 1000);
            schedule("*/10 * * * * *", function () {
                setState(DP_Uhr_digital, fctUhrzeitDatumWetter_V7());
            })
            }
            
            function fctUhrzeitDatumWetter_V7() {
            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 str_color_body      = '#005c78';
            let str_color_cell      = '#47575c';
            let str_color_font      = 'Silver';
            
            let str_position_font   = 'left'
            let str_Tageszeit       = 'Tag';
            let str_html            = '';
            let str_html_head       = '';
            let image_Wetter_Pfad   = './../iqontrol.meta/userimages/usericons/wetter/';
            
            // ##########################################################################
            // CSS Style (Formatierung der HTML Elemente)
            // ##########################################################################
            str_html_head = str_html_head + '<head><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">';
            str_html_head = str_html_head + '<style>';
            str_html_head = str_html_head + 'body {';
            str_html_head = str_html_head + 'background-color:' + str_color_body + ';';
            str_html_head = str_html_head + '}';
            
            str_html_head = str_html_head + 'span {';
            //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
            //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
            //Textausrichtung
            str_html_head = str_html_head + 'text-align:' + str_position_font + ';';
            //Schriftfarbe
            str_html_head = str_html_head + 'color:' + str_color_font + ';';
            //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
            //str_html_head = str_html_head + 'background-color:' + str_color_cell + ';';
            str_html_head = str_html_head + '}';
            
            str_html_head = str_html_head + 'td {';
            str_html_head = str_html_head + 'border-width:1px;';
            str_html_head = str_html_head + 'border-style:solid;';
            str_html_head = str_html_head + 'border-color:black;';
            str_html_head = str_html_head + '}';
            
            str_html_head = str_html_head + '.container_column {';
            str_html_head = str_html_head + 'display:flex;';
            //Elemente werden untereinander dargestellt
            str_html_head = str_html_head + 'flex-direction: column;';
            str_html_head = str_html_head + 'justify-content: flex-start;';
            //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
            //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
            str_html_head = str_html_head + '}';
            
            str_html_head = str_html_head + '.container_row {';
            str_html_head = str_html_head + 'display: flex;';
            //Elemente werden untereinander dargestellt
            str_html_head = str_html_head + 'flex-direction: row;';
            str_html_head = str_html_head + 'justify-content: space-between;';
            //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
            //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
            str_html_head = str_html_head + '}';
            
            str_html_head = str_html_head + 'input {';
            str_html_head = str_html_head + 'height:10vw;';
            str_html_head = str_html_head + 'width:10vw;';
            str_html_head = str_html_head + '}';
            
            str_html_head = str_html_head + '.img_wetter {';
            str_html_head = str_html_head + 'height:15vw;';
            str_html_head = str_html_head + 'width:15vw;';
            str_html_head = str_html_head + '}';
            
            //Hier habt ihr die Möglichkeit, CSS Eigenschaften für jede Box einzeln einzutragen.
            //Bspw. könnt ihr hier eine separate Hintergrundfarbe einstellen.
            //Außerdem steuert ihr hier die Schriftgrößen der einzelnen Boxen
            str_html_head = str_html_head + '.box_uhr {font-size:14vmax;}';
            str_html_head = str_html_head + '.box_datum {font-size:4vmax;text-align:center;}';
            str_html_head = str_html_head + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
            
            str_html_head = str_html_head + '.table_Wettervorschau {';
            str_html_head = str_html_head + 'margin-top:3vw;';
            str_html_head = str_html_head + 'border-collapse: collapse;';
            str_html_head = str_html_head + 'font-size:3vmax;';
            str_html_head = str_html_head + 'color:' + str_color_font + ';';
            str_html_head = str_html_head + '}';
            str_html_head = str_html_head + '</style>';
            str_html_head = str_html_head + '<script type="text/javascript">';
            str_html_head = str_html_head + 'function setState(stateId, value){';
            str_html_head = str_html_head + 'sendPostMessage("setState", stateId, value);';
            str_html_head = str_html_head + '}';
            str_html_head = str_html_head + 'function sendPostMessage(command, stateId, value){';
            str_html_head = str_html_head + 'message = { command: command, stateId: stateId, value: value};';
            str_html_head = str_html_head + 'window.parent.postMessage(message, "*");';
            str_html_head = str_html_head + '}';
            str_html_head = str_html_head + '</script>';
            str_html_head = str_html_head + '</head>';
            
            // ##########################################################################
            // Prüfen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen
            // ##########################################################################
            //Wenn ihr den nachfolgenden Datenpunkt 'javascript.0.Astro.Tageszeit.current' auch habt, könnt ihr das einkommentieren --> /* und */ löschen
            //--> dafür gibt es ein ASTRO Skript hier im Forum
            /*
            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 + str_html_head + '<div class="container_row">';
            str_html = str_html + '<span class="box_uhr"><b>' + str_Uhrzeit + ' Uhr</b></span>';
            if (str_Tageszeit == 'Tag'){
                  str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '" />';
            }else{
                  str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '" />';
            }
            str_html = str_html + '</div>';
            
            //Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten
            str_html = str_html + '<div class="container_row">';
            str_html = str_html + '<div class="container_column">';
            str_html = str_html + '<span class="box_datum"><b><i>' + str_Wochentag + ', ' + str_Datum + '</i></b></span>';
            str_html = str_html + '</div>';
            str_html = str_html + '<div class="container_column">';
            str_html = str_html + '<span class="box_wetter"><b><i>' + Math.round(getState('hm-rpc.0.0010D8A98AD4AC.1.ACTUAL_TEMPERATURE'/*Temperatursensor aussen ACTUAL TEMPERATURE*/).val) + '°C</i></b></span>';
            if (str_Tageszeit == 'Tag'){
                str_html = str_html + '<span class="box_wetter"><i>' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + '</i></span>';
            }else{
                str_html = str_html + '<span class="box_wetter"><i>' + str_Tageszeit + '</i></span>';
            }
            
            str_html = str_html + '</div>';
            str_html = str_html + '</div>';
            
            //Box 3 = Wettervorschau
            str_html = str_html + '<div class="container_column">';
            str_html = str_html + '<table class="table_Wettervorschau">';
            
            str_html = str_html + '<tr>';
            str_html = str_html + '<td>heute</td>';
            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_value').val + '.png' + '"/></td>';
            str_html = str_html + '<td nowrap>' + 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</td>';
            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%</td>';
            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '</td>';
            str_html = str_html + '</tr>';
            
            str_html = str_html + '<tr>';
            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '</td>';
            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_value').val + '.png' + '"/></td>';
            str_html = str_html + '<td nowrap>' + 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</td>';
            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%</td>';
            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '</td>';
            str_html = str_html + '</tr>';
            
            str_html = str_html + '<tr>';
            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '</td>';
            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_value').val + '.png' + '"/></td>';
            str_html = str_html + '<td nowrap>' + 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</td>';
            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%</td>';
            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '</td>';
            str_html = str_html + '</tr>';
            
            str_html = str_html + '<tr>';
            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '</td>';
            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_value').val + '.png' + '"/></td>';
            str_html = str_html + '<td nowrap>' + 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</td>';
            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%</td>';
            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '</td>';
            str_html = str_html + '</tr>';
            
            str_html = str_html + '<tr>';
            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '</td>';
            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_value').val + '.png' + '"/></td>';
            str_html = str_html + '<td nowrap>' + 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</td>';
            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%</td>';
            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '</td>';
            str_html = str_html + '</tr>';
            
            str_html = str_html + '</table>';
            str_html = str_html + '</div>';
            
            return str_html;
            }
            
            
            

            In meinen Listen nutze ich aktuell Die Überschrift auch in weiß und Border und inaktive Geräte ist die Schriftfarbe : silver. Der Hintergrund ist in #424242

            Beispiel Liste

            Screenshot_20201103-131357_Chrome.jpg

            B Offline
            B Offline
            blackeagle998
            wrote on last edited by blackeagle998
            #3676

            @dslraser
            Ändere mal bitte diese drei Zeilen

            let str_color_body      = '#005c78';
            let str_color_cell      = '#47575c';
            let str_color_font      = 'Silver';
            

            in

            let str_color_body      = 'rgba(0, 92, 120, 0)';
            let str_color_cell      = 'rgba(71, 87, 92, 0)';
            let str_color_font      = 'rgba(255, 255, 255, 1)';
            

            Hinweis:
            rgba(255, 255, 255, 1) = weiß, silber wäre (192, 192, 192, 1)

            Die 0 bzw. 1 am Ende gibt die Deckkraft (opacity) an, 1 = 100%, bei 0 sollte der Hintergrund also unsichtbar sein.
            Außerdem kannst du bei der Tabellenformatierung der Wettervorschau noch die Schriftfarbe von "black" in "silver" ändern, das wäre dann in diesem Abschnitt:

            str_html_head = str_html_head + 'td {';
            str_html_head = str_html_head + 'border-width:1px;';
            str_html_head = str_html_head + 'border-style:solid;';
            str_html_head = str_html_head + 'border-color:black;';
            str_html_head = str_html_head + '}';
            

            Für weiß wäre das dann --> border-color:rgba(255, 255, 255, 1);
            Für Silber wäre das dann --> border-color:rgba(192, 192, 192, 1);

            Probier mal ob's klappt.

            dslraserD 2 Replies Last reply
            0
            • B blackeagle998

              @dslraser
              Ändere mal bitte diese drei Zeilen

              let str_color_body      = '#005c78';
              let str_color_cell      = '#47575c';
              let str_color_font      = 'Silver';
              

              in

              let str_color_body      = 'rgba(0, 92, 120, 0)';
              let str_color_cell      = 'rgba(71, 87, 92, 0)';
              let str_color_font      = 'rgba(255, 255, 255, 1)';
              

              Hinweis:
              rgba(255, 255, 255, 1) = weiß, silber wäre (192, 192, 192, 1)

              Die 0 bzw. 1 am Ende gibt die Deckkraft (opacity) an, 1 = 100%, bei 0 sollte der Hintergrund also unsichtbar sein.
              Außerdem kannst du bei der Tabellenformatierung der Wettervorschau noch die Schriftfarbe von "black" in "silver" ändern, das wäre dann in diesem Abschnitt:

              str_html_head = str_html_head + 'td {';
              str_html_head = str_html_head + 'border-width:1px;';
              str_html_head = str_html_head + 'border-style:solid;';
              str_html_head = str_html_head + 'border-color:black;';
              str_html_head = str_html_head + '}';
              

              Für weiß wäre das dann --> border-color:rgba(255, 255, 255, 1);
              Für Silber wäre das dann --> border-color:rgba(192, 192, 192, 1);

              Probier mal ob's klappt.

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              wrote on last edited by
              #3677

              @blackeagle998
              so sieht es jetzt aus:

              Screenshot_20201103-143221_Chrome.jpg

              Screenshot_20201103-143239_Chrome.jpg

              1 Reply Last reply
              0
              • dslraserD dslraser

                @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                Ja, die Kopie brauche ich bitte, sonst komme ich nur durcheinander und dann funktioniert am Ende nichts

                ich nutze aktuell dieses Script

                
                const DP_Uhr_digital 				= '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7_neu';
                const DP_Wetter_Vorschau 			= '0_userdata.0.Uhr.Wetter_Vorschau';
                const DP_Wetter_Vorschau_Trigger	= '0_userdata.0.Uhr.Wetter_Vorschau_Trigger';
                
                fctInit();
                
                on({id:DP_Wetter_Vorschau_Trigger, val:true} , function (dp) {
                  if (getState(DP_Wetter_Vorschau).val){
                      setState(DP_Wetter_Vorschau, false);
                  }else{
                      setState(DP_Wetter_Vorschau, true);
                  }
                });
                
                function fctInit(){
                if(!existsState(DP_Uhr_digital)) {
                    createState(DP_Uhr_digital,
                        {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
                    );
                }
                if(!existsState(DP_Wetter_Vorschau_Trigger)) {
                    createState(DP_Wetter_Vorschau_Trigger,
                        {type: 'boolean', name: 'Wetter Vorschau Trigger', role: 'button', read: false , write: true}
                    );
                }
                if(!existsState(DP_Wetter_Vorschau)) {
                    createState(DP_Wetter_Vorschau,
                        {type: 'boolean', name: 'Wetter Vorschau', role: 'switch', read: true , write: true, def: false}
                    );
                }
                setStateDelayed(DP_Uhr_digital, fctUhrzeitDatumWetter_V7(), 1000);
                schedule("*/10 * * * * *", function () {
                    setState(DP_Uhr_digital, fctUhrzeitDatumWetter_V7());
                })
                }
                
                function fctUhrzeitDatumWetter_V7() {
                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 str_color_body      = '#005c78';
                let str_color_cell      = '#47575c';
                let str_color_font      = 'Silver';
                
                let str_position_font   = 'left'
                let str_Tageszeit       = 'Tag';
                let str_html            = '';
                let str_html_head       = '';
                let image_Wetter_Pfad   = './../iqontrol.meta/userimages/usericons/wetter/';
                
                // ##########################################################################
                // CSS Style (Formatierung der HTML Elemente)
                // ##########################################################################
                str_html_head = str_html_head + '<head><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">';
                str_html_head = str_html_head + '<style>';
                str_html_head = str_html_head + 'body {';
                str_html_head = str_html_head + 'background-color:' + str_color_body + ';';
                str_html_head = str_html_head + '}';
                
                str_html_head = str_html_head + 'span {';
                //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
                //Textausrichtung
                str_html_head = str_html_head + 'text-align:' + str_position_font + ';';
                //Schriftfarbe
                str_html_head = str_html_head + 'color:' + str_color_font + ';';
                //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
                //str_html_head = str_html_head + 'background-color:' + str_color_cell + ';';
                str_html_head = str_html_head + '}';
                
                str_html_head = str_html_head + 'td {';
                str_html_head = str_html_head + 'border-width:1px;';
                str_html_head = str_html_head + 'border-style:solid;';
                str_html_head = str_html_head + 'border-color:black;';
                str_html_head = str_html_head + '}';
                
                str_html_head = str_html_head + '.container_column {';
                str_html_head = str_html_head + 'display:flex;';
                //Elemente werden untereinander dargestellt
                str_html_head = str_html_head + 'flex-direction: column;';
                str_html_head = str_html_head + 'justify-content: flex-start;';
                //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                str_html_head = str_html_head + '}';
                
                str_html_head = str_html_head + '.container_row {';
                str_html_head = str_html_head + 'display: flex;';
                //Elemente werden untereinander dargestellt
                str_html_head = str_html_head + 'flex-direction: row;';
                str_html_head = str_html_head + 'justify-content: space-between;';
                //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                str_html_head = str_html_head + '}';
                
                str_html_head = str_html_head + 'input {';
                str_html_head = str_html_head + 'height:10vw;';
                str_html_head = str_html_head + 'width:10vw;';
                str_html_head = str_html_head + '}';
                
                str_html_head = str_html_head + '.img_wetter {';
                str_html_head = str_html_head + 'height:15vw;';
                str_html_head = str_html_head + 'width:15vw;';
                str_html_head = str_html_head + '}';
                
                //Hier habt ihr die Möglichkeit, CSS Eigenschaften für jede Box einzeln einzutragen.
                //Bspw. könnt ihr hier eine separate Hintergrundfarbe einstellen.
                //Außerdem steuert ihr hier die Schriftgrößen der einzelnen Boxen
                str_html_head = str_html_head + '.box_uhr {font-size:14vmax;}';
                str_html_head = str_html_head + '.box_datum {font-size:4vmax;text-align:center;}';
                str_html_head = str_html_head + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
                
                str_html_head = str_html_head + '.table_Wettervorschau {';
                str_html_head = str_html_head + 'margin-top:3vw;';
                str_html_head = str_html_head + 'border-collapse: collapse;';
                str_html_head = str_html_head + 'font-size:3vmax;';
                str_html_head = str_html_head + 'color:' + str_color_font + ';';
                str_html_head = str_html_head + '}';
                str_html_head = str_html_head + '</style>';
                str_html_head = str_html_head + '<script type="text/javascript">';
                str_html_head = str_html_head + 'function setState(stateId, value){';
                str_html_head = str_html_head + 'sendPostMessage("setState", stateId, value);';
                str_html_head = str_html_head + '}';
                str_html_head = str_html_head + 'function sendPostMessage(command, stateId, value){';
                str_html_head = str_html_head + 'message = { command: command, stateId: stateId, value: value};';
                str_html_head = str_html_head + 'window.parent.postMessage(message, "*");';
                str_html_head = str_html_head + '}';
                str_html_head = str_html_head + '</script>';
                str_html_head = str_html_head + '</head>';
                
                // ##########################################################################
                // Prüfen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen
                // ##########################################################################
                //Wenn ihr den nachfolgenden Datenpunkt 'javascript.0.Astro.Tageszeit.current' auch habt, könnt ihr das einkommentieren --> /* und */ löschen
                //--> dafür gibt es ein ASTRO Skript hier im Forum
                /*
                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 + str_html_head + '<div class="container_row">';
                str_html = str_html + '<span class="box_uhr"><b>' + str_Uhrzeit + ' Uhr</b></span>';
                if (str_Tageszeit == 'Tag'){
                      str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '" />';
                }else{
                      str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '" />';
                }
                str_html = str_html + '</div>';
                
                //Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten
                str_html = str_html + '<div class="container_row">';
                str_html = str_html + '<div class="container_column">';
                str_html = str_html + '<span class="box_datum"><b><i>' + str_Wochentag + ', ' + str_Datum + '</i></b></span>';
                str_html = str_html + '</div>';
                str_html = str_html + '<div class="container_column">';
                str_html = str_html + '<span class="box_wetter"><b><i>' + Math.round(getState('hm-rpc.0.0010D8A98AD4AC.1.ACTUAL_TEMPERATURE'/*Temperatursensor aussen ACTUAL TEMPERATURE*/).val) + '°C</i></b></span>';
                if (str_Tageszeit == 'Tag'){
                    str_html = str_html + '<span class="box_wetter"><i>' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + '</i></span>';
                }else{
                    str_html = str_html + '<span class="box_wetter"><i>' + str_Tageszeit + '</i></span>';
                }
                
                str_html = str_html + '</div>';
                str_html = str_html + '</div>';
                
                //Box 3 = Wettervorschau
                str_html = str_html + '<div class="container_column">';
                str_html = str_html + '<table class="table_Wettervorschau">';
                
                str_html = str_html + '<tr>';
                str_html = str_html + '<td>heute</td>';
                str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_value').val + '.png' + '"/></td>';
                str_html = str_html + '<td nowrap>' + 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</td>';
                //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%</td>';
                str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '</td>';
                str_html = str_html + '</tr>';
                
                str_html = str_html + '<tr>';
                str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '</td>';
                str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_value').val + '.png' + '"/></td>';
                str_html = str_html + '<td nowrap>' + 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</td>';
                //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%</td>';
                str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '</td>';
                str_html = str_html + '</tr>';
                
                str_html = str_html + '<tr>';
                str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '</td>';
                str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_value').val + '.png' + '"/></td>';
                str_html = str_html + '<td nowrap>' + 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</td>';
                //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%</td>';
                str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '</td>';
                str_html = str_html + '</tr>';
                
                str_html = str_html + '<tr>';
                str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '</td>';
                str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_value').val + '.png' + '"/></td>';
                str_html = str_html + '<td nowrap>' + 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</td>';
                //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%</td>';
                str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '</td>';
                str_html = str_html + '</tr>';
                
                str_html = str_html + '<tr>';
                str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '</td>';
                str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_value').val + '.png' + '"/></td>';
                str_html = str_html + '<td nowrap>' + 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</td>';
                //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%</td>';
                str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '</td>';
                str_html = str_html + '</tr>';
                
                str_html = str_html + '</table>';
                str_html = str_html + '</div>';
                
                return str_html;
                }
                
                
                

                In meinen Listen nutze ich aktuell Die Überschrift auch in weiß und Border und inaktive Geräte ist die Schriftfarbe : silver. Der Hintergrund ist in #424242

                Beispiel Liste

                Screenshot_20201103-131357_Chrome.jpg

                S Offline
                S Offline
                StephanJanine
                wrote on last edited by
                #3678

                @dslraser wie hast du die Bewegungsmelder aktiv und inaktiv geschaltet? also ich habe das mal über einen separaten Datenpunkt gemacht den ich dann immer nach einer Bewegung abfrage ob True/False aber das ist irgendwie umständlich

                dslraserD 1 Reply Last reply
                0
                • B blackeagle998

                  @dslraser
                  Ändere mal bitte diese drei Zeilen

                  let str_color_body      = '#005c78';
                  let str_color_cell      = '#47575c';
                  let str_color_font      = 'Silver';
                  

                  in

                  let str_color_body      = 'rgba(0, 92, 120, 0)';
                  let str_color_cell      = 'rgba(71, 87, 92, 0)';
                  let str_color_font      = 'rgba(255, 255, 255, 1)';
                  

                  Hinweis:
                  rgba(255, 255, 255, 1) = weiß, silber wäre (192, 192, 192, 1)

                  Die 0 bzw. 1 am Ende gibt die Deckkraft (opacity) an, 1 = 100%, bei 0 sollte der Hintergrund also unsichtbar sein.
                  Außerdem kannst du bei der Tabellenformatierung der Wettervorschau noch die Schriftfarbe von "black" in "silver" ändern, das wäre dann in diesem Abschnitt:

                  str_html_head = str_html_head + 'td {';
                  str_html_head = str_html_head + 'border-width:1px;';
                  str_html_head = str_html_head + 'border-style:solid;';
                  str_html_head = str_html_head + 'border-color:black;';
                  str_html_head = str_html_head + '}';
                  

                  Für weiß wäre das dann --> border-color:rgba(255, 255, 255, 1);
                  Für Silber wäre das dann --> border-color:rgba(192, 192, 192, 1);

                  Probier mal ob's klappt.

                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  wrote on last edited by
                  #3679

                  @blackeagle998
                  jetzt habe ich das so eingestellt. Sa lasse ich es jetzt mal.

                  Screenshot_20201103-143736_Chrome.jpg

                  Screenshot_20201103-143746_Chrome.jpg

                  B 1 Reply Last reply
                  0
                  • S StephanJanine

                    @dslraser wie hast du die Bewegungsmelder aktiv und inaktiv geschaltet? also ich habe das mal über einen separaten Datenpunkt gemacht den ich dann immer nach einer Bewegung abfrage ob True/False aber das ist irgendwie umständlich

                    dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    wrote on last edited by dslraser
                    #3680

                    @StephanJanine sagte in Test Adapter iQontrol 1.4.x:

                    wie hast du die Bewegungsmelder aktiv und inaktiv geschaltet?

                    Das macht ein Blockly. Dieses Blockly erstellt "dynamisch" html Listen, die sich auch in geöffneter Listenansicht live ändern.

                    https://forum.iobroker.net/post/273896

                    1 Reply Last reply
                    0
                    • dslraserD dslraser

                      @blackeagle998
                      jetzt habe ich das so eingestellt. Sa lasse ich es jetzt mal.

                      Screenshot_20201103-143736_Chrome.jpg

                      Screenshot_20201103-143746_Chrome.jpg

                      B Offline
                      B Offline
                      blackeagle998
                      wrote on last edited by
                      #3681

                      @dslraser
                      Hmm warum der Kachelumriss angezeigt wird, kann ich nicht genau sagen.
                      Hast du bei der Kachel ein Hintergrundbild aktiv / inaktiv eingestellt? Wenn ja, nimm das mal bitte raus.

                      Wenn du den Scrollbalken rechts nicht haben willst, ergänzt du hinter der Zeile "str_html_head = str_html_head + 'body {';" folgende Zeile:

                      str_html_head = str_html_head + 'overflow:hidden;';
                      
                      dslraserD 2 Replies Last reply
                      0
                      • B blackeagle998

                        @dslraser
                        Hmm warum der Kachelumriss angezeigt wird, kann ich nicht genau sagen.
                        Hast du bei der Kachel ein Hintergrundbild aktiv / inaktiv eingestellt? Wenn ja, nimm das mal bitte raus.

                        Wenn du den Scrollbalken rechts nicht haben willst, ergänzt du hinter der Zeile "str_html_head = str_html_head + 'body {';" folgende Zeile:

                        str_html_head = str_html_head + 'overflow:hidden;';
                        
                        dslraserD Offline
                        dslraserD Offline
                        dslraser
                        Forum Testing Most Active
                        wrote on last edited by dslraser
                        #3682

                        @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                        Wenn du den Scrollbalken rechts nicht haben willst, ergänzt du hinter der Zeile "str_html_head = str_html_head + 'body {';" folgende Zeile:
                        str_html_head = str_html_head + 'overflow:hidden;';

                        Die Zeile zerstört dann die Farbe und der Balken bleibt.

                        Screenshot_20201103-145559_Chrome.jpg

                        Ein Hintergundbild aktiv/inaktiv habe ich nicht, steht auf standard.

                        Edit: welche Zeilennummer meinst Du dafür ?

                        str_html_head = str_html_head + 'overflow:hidden;';
                        
                        

                        EDIT 2: der Scrollbalken ist weg, ich habe vorher an der falschen Stelle eingefügt.

                        B 1 Reply Last reply
                        0
                        • B blackeagle998

                          @dslraser
                          Hmm warum der Kachelumriss angezeigt wird, kann ich nicht genau sagen.
                          Hast du bei der Kachel ein Hintergrundbild aktiv / inaktiv eingestellt? Wenn ja, nimm das mal bitte raus.

                          Wenn du den Scrollbalken rechts nicht haben willst, ergänzt du hinter der Zeile "str_html_head = str_html_head + 'body {';" folgende Zeile:

                          str_html_head = str_html_head + 'overflow:hidden;';
                          
                          dslraserD Offline
                          dslraserD Offline
                          dslraser
                          Forum Testing Most Active
                          wrote on last edited by dslraser
                          #3683

                          @blackeagle998
                          der kleine weiße Strich am unteren Rand in der Kachel ist schon die erste Linie der darunter liegenden Tabelle. Bekomme ich das auch noch wech ?

                          Screenshot_20201103-150350_Chrome.jpg

                          B 1 Reply Last reply
                          0
                          • dslraserD dslraser

                            @blackeagle998
                            der kleine weiße Strich am unteren Rand in der Kachel ist schon die erste Linie der darunter liegenden Tabelle. Bekomme ich das auch noch wech ?

                            Screenshot_20201103-150350_Chrome.jpg

                            B Offline
                            B Offline
                            blackeagle998
                            wrote on last edited by
                            #3684

                            @dslraser

                            str_html_head = str_html_head + '.table_Wettervorschau {';
                            str_html_head = str_html_head + 'margin-top:3vw;';
                            

                            Anstatt 3vw kannst du 3.5vw oder 4vw probieren.
                            Das ist der Abstand der Tabelle Wettervorschau nach oben.

                            1 Reply Last reply
                            0
                            • dslraserD dslraser

                              @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                              Wenn du den Scrollbalken rechts nicht haben willst, ergänzt du hinter der Zeile "str_html_head = str_html_head + 'body {';" folgende Zeile:
                              str_html_head = str_html_head + 'overflow:hidden;';

                              Die Zeile zerstört dann die Farbe und der Balken bleibt.

                              Screenshot_20201103-145559_Chrome.jpg

                              Ein Hintergundbild aktiv/inaktiv habe ich nicht, steht auf standard.

                              Edit: welche Zeilennummer meinst Du dafür ?

                              str_html_head = str_html_head + 'overflow:hidden;';
                              
                              

                              EDIT 2: der Scrollbalken ist weg, ich habe vorher an der falschen Stelle eingefügt.

                              B Offline
                              B Offline
                              blackeagle998
                              wrote on last edited by
                              #3685

                              @dslraser
                              Kannst du mal bitte ein Screenshot der Geräteübersicht machen, wo sich diese Kachel befindet (nicht die Kachel Einstellungen)?

                              dslraserD 1 Reply Last reply
                              0
                              • B blackeagle998

                                @dslraser
                                Kannst du mal bitte ein Screenshot der Geräteübersicht machen, wo sich diese Kachel befindet (nicht die Kachel Einstellungen)?

                                dslraserD Offline
                                dslraserD Offline
                                dslraser
                                Forum Testing Most Active
                                wrote on last edited by dslraser
                                #3686

                                @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                                @dslraser
                                Kannst du mal bitte ein Screenshot der Geräteübersicht machen, wo sich diese Kachel befindet (nicht die Kachel Einstellungen)?

                                meinst Du das ?
                                Bildschirmfoto 2020-11-03 um 15.12.35.png

                                Edit: den obersten Haken habe ich raus genommen, der war da quatsch, weil ich mal die Geräte verschoben hatte.

                                1 Reply Last reply
                                0
                                • dslraserD Offline
                                  dslraserD Offline
                                  dslraser
                                  Forum Testing Most Active
                                  wrote on last edited by dslraser
                                  #3687

                                  @blackeagle998

                                  hier noch mal das aktuelle Script für diese Ansicht

                                  
                                  const DP_Uhr_digital 				= '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7_neu';
                                  const DP_Wetter_Vorschau 			= '0_userdata.0.Uhr.Wetter_Vorschau';
                                  const DP_Wetter_Vorschau_Trigger	= '0_userdata.0.Uhr.Wetter_Vorschau_Trigger';
                                  
                                  fctInit();
                                  
                                  on({id:DP_Wetter_Vorschau_Trigger, val:true} , function (dp) {
                                    if (getState(DP_Wetter_Vorschau).val){
                                        setState(DP_Wetter_Vorschau, false);
                                    }else{
                                        setState(DP_Wetter_Vorschau, true);
                                    }
                                  });
                                  
                                  function fctInit(){
                                  if(!existsState(DP_Uhr_digital)) {
                                      createState(DP_Uhr_digital,
                                          {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
                                      );
                                  }
                                  if(!existsState(DP_Wetter_Vorschau_Trigger)) {
                                      createState(DP_Wetter_Vorschau_Trigger,
                                          {type: 'boolean', name: 'Wetter Vorschau Trigger', role: 'button', read: false , write: true}
                                      );
                                  }
                                  if(!existsState(DP_Wetter_Vorschau)) {
                                      createState(DP_Wetter_Vorschau,
                                          {type: 'boolean', name: 'Wetter Vorschau', role: 'switch', read: true , write: true, def: false}
                                      );
                                  }
                                  setStateDelayed(DP_Uhr_digital, fctUhrzeitDatumWetter_V7(), 1000);
                                  schedule("*/10 * * * * *", function () {
                                      setState(DP_Uhr_digital, fctUhrzeitDatumWetter_V7());
                                  })
                                  }
                                  
                                  function fctUhrzeitDatumWetter_V7() {
                                  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 str_color_body      = 'rgba(66, 66, 66, 1)';
                                  let str_color_cell      = 'rgba(71, 87, 92, 0)';
                                  let str_color_font      = 'rgba(255, 255, 255, 1)';
                                  
                                  
                                  let str_position_font   = 'left'
                                  let str_Tageszeit       = 'Tag';
                                  let str_html            = '';
                                  let str_html_head       = '';
                                  let image_Wetter_Pfad   = './../iqontrol.meta/userimages/usericons/wetter/';
                                  
                                  // ##########################################################################
                                  // CSS Style (Formatierung der HTML Elemente)
                                  // ##########################################################################
                                  str_html_head = str_html_head + '<head><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">';
                                  str_html_head = str_html_head + '<style>';
                                  str_html_head = str_html_head + 'body {';
                                  str_html_head = str_html_head + 'overflow:hidden;'; //Scrollbalken ausgeblendet
                                  str_html_head = str_html_head + 'background-color:' + str_color_body + ';';
                                  str_html_head = str_html_head + '}'; 
                                  
                                  
                                  
                                  str_html_head = str_html_head + 'span {';
                                  //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                  //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
                                  //Textausrichtung
                                  str_html_head = str_html_head + 'text-align:' + str_position_font + ';';
                                  //Schriftfarbe
                                  str_html_head = str_html_head + 'color:' + str_color_font + ';';
                                  //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
                                  //str_html_head = str_html_head + 'background-color:' + str_color_cell + ';';
                                  str_html_head = str_html_head + '}';
                                  
                                  str_html_head = str_html_head + 'td {';
                                  str_html_head = str_html_head + 'border-width:1px;';
                                  str_html_head = str_html_head + 'border-style:solid;';
                                  str_html_head = str_html_head + 'border-color:silver;';
                                  str_html_head = str_html_head + '}';
                                  
                                  str_html_head = str_html_head + '.container_column {';
                                  str_html_head = str_html_head + 'display:flex;';
                                  //Elemente werden untereinander dargestellt
                                  str_html_head = str_html_head + 'flex-direction: column;';
                                  str_html_head = str_html_head + 'justify-content: flex-start;';
                                  //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                  //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                                  str_html_head = str_html_head + '}';
                                  
                                  str_html_head = str_html_head + '.container_row {';
                                  str_html_head = str_html_head + 'display: flex;';
                                  //Elemente werden untereinander dargestellt
                                  str_html_head = str_html_head + 'flex-direction: row;';
                                  str_html_head = str_html_head + 'justify-content: space-between;';
                                  //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                  //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                                  str_html_head = str_html_head + '}';
                                  
                                  str_html_head = str_html_head + 'input {';
                                  str_html_head = str_html_head + 'height:10vw;';
                                  str_html_head = str_html_head + 'width:10vw;';
                                  str_html_head = str_html_head + '}';
                                  
                                  str_html_head = str_html_head + '.img_wetter {';
                                  str_html_head = str_html_head + 'height:15vw;';
                                  str_html_head = str_html_head + 'width:15vw;';
                                  str_html_head = str_html_head + '}';
                                  
                                  //Hier habt ihr die Möglichkeit, CSS Eigenschaften für jede Box einzeln einzutragen.
                                  //Bspw. könnt ihr hier eine separate Hintergrundfarbe einstellen.
                                  //Außerdem steuert ihr hier die Schriftgrößen der einzelnen Boxen
                                  str_html_head = str_html_head + '.box_uhr {font-size:14vmax;}';
                                  str_html_head = str_html_head + '.box_datum {font-size:4vmax;text-align:center;}';
                                  str_html_head = str_html_head + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
                                  
                                  str_html_head = str_html_head + '.table_Wettervorschau {';
                                  str_html_head = str_html_head + 'margin-top:4vw;';
                                  str_html_head = str_html_head + 'border-collapse: collapse;';
                                  str_html_head = str_html_head + 'font-size:3vmax;';
                                  str_html_head = str_html_head + 'color:' + str_color_font + ';';
                                  str_html_head = str_html_head + '}';
                                  str_html_head = str_html_head + '</style>';
                                  str_html_head = str_html_head + '<script type="text/javascript">';
                                  str_html_head = str_html_head + 'function setState(stateId, value){';
                                  str_html_head = str_html_head + 'sendPostMessage("setState", stateId, value);';
                                  str_html_head = str_html_head + '}';
                                  str_html_head = str_html_head + 'function sendPostMessage(command, stateId, value){';
                                  str_html_head = str_html_head + 'message = { command: command, stateId: stateId, value: value};';
                                  str_html_head = str_html_head + 'window.parent.postMessage(message, "*");';
                                  str_html_head = str_html_head + '}';
                                  str_html_head = str_html_head + '</script>';
                                  str_html_head = str_html_head + '</head>';
                                  
                                  // ##########################################################################
                                  // Prüfen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen
                                  // ##########################################################################
                                  //Wenn ihr den nachfolgenden Datenpunkt 'javascript.0.Astro.Tageszeit.current' auch habt, könnt ihr das einkommentieren --> /* und */ löschen
                                  //--> dafür gibt es ein ASTRO Skript hier im Forum
                                  /*
                                  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 + str_html_head + '<div class="container_row">';
                                  str_html = str_html + '<span class="box_uhr"><b>' + str_Uhrzeit + ' Uhr</b></span>';
                                  if (str_Tageszeit == 'Tag'){
                                        str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '" />';
                                  }else{
                                        str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '" />';
                                  }
                                  str_html = str_html + '</div>';
                                  
                                  //Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten
                                  str_html = str_html + '<div class="container_row">';
                                  str_html = str_html + '<div class="container_column">';
                                  str_html = str_html + '<span class="box_datum"><b><i>' + str_Wochentag + ', ' + str_Datum + '</i></b></span>';
                                  str_html = str_html + '</div>';
                                  str_html = str_html + '<div class="container_column">';
                                  str_html = str_html + '<span class="box_wetter"><b><i>' + Math.round(getState('hm-rpc.0.0010D8A98AD4AC.1.ACTUAL_TEMPERATURE'/*Temperatursensor aussen ACTUAL TEMPERATURE*/).val) + '°C</i></b></span>';
                                  if (str_Tageszeit == 'Tag'){
                                      str_html = str_html + '<span class="box_wetter"><i>' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + '</i></span>';
                                  }else{
                                      str_html = str_html + '<span class="box_wetter"><i>' + str_Tageszeit + '</i></span>';
                                  }
                                  
                                  str_html = str_html + '</div>';
                                  str_html = str_html + '</div>';
                                  
                                  //Box 3 = Wettervorschau
                                  str_html = str_html + '<div class="container_column">';
                                  str_html = str_html + '<table class="table_Wettervorschau">';
                                  
                                  str_html = str_html + '<tr>';
                                  str_html = str_html + '<td>heute</td>';
                                  str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_value').val + '.png' + '"/></td>';
                                  str_html = str_html + '<td nowrap>' + 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</td>';
                                  //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%</td>';
                                  str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '</td>';
                                  str_html = str_html + '</tr>';
                                  
                                  str_html = str_html + '<tr>';
                                  str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '</td>';
                                  str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_value').val + '.png' + '"/></td>';
                                  str_html = str_html + '<td nowrap>' + 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</td>';
                                  //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%</td>';
                                  str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '</td>';
                                  str_html = str_html + '</tr>';
                                  
                                  str_html = str_html + '<tr>';
                                  str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '</td>';
                                  str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_value').val + '.png' + '"/></td>';
                                  str_html = str_html + '<td nowrap>' + 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</td>';
                                  //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%</td>';
                                  str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '</td>';
                                  str_html = str_html + '</tr>';
                                  
                                  str_html = str_html + '<tr>';
                                  str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '</td>';
                                  str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_value').val + '.png' + '"/></td>';
                                  str_html = str_html + '<td nowrap>' + 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</td>';
                                  //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%</td>';
                                  str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '</td>';
                                  str_html = str_html + '</tr>';
                                  
                                  str_html = str_html + '<tr>';
                                  str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '</td>';
                                  str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_value').val + '.png' + '"/></td>';
                                  str_html = str_html + '<td nowrap>' + 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</td>';
                                  //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%</td>';
                                  str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '</td>';
                                  str_html = str_html + '</tr>';
                                  
                                  str_html = str_html + '</table>';
                                  str_html = str_html + '</div>';
                                  
                                  return str_html;
                                  }
                                  
                                  
                                  

                                  EDIT: so ist es nun fertig.

                                  Screenshot_20201103-153131_Chrome.jpg

                                  Hier habe ich das angepasst, nun ist es perfekt.

                                  Bildschirmfoto 2020-11-03 um 15.24.37.png

                                  Bildschirmfoto 2020-11-03 um 15.24.46.png

                                  B C F 3 Replies Last reply
                                  3
                                  • dslraserD dslraser

                                    @blackeagle998

                                    hier noch mal das aktuelle Script für diese Ansicht

                                    
                                    const DP_Uhr_digital 				= '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7_neu';
                                    const DP_Wetter_Vorschau 			= '0_userdata.0.Uhr.Wetter_Vorschau';
                                    const DP_Wetter_Vorschau_Trigger	= '0_userdata.0.Uhr.Wetter_Vorschau_Trigger';
                                    
                                    fctInit();
                                    
                                    on({id:DP_Wetter_Vorschau_Trigger, val:true} , function (dp) {
                                      if (getState(DP_Wetter_Vorschau).val){
                                          setState(DP_Wetter_Vorschau, false);
                                      }else{
                                          setState(DP_Wetter_Vorschau, true);
                                      }
                                    });
                                    
                                    function fctInit(){
                                    if(!existsState(DP_Uhr_digital)) {
                                        createState(DP_Uhr_digital,
                                            {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
                                        );
                                    }
                                    if(!existsState(DP_Wetter_Vorschau_Trigger)) {
                                        createState(DP_Wetter_Vorschau_Trigger,
                                            {type: 'boolean', name: 'Wetter Vorschau Trigger', role: 'button', read: false , write: true}
                                        );
                                    }
                                    if(!existsState(DP_Wetter_Vorschau)) {
                                        createState(DP_Wetter_Vorschau,
                                            {type: 'boolean', name: 'Wetter Vorschau', role: 'switch', read: true , write: true, def: false}
                                        );
                                    }
                                    setStateDelayed(DP_Uhr_digital, fctUhrzeitDatumWetter_V7(), 1000);
                                    schedule("*/10 * * * * *", function () {
                                        setState(DP_Uhr_digital, fctUhrzeitDatumWetter_V7());
                                    })
                                    }
                                    
                                    function fctUhrzeitDatumWetter_V7() {
                                    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 str_color_body      = 'rgba(66, 66, 66, 1)';
                                    let str_color_cell      = 'rgba(71, 87, 92, 0)';
                                    let str_color_font      = 'rgba(255, 255, 255, 1)';
                                    
                                    
                                    let str_position_font   = 'left'
                                    let str_Tageszeit       = 'Tag';
                                    let str_html            = '';
                                    let str_html_head       = '';
                                    let image_Wetter_Pfad   = './../iqontrol.meta/userimages/usericons/wetter/';
                                    
                                    // ##########################################################################
                                    // CSS Style (Formatierung der HTML Elemente)
                                    // ##########################################################################
                                    str_html_head = str_html_head + '<head><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">';
                                    str_html_head = str_html_head + '<style>';
                                    str_html_head = str_html_head + 'body {';
                                    str_html_head = str_html_head + 'overflow:hidden;'; //Scrollbalken ausgeblendet
                                    str_html_head = str_html_head + 'background-color:' + str_color_body + ';';
                                    str_html_head = str_html_head + '}'; 
                                    
                                    
                                    
                                    str_html_head = str_html_head + 'span {';
                                    //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                    //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
                                    //Textausrichtung
                                    str_html_head = str_html_head + 'text-align:' + str_position_font + ';';
                                    //Schriftfarbe
                                    str_html_head = str_html_head + 'color:' + str_color_font + ';';
                                    //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
                                    //str_html_head = str_html_head + 'background-color:' + str_color_cell + ';';
                                    str_html_head = str_html_head + '}';
                                    
                                    str_html_head = str_html_head + 'td {';
                                    str_html_head = str_html_head + 'border-width:1px;';
                                    str_html_head = str_html_head + 'border-style:solid;';
                                    str_html_head = str_html_head + 'border-color:silver;';
                                    str_html_head = str_html_head + '}';
                                    
                                    str_html_head = str_html_head + '.container_column {';
                                    str_html_head = str_html_head + 'display:flex;';
                                    //Elemente werden untereinander dargestellt
                                    str_html_head = str_html_head + 'flex-direction: column;';
                                    str_html_head = str_html_head + 'justify-content: flex-start;';
                                    //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                    //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                                    str_html_head = str_html_head + '}';
                                    
                                    str_html_head = str_html_head + '.container_row {';
                                    str_html_head = str_html_head + 'display: flex;';
                                    //Elemente werden untereinander dargestellt
                                    str_html_head = str_html_head + 'flex-direction: row;';
                                    str_html_head = str_html_head + 'justify-content: space-between;';
                                    //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                    //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                                    str_html_head = str_html_head + '}';
                                    
                                    str_html_head = str_html_head + 'input {';
                                    str_html_head = str_html_head + 'height:10vw;';
                                    str_html_head = str_html_head + 'width:10vw;';
                                    str_html_head = str_html_head + '}';
                                    
                                    str_html_head = str_html_head + '.img_wetter {';
                                    str_html_head = str_html_head + 'height:15vw;';
                                    str_html_head = str_html_head + 'width:15vw;';
                                    str_html_head = str_html_head + '}';
                                    
                                    //Hier habt ihr die Möglichkeit, CSS Eigenschaften für jede Box einzeln einzutragen.
                                    //Bspw. könnt ihr hier eine separate Hintergrundfarbe einstellen.
                                    //Außerdem steuert ihr hier die Schriftgrößen der einzelnen Boxen
                                    str_html_head = str_html_head + '.box_uhr {font-size:14vmax;}';
                                    str_html_head = str_html_head + '.box_datum {font-size:4vmax;text-align:center;}';
                                    str_html_head = str_html_head + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
                                    
                                    str_html_head = str_html_head + '.table_Wettervorschau {';
                                    str_html_head = str_html_head + 'margin-top:4vw;';
                                    str_html_head = str_html_head + 'border-collapse: collapse;';
                                    str_html_head = str_html_head + 'font-size:3vmax;';
                                    str_html_head = str_html_head + 'color:' + str_color_font + ';';
                                    str_html_head = str_html_head + '}';
                                    str_html_head = str_html_head + '</style>';
                                    str_html_head = str_html_head + '<script type="text/javascript">';
                                    str_html_head = str_html_head + 'function setState(stateId, value){';
                                    str_html_head = str_html_head + 'sendPostMessage("setState", stateId, value);';
                                    str_html_head = str_html_head + '}';
                                    str_html_head = str_html_head + 'function sendPostMessage(command, stateId, value){';
                                    str_html_head = str_html_head + 'message = { command: command, stateId: stateId, value: value};';
                                    str_html_head = str_html_head + 'window.parent.postMessage(message, "*");';
                                    str_html_head = str_html_head + '}';
                                    str_html_head = str_html_head + '</script>';
                                    str_html_head = str_html_head + '</head>';
                                    
                                    // ##########################################################################
                                    // Prüfen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen
                                    // ##########################################################################
                                    //Wenn ihr den nachfolgenden Datenpunkt 'javascript.0.Astro.Tageszeit.current' auch habt, könnt ihr das einkommentieren --> /* und */ löschen
                                    //--> dafür gibt es ein ASTRO Skript hier im Forum
                                    /*
                                    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 + str_html_head + '<div class="container_row">';
                                    str_html = str_html + '<span class="box_uhr"><b>' + str_Uhrzeit + ' Uhr</b></span>';
                                    if (str_Tageszeit == 'Tag'){
                                          str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '" />';
                                    }else{
                                          str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '" />';
                                    }
                                    str_html = str_html + '</div>';
                                    
                                    //Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten
                                    str_html = str_html + '<div class="container_row">';
                                    str_html = str_html + '<div class="container_column">';
                                    str_html = str_html + '<span class="box_datum"><b><i>' + str_Wochentag + ', ' + str_Datum + '</i></b></span>';
                                    str_html = str_html + '</div>';
                                    str_html = str_html + '<div class="container_column">';
                                    str_html = str_html + '<span class="box_wetter"><b><i>' + Math.round(getState('hm-rpc.0.0010D8A98AD4AC.1.ACTUAL_TEMPERATURE'/*Temperatursensor aussen ACTUAL TEMPERATURE*/).val) + '°C</i></b></span>';
                                    if (str_Tageszeit == 'Tag'){
                                        str_html = str_html + '<span class="box_wetter"><i>' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + '</i></span>';
                                    }else{
                                        str_html = str_html + '<span class="box_wetter"><i>' + str_Tageszeit + '</i></span>';
                                    }
                                    
                                    str_html = str_html + '</div>';
                                    str_html = str_html + '</div>';
                                    
                                    //Box 3 = Wettervorschau
                                    str_html = str_html + '<div class="container_column">';
                                    str_html = str_html + '<table class="table_Wettervorschau">';
                                    
                                    str_html = str_html + '<tr>';
                                    str_html = str_html + '<td>heute</td>';
                                    str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_value').val + '.png' + '"/></td>';
                                    str_html = str_html + '<td nowrap>' + 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</td>';
                                    //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%</td>';
                                    str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '</td>';
                                    str_html = str_html + '</tr>';
                                    
                                    str_html = str_html + '<tr>';
                                    str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '</td>';
                                    str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_value').val + '.png' + '"/></td>';
                                    str_html = str_html + '<td nowrap>' + 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</td>';
                                    //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%</td>';
                                    str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '</td>';
                                    str_html = str_html + '</tr>';
                                    
                                    str_html = str_html + '<tr>';
                                    str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '</td>';
                                    str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_value').val + '.png' + '"/></td>';
                                    str_html = str_html + '<td nowrap>' + 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</td>';
                                    //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%</td>';
                                    str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '</td>';
                                    str_html = str_html + '</tr>';
                                    
                                    str_html = str_html + '<tr>';
                                    str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '</td>';
                                    str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_value').val + '.png' + '"/></td>';
                                    str_html = str_html + '<td nowrap>' + 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</td>';
                                    //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%</td>';
                                    str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '</td>';
                                    str_html = str_html + '</tr>';
                                    
                                    str_html = str_html + '<tr>';
                                    str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '</td>';
                                    str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_value').val + '.png' + '"/></td>';
                                    str_html = str_html + '<td nowrap>' + 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</td>';
                                    //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%</td>';
                                    str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '</td>';
                                    str_html = str_html + '</tr>';
                                    
                                    str_html = str_html + '</table>';
                                    str_html = str_html + '</div>';
                                    
                                    return str_html;
                                    }
                                    
                                    
                                    

                                    EDIT: so ist es nun fertig.

                                    Screenshot_20201103-153131_Chrome.jpg

                                    Hier habe ich das angepasst, nun ist es perfekt.

                                    Bildschirmfoto 2020-11-03 um 15.24.37.png

                                    Bildschirmfoto 2020-11-03 um 15.24.46.png

                                    B Offline
                                    B Offline
                                    blackeagle998
                                    wrote on last edited by
                                    #3688

                                    @dslraser
                                    Aus meiner Sicht muss irgendwo in den Kachel oder in den Instanzeinstellungen irgendwas aktiviert sein, dass der Kachelumriss sichtbar ist.
                                    Schau mal durch, vielleicht findest du ja was.

                                    dslraserD 1 Reply Last reply
                                    0
                                    • B blackeagle998

                                      @dslraser
                                      Aus meiner Sicht muss irgendwo in den Kachel oder in den Instanzeinstellungen irgendwas aktiviert sein, dass der Kachelumriss sichtbar ist.
                                      Schau mal durch, vielleicht findest du ja was.

                                      dslraserD Offline
                                      dslraserD Offline
                                      dslraser
                                      Forum Testing Most Active
                                      wrote on last edited by
                                      #3689

                                      @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                                      Schau mal durch, vielleicht findest du ja was.

                                      edit einen über Dir 👍😜

                                      B 1 Reply Last reply
                                      1
                                      • dslraserD dslraser

                                        @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                                        Schau mal durch, vielleicht findest du ja was.

                                        edit einen über Dir 👍😜

                                        B Offline
                                        B Offline
                                        blackeagle998
                                        wrote on last edited by
                                        #3690

                                        @dslraser
                                        Sehr edel, top!

                                        dslraserD 1 Reply Last reply
                                        0
                                        • B blackeagle998

                                          @dslraser
                                          Sehr edel, top!

                                          dslraserD Offline
                                          dslraserD Offline
                                          dslraser
                                          Forum Testing Most Active
                                          wrote on last edited by dslraser
                                          #3691

                                          @blackeagle998 sagte in Test Adapter iQontrol 1.4.x:

                                          @dslraser
                                          Sehr edel, top!

                                          Danke. Und dank Deiner Hilfe👍

                                          Und natürlich auch Dank an @s-bormann 👍👍👍

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          500

                                          Online

                                          32.5k

                                          Users

                                          81.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe