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

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

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

Scheduled Pinned Locked Moved Tester
appdark-modeiqontrolresponsivevisvisualisierungvisualizationwidget
7.6k Posts 296 Posters 7.2m 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
    Ich nutze mittlerweile das Wettericon rechts oben, um die Wettervorschau anzuzeigen / auszublenden.
    Wäre das für dich eine Option?

    Wenn ja, müsstest du mir mal dein komplettes Skript zur Verfügung stellen, dann kann ich dir helfen, das anzupassen.
    Dafür bräuchtest du lediglich einen zusätzlichen Datenpunkt (boolean, switch), der über true/false die Anzeige (true = Kachel aktiv = Größe 3x2, false = Kachel inaktiv = Größe 3x1) regelt.

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

    @blackeagle998
    Moin, danke für Deine Hilfe. Das Script ist noch das hier aus dem Forum (V7 ohne Müll)

    Edit: müßte das hier sein
    https://forum.iobroker.net/post/491770

    const DP_Uhr_digital = '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7';
    
    fctInit();
    
    function fctInit(){
     if(!existsState(DP_Uhr_digital)) {
         createState(DP_Uhr_digital,
             {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
         );
     }
     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_style      = '';
      let image_Wetter        = '';
    
      //in diesem iQontrol Unterordner liegen die Wetter-Icons
      image_Wetter        = './../iqontrol.meta/userimages/usericons/wetter/';
    
    // ##########################################################################
    // CSS Style (Formatierung der HTML Elemente)
    // ##########################################################################
      str_HTML_style = str_HTML_style + '<style>';
      str_HTML_style = str_HTML_style + 'body {';
      str_HTML_style = str_HTML_style + 'background-color:' + str_color_body + ';';
      str_HTML_style = str_HTML_style + '}';
    
      str_HTML_style = str_HTML_style + 'span {';
      //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
      //str_HTML_style = str_HTML_style + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
      //Textausrichtung
      str_HTML_style = str_HTML_style + 'text-align:' + str_position_font + ';';
      //Schriftfarbe
      str_HTML_style = str_HTML_style + 'color:' + str_color_font + ';';
      //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
      //str_HTML_style = str_HTML_style + 'background-color:' + str_color_cell + ';';
      str_HTML_style = str_HTML_style + '}';
    
      str_HTML_style = str_HTML_style + 'td {';
      str_HTML_style = str_HTML_style + 'border-width:1px;';
      str_HTML_style = str_HTML_style + 'border-style:solid;';
      str_HTML_style = str_HTML_style + 'border-color:black;';
      str_HTML_style = str_HTML_style + '}';
    
      str_HTML_style = str_HTML_style + '.container_column {';
      str_HTML_style = str_HTML_style + 'display:flex;';
      //Elemente werden untereinander dargestellt
      str_HTML_style = str_HTML_style + 'flex-direction: column;';
      str_HTML_style = str_HTML_style + 'justify-content: flex-start;';
      //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
      //str_HTML_style = str_HTML_style + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
      str_HTML_style = str_HTML_style + '}';
    
      str_HTML_style = str_HTML_style + '.container_row {';
      str_HTML_style = str_HTML_style + 'display: flex;';
      //Elemente werden untereinander dargestellt
      str_HTML_style = str_HTML_style + 'flex-direction: row;';
      str_HTML_style = str_HTML_style + 'justify-content: space-between;';
      //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
      //str_HTML_style = str_HTML_style + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
      str_HTML_style = str_HTML_style + '}';
    
      str_HTML_style = str_HTML_style + 'input {';
      str_HTML_style = str_HTML_style + 'height:10vw;';
      str_HTML_style = str_HTML_style + 'width:10vw;';
      str_HTML_style = str_HTML_style + '}';
    
      str_HTML_style = str_HTML_style + '.img_wetter {';
      str_HTML_style = str_HTML_style + 'height:15vw;';
      str_HTML_style = str_HTML_style + 'width:15vw;';
      str_HTML_style = str_HTML_style + '}';
     
      //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_style = str_HTML_style + '.box_uhr {font-size:14vmax;}';
      str_HTML_style = str_HTML_style + '.box_datum {font-size:4vmax;text-align:center;}';
      str_HTML_style = str_HTML_style + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
      
      str_HTML_style = str_HTML_style + '.table_Wettervorschau {';
      str_HTML_style = str_HTML_style + 'margin-top:3vw;';
      str_HTML_style = str_HTML_style + 'border-collapse: collapse;';
      str_HTML_style = str_HTML_style + 'font-size:3vmax;';
      str_HTML_style = str_HTML_style + 'color:' + str_color_font + ';';
      str_HTML_style = str_HTML_style + '}';
      str_HTML_style = str_HTML_style + '</style>';
    
    // ##########################################################################
    // 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_style + '<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 + '<span><img class="img_wetter" src="' + image_Wetter + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '"/></span>';
      }else{
          str_HTML = str_HTML + '<span><img class="img_wetter" src="' + image_Wetter + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '"/></span>';
      }
      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 + 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 + 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 + 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 + 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 + 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;
    }
    
    

    B 1 Reply Last reply
    0
    • dslraserD dslraser

      @blackeagle998
      Moin, danke für Deine Hilfe. Das Script ist noch das hier aus dem Forum (V7 ohne Müll)

      Edit: müßte das hier sein
      https://forum.iobroker.net/post/491770

      const DP_Uhr_digital = '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7';
      
      fctInit();
      
      function fctInit(){
       if(!existsState(DP_Uhr_digital)) {
           createState(DP_Uhr_digital,
               {type: 'string', name: 'iQontrol Uhr', role: 'value', read: true , write: true}
           );
       }
       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_style      = '';
        let image_Wetter        = '';
      
        //in diesem iQontrol Unterordner liegen die Wetter-Icons
        image_Wetter        = './../iqontrol.meta/userimages/usericons/wetter/';
      
      // ##########################################################################
      // CSS Style (Formatierung der HTML Elemente)
      // ##########################################################################
        str_HTML_style = str_HTML_style + '<style>';
        str_HTML_style = str_HTML_style + 'body {';
        str_HTML_style = str_HTML_style + 'background-color:' + str_color_body + ';';
        str_HTML_style = str_HTML_style + '}';
      
        str_HTML_style = str_HTML_style + 'span {';
        //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
        //str_HTML_style = str_HTML_style + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
        //Textausrichtung
        str_HTML_style = str_HTML_style + 'text-align:' + str_position_font + ';';
        //Schriftfarbe
        str_HTML_style = str_HTML_style + 'color:' + str_color_font + ';';
        //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
        //str_HTML_style = str_HTML_style + 'background-color:' + str_color_cell + ';';
        str_HTML_style = str_HTML_style + '}';
      
        str_HTML_style = str_HTML_style + 'td {';
        str_HTML_style = str_HTML_style + 'border-width:1px;';
        str_HTML_style = str_HTML_style + 'border-style:solid;';
        str_HTML_style = str_HTML_style + 'border-color:black;';
        str_HTML_style = str_HTML_style + '}';
      
        str_HTML_style = str_HTML_style + '.container_column {';
        str_HTML_style = str_HTML_style + 'display:flex;';
        //Elemente werden untereinander dargestellt
        str_HTML_style = str_HTML_style + 'flex-direction: column;';
        str_HTML_style = str_HTML_style + 'justify-content: flex-start;';
        //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
        //str_HTML_style = str_HTML_style + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
        str_HTML_style = str_HTML_style + '}';
      
        str_HTML_style = str_HTML_style + '.container_row {';
        str_HTML_style = str_HTML_style + 'display: flex;';
        //Elemente werden untereinander dargestellt
        str_HTML_style = str_HTML_style + 'flex-direction: row;';
        str_HTML_style = str_HTML_style + 'justify-content: space-between;';
        //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
        //str_HTML_style = str_HTML_style + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
        str_HTML_style = str_HTML_style + '}';
      
        str_HTML_style = str_HTML_style + 'input {';
        str_HTML_style = str_HTML_style + 'height:10vw;';
        str_HTML_style = str_HTML_style + 'width:10vw;';
        str_HTML_style = str_HTML_style + '}';
      
        str_HTML_style = str_HTML_style + '.img_wetter {';
        str_HTML_style = str_HTML_style + 'height:15vw;';
        str_HTML_style = str_HTML_style + 'width:15vw;';
        str_HTML_style = str_HTML_style + '}';
       
        //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_style = str_HTML_style + '.box_uhr {font-size:14vmax;}';
        str_HTML_style = str_HTML_style + '.box_datum {font-size:4vmax;text-align:center;}';
        str_HTML_style = str_HTML_style + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
        
        str_HTML_style = str_HTML_style + '.table_Wettervorschau {';
        str_HTML_style = str_HTML_style + 'margin-top:3vw;';
        str_HTML_style = str_HTML_style + 'border-collapse: collapse;';
        str_HTML_style = str_HTML_style + 'font-size:3vmax;';
        str_HTML_style = str_HTML_style + 'color:' + str_color_font + ';';
        str_HTML_style = str_HTML_style + '}';
        str_HTML_style = str_HTML_style + '</style>';
      
      // ##########################################################################
      // 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_style + '<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 + '<span><img class="img_wetter" src="' + image_Wetter + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '"/></span>';
        }else{
            str_HTML = str_HTML + '<span><img class="img_wetter" src="' + image_Wetter + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '"/></span>';
        }
        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 + 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 + 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 + 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 + 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 + 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;
      }
      
      

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

      Hier stand was.

      dslraserD 2 Replies Last reply
      2
      • B blackeagle998

        Hier stand was.

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

        @blackeagle998
        Danke Dir. Ich muß jetzt erstmal los. Probiere ich dann später und gebe Dir Rückmeldung.

        1 Reply Last reply
        0
        • B blackeagle998

          Hier stand was.

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

          @blackeagle998 sagte in Test Adapter iQontrol 1.2.x:

          Anschließend solltest du per Klick auf das Wetter-Icon oben rechts die Anzeige steuern können.
          Probier mal bitte ob es geht.

          Funktioniert prima. Danke Dir.

          2_5188614552798891176.gif

          1 Reply Last reply
          1
          • B Offline
            B Offline
            blackeagle998
            wrote on last edited by blackeagle998
            #3346

            Hier stand was.

            K C M 3 Replies Last reply
            2
            • B blackeagle998

              Hier stand was.

              K Offline
              K Offline
              Kueppert
              wrote on last edited by Kueppert
              #3347

              @blackeagle998 ich denke, das kannst du auf jeden Fall hier reinstellen. Ggf kann man das mit irgendwo beim Adapter packen als Idee zu einer Ideensammlung? :)
              Ich hab noch den Vacuum v1, da gibts keine Räume, aber die restlichen Funktionen sollten funktionieren.

              UDM Pro, Intel NUC - ioBroker in Proxmox-VM, PiHole+Grafana&Influx+TasmoAdmin in LXCs, Raspberry Pi3 (als CCU), Zigbee-Stick Sonoff, Synology DS918+

              B dslraserD 2 Replies Last reply
              0
              • K Kueppert

                @blackeagle998 ich denke, das kannst du auf jeden Fall hier reinstellen. Ggf kann man das mit irgendwo beim Adapter packen als Idee zu einer Ideensammlung? :)
                Ich hab noch den Vacuum v1, da gibts keine Räume, aber die restlichen Funktionen sollten funktionieren.

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

                @Kueppert
                Hab's oben ergänzt :wink:
                Hmm kann sein, dass es momentan nur geht, wenn auch Räume gefunden werden.
                Wusste nicht, dass es auch ohne Raumdefinitionen geht.

                Probier es mal, wenn nicht, muss ich da nochmal ran...

                K 1 Reply Last reply
                0
                • B blackeagle998

                  @Kueppert
                  Hab's oben ergänzt :wink:
                  Hmm kann sein, dass es momentan nur geht, wenn auch Räume gefunden werden.
                  Wusste nicht, dass es auch ohne Raumdefinitionen geht.

                  Probier es mal, wenn nicht, muss ich da nochmal ran...

                  K Offline
                  K Offline
                  Kueppert
                  wrote on last edited by Kueppert
                  #3349

                  @blackeagle998 wofür ist das css- und js-file? ^^ Ansonsten hört sich das total easy an. Probiere ich später direkt mal aus ^^
                  NACHTRAG: steht in Punkt 1 ^^

                  UDM Pro, Intel NUC - ioBroker in Proxmox-VM, PiHole+Grafana&Influx+TasmoAdmin in LXCs, Raspberry Pi3 (als CCU), Zigbee-Stick Sonoff, Synology DS918+

                  1 Reply Last reply
                  0
                  • K Kueppert

                    @blackeagle998 ich denke, das kannst du auf jeden Fall hier reinstellen. Ggf kann man das mit irgendwo beim Adapter packen als Idee zu einer Ideensammlung? :)
                    Ich hab noch den Vacuum v1, da gibts keine Räume, aber die restlichen Funktionen sollten funktionieren.

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

                    @Kueppert sagte in Test Adapter iQontrol 1.2.x:

                    Ich hab noch den Vacuum v1, da gibts keine Räume, aber die restlichen Funktionen sollten funktionieren.

                    Ich habe auch noch den V1, mal schauen was da geht...

                    1 Reply Last reply
                    0
                    • s.bormannS s.bormann

                      @blackeagle998 sagte in Test Adapter iQontrol 1.2.x:

                      @s-bormann
                      Hey, openDialog einer Popup Kachel mit URL wird nicht vernünftig skaliert, das Popup rutscht immer aus dem Bild rechts raus:
                      Screenshot_20201004-232908_Chrome_1.png

                      Bei einem "normalen" Dialog klappt es:
                      Screenshot_20201004-232945_Chrome_1.png

                      Kannst du mal bitte schauen ob du da noch was drehen kannst?

                      Versuchs mal mit der aktuellen Github-Version.

                      M Offline
                      M Offline
                      muuulle
                      wrote on last edited by
                      #3351

                      @s-bormann
                      Magst du einmal einen kurzen Ausblick geben, was deine nächsten Schwerpunkte beim Adapter sind?

                      Ich denke, dass ich nicht der einzige Neugierige bin 😊

                      s.bormannS 1 Reply Last reply
                      1
                      • dslraserD dslraser

                        @s-bormann
                        Ich habe bisher eine kleine Kachel als Wert benutzt um mir html Listen anzuzeigen.
                        Eine aktive Kachel ist hell mit entsprechendem Symbol und eine inaktive mit anderem Symbol.

                        aktiv

                        Screenshot_20201007-203627_Chrome.jpg

                        inaktiv

                        Screenshot_20201007-203647_Chrome.jpg

                        Liste als PopUp

                        Screenshot_20201007-203301_Chrome.jpg

                        Jetzt möchte ich das Ganze als Widget nutzen, das funktioniert auch soweit, bis auf eine Kleinigkeit. Ich bekomme den Überzug der Kachel nicht weg

                        links als Wert /rechts als Widget

                        Screenshot_20201007-203238_Chrome.jpg

                        Das Widget an sich gefällt mir besser, da mehr Bildschirmfläche auf dem Handy benutzt wird

                        Screenshot_20201007-203318_Chrome.jpg

                        Wie bekomme ich den Überzug bzw. "Schleier" von dem 0,5x0,5 Icon weg ?

                        Screenshot_20201007-211712_Chrome.jpg

                        s.bormannS Offline
                        s.bormannS Offline
                        s.bormann
                        Most Active
                        wrote on last edited by
                        #3352

                        @dslraser sagte in Test Adapter iQontrol 1.2.x:

                        @s-bormann
                        Ich habe bisher eine kleine Kachel als Wert benutzt um mir html Listen anzuzeigen.
                        Eine aktive Kachel ist hell mit entsprechendem Symbol und eine inaktive mit anderem Symbol.

                        aktiv

                        Screenshot_20201007-203627_Chrome.jpg

                        inaktiv

                        Screenshot_20201007-203647_Chrome.jpg

                        Liste als PopUp

                        Screenshot_20201007-203301_Chrome.jpg

                        Jetzt möchte ich das Ganze als Widget nutzen, das funktioniert auch soweit, bis auf eine Kleinigkeit. Ich bekomme den Überzug der Kachel nicht weg

                        links als Wert /rechts als Widget

                        Screenshot_20201007-203238_Chrome.jpg

                        Das Widget an sich gefällt mir besser, da mehr Bildschirmfläche auf dem Handy benutzt wird

                        Screenshot_20201007-203318_Chrome.jpg

                        Wie bekomme ich den Überzug bzw. "Schleier" von dem 0,5x0,5 Icon weg ?

                        Screenshot_20201007-211712_Chrome.jpg

                        Hi,
                        die neue Github-Version hat das jetzt als Option
                        VG

                        dslraserD 1 Reply Last reply
                        0
                        • B blackeagle998

                          @s-bormann
                          Hi, siehst du irgendeine Möglichkeit die .js und .css Dateien im Ordner /userwidgets direkt über die iQontrol Config Seite bearbeiten zu können?

                          Dieses ständige hochladen bei Änderungen nervt etwas :wink:

                          s.bormannS Offline
                          s.bormannS Offline
                          s.bormann
                          Most Active
                          wrote on last edited by s.bormann
                          #3353

                          @blackeagle998 sagte in Test Adapter iQontrol 1.2.x:

                          @s-bormann
                          Hi, siehst du irgendeine Möglichkeit die .js und .css Dateien im Ordner /userwidgets direkt über die iQontrol Config Seite bearbeiten zu können?

                          Dieses ständige hochladen bei Änderungen nervt etwas :wink:

                          Wir denken wohl oft an das Gleiche. Schau mal in der aktuellen github-Version :)

                          8f05206b-517a-4d2c-a93e-81319c70f986-image.png

                          1 Reply Last reply
                          1
                          • B blackeagle998

                            @dslraser @s-bormann
                            Hmm stimmt, jetzt lässt sich der virtuelle State einer Widget Kachel nicht mehr schalten, wenn das Icon blank ist.
                            Kann man die Option pro Kachel steuerbar machen?

                            s.bormannS Offline
                            s.bormannS Offline
                            s.bormann
                            Most Active
                            wrote on last edited by
                            #3354

                            @blackeagle998 sagte in Test Adapter iQontrol 1.2.x:

                            @dslraser @s-bormann
                            Hmm stimmt, jetzt lässt sich der virtuelle State einer Widget Kachel nicht mehr schalten, wenn das Icon blank ist.
                            Kann man die Option pro Kachel steuerbar machen?

                            Hi,
                            ist jetzt als Option in der aktuellen Github-Version verfügbar (Mauszeiger-Events für Icon).
                            VG

                            1 Reply Last reply
                            0
                            • dslraserD dslraser

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

                              Sag mal, kann man mit den neuen ADDITIONAL_CONTROLS nicht so was basteln? Eine value-List, in der man den Sender auswählt, und darunter ein oder mehrere Strings mit den EPG-Infos. Dahinter steckt dann ein Blockly-Script, dass dann die String-Datenpunkte entsprechend der Auswahl der value-List befüllt.

                              meinst Du so in etwa ?

                              Bildschirmfoto 2020-10-07 um 22.18.34.png

                              EDIT: übrigens sind beim Start trotz anderer Einstellung alle Sektionen geöffnet

                              Bildschirmfoto 2020-10-07 um 22.46.12.png

                              s.bormannS Offline
                              s.bormannS Offline
                              s.bormann
                              Most Active
                              wrote on last edited by
                              #3355

                              @dslraser sagte in Test Adapter iQontrol 1.2.x:

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

                              Sag mal, kann man mit den neuen ADDITIONAL_CONTROLS nicht so was basteln? Eine value-List, in der man den Sender auswählt, und darunter ein oder mehrere Strings mit den EPG-Infos. Dahinter steckt dann ein Blockly-Script, dass dann die String-Datenpunkte entsprechend der Auswahl der value-List befüllt.

                              meinst Du so in etwa ?

                              Bildschirmfoto 2020-10-07 um 22.18.34.png

                              Ja, das sieht doch ganz gut aus, oder?

                              EDIT: übrigens sind beim Start trotz anderer Einstellung alle Sektionen geöffnet

                              Bildschirmfoto 2020-10-07 um 22.46.12.png

                              Bei mir funktioniert das genau, wie es soll.

                              Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).
                              VG!

                              dslraserD 1 Reply Last reply
                              0
                              • M muuulle

                                @s-bormann
                                Magst du einmal einen kurzen Ausblick geben, was deine nächsten Schwerpunkte beim Adapter sind?

                                Ich denke, dass ich nicht der einzige Neugierige bin 😊

                                s.bormannS Offline
                                s.bormannS Offline
                                s.bormann
                                Most Active
                                wrote on last edited by
                                #3356

                                @muuulle sagte in Test Adapter iQontrol 1.2.x:

                                @s-bormann
                                Magst du einmal einen kurzen Ausblick geben, was deine nächsten Schwerpunkte beim Adapter sind?

                                Ich denke, dass ich nicht der einzige Neugierige bin 😊

                                Hmm, das ganze geschieht mehr so spontan und ohne so ganz ausgeklügelten Plan :)

                                Manchmal fasziniert mich einfach ein Gedanke oder eine Idee (die kommen ja auch oft hier aus dem Forum).

                                Ein paar andere Dinge stehen zwar noch auf einer ToDo-Liste, allerdings weiß ich noch nicht, ob und wann ich das umsetzen will und kann.

                                Was ich gerne noch machen würde (aber das geht vermutlich nur, wenn ich Urlaub und mehr zusammenhängende Zeit habe), ist eine Möglichkeit, automatisch Räume und Geräte einfügen zu lassen (entsprechend der Raum-Liste von ioBroker). Aktuell ist mir das aber ein zu großes Projekt.

                                Zunächst denke ich deshalb eher, dass ich etwas Zeit in die feste Implementation von Widgets stecken werde. Hier sind ja schon einige ziemlich gute Entwürfe entstanden, die ich gerne (natürlich mit Zustimmung der Entwickler) fest in iQontrol integrieren würde. Hier denke ich gerade darüber nach, wie man das dann mit den dazu benötigten Datenpunkten lösen kann.

                                Ich hoffe, das hilft erst mal :)

                                VG!

                                1 Reply Last reply
                                3
                                • s.bormannS s.bormann

                                  @dslraser sagte in Test Adapter iQontrol 1.2.x:

                                  @s-bormann
                                  Ich habe bisher eine kleine Kachel als Wert benutzt um mir html Listen anzuzeigen.
                                  Eine aktive Kachel ist hell mit entsprechendem Symbol und eine inaktive mit anderem Symbol.

                                  aktiv

                                  Screenshot_20201007-203627_Chrome.jpg

                                  inaktiv

                                  Screenshot_20201007-203647_Chrome.jpg

                                  Liste als PopUp

                                  Screenshot_20201007-203301_Chrome.jpg

                                  Jetzt möchte ich das Ganze als Widget nutzen, das funktioniert auch soweit, bis auf eine Kleinigkeit. Ich bekomme den Überzug der Kachel nicht weg

                                  links als Wert /rechts als Widget

                                  Screenshot_20201007-203238_Chrome.jpg

                                  Das Widget an sich gefällt mir besser, da mehr Bildschirmfläche auf dem Handy benutzt wird

                                  Screenshot_20201007-203318_Chrome.jpg

                                  Wie bekomme ich den Überzug bzw. "Schleier" von dem 0,5x0,5 Icon weg ?

                                  Screenshot_20201007-211712_Chrome.jpg

                                  Hi,
                                  die neue Github-Version hat das jetzt als Option
                                  VG

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

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

                                  Hi,
                                  die neue Github-Version hat das jetzt als Option
                                  VG

                                  Danke Dir, aber welche Option ist das ?

                                  s.bormannS 1 Reply Last reply
                                  0
                                  • dslraserD dslraser

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

                                    Hi,
                                    die neue Github-Version hat das jetzt als Option
                                    VG

                                    Danke Dir, aber welche Option ist das ?

                                    s.bormannS Offline
                                    s.bormannS Offline
                                    s.bormann
                                    Most Active
                                    wrote on last edited by
                                    #3358

                                    @dslraser 924d17f3-e532-4a6a-9a68-01ce40aa17b0-image.png
                                    Gibts für aktiv/inaktiv/vergrößert

                                    dslraserD 1 Reply Last reply
                                    0
                                    • s.bormannS s.bormann

                                      @dslraser 924d17f3-e532-4a6a-9a68-01ce40aa17b0-image.png
                                      Gibts für aktiv/inaktiv/vergrößert

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

                                      @s-bormann
                                      Danke, funktioniert wie gewünscht. 👍

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

                                        @s-bormann
                                        hattest Du das gelesen ? (dazu hast Du Dich bisher noch nicht geäußert)

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

                                        1 Reply Last reply
                                        0
                                        • s.bormannS s.bormann

                                          @dslraser sagte in Test Adapter iQontrol 1.2.x:

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

                                          Sag mal, kann man mit den neuen ADDITIONAL_CONTROLS nicht so was basteln? Eine value-List, in der man den Sender auswählt, und darunter ein oder mehrere Strings mit den EPG-Infos. Dahinter steckt dann ein Blockly-Script, dass dann die String-Datenpunkte entsprechend der Auswahl der value-List befüllt.

                                          meinst Du so in etwa ?

                                          Bildschirmfoto 2020-10-07 um 22.18.34.png

                                          Ja, das sieht doch ganz gut aus, oder?

                                          EDIT: übrigens sind beim Start trotz anderer Einstellung alle Sektionen geöffnet

                                          Bildschirmfoto 2020-10-07 um 22.46.12.png

                                          Bei mir funktioniert das genau, wie es soll.

                                          Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).
                                          VG!

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

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

                                          Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).

                                          Funktioniert auch bei mir, dann werde ich mal alle meine Sender einbauen :+1:
                                          Kannst Du bitte die Beschriftung für "Channels:" auch "umbenennbar" machen.

                                          Bildschirmfoto 2020-10-09 um 23.03.35.png

                                          s.bormannS 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

                                          381

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          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