Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. VIS-Tabelle für WLAN Wetterstation

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    485

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

VIS-Tabelle für WLAN Wetterstation

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
101 Beiträge 11 Kommentatoren 16.3k Aufrufe 16 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • NashraN Offline
    NashraN Offline
    Nashra
    Most Active Forum Testing
    schrieb am zuletzt editiert von
    #85

    @SBorg

    16:11:26.603	info	javascript.0 (430) Start javascript script.js.Wetter.Statistik-tabelle
    16:11:26.630	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle-sborg: registered 2 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
    16:11:26.727	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
    16:11:26.727	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":8.22,"Hoechstwert":17.72,"Temp_Durchschnitt":13.81,"Max_Windboe":29.45,"Max_Regenmenge":8.1,"Regenmenge_Monat":42.7,"warme_Tage":0,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":0,"kalte_Tage":0,"Eistage":0,"sehr_kalte_Tage":0}
    16:11:26.728	error	javascript.0 (430) script.js.Wetter.Statistik-tabelle: SyntaxError: Unexpected token : in JSON at position 12
    16:11:26.728	error	javascript.0 (430) at script.js.Wetter.Statistik-tabelle:71:56
    16:11:26.728	error	javascript.0 (430) at dataStuff (script.js.Wetter.Statistik-tabelle:56:15)
    16:11:26.729	error	javascript.0 (430) at main (script.js.Wetter.Statistik-tabelle:178:4)
    16:11:45.898	info	javascript.0 (430) Stop script script.js.Wetter.Statistik-tabelle
    
    

    Gruß Ralf
    Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    SBorgS 1 Antwort Letzte Antwort
    0
    • SBorgS SBorg

      @nashra Ich kann es halt "leider" nicht testen ;)

      wie üblich ... (der letzte Output genügt)

       if (typeof(formathelp)=="object") {helper=getState(id).val[0];} 
        else if (typeof(formathelp)=="string") { helper=String(getState(id).val);
      console.log(typeof(helper));
      console.log(helper);
                                                 helper=JSON.parse(helper.substring(1, helper.length-1));
      console.log("2nd helper: "+helper);
                                                 }
        else { helper=JSON.parse(getState(id).val); }
      
      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von
      #86

      @sborg

      problem ist -glaube ich - diese zeile :

      helper=JSON.parse(helper.substring(1, (getState(id).val).length-1));
      

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      SBorgS 1 Antwort Letzte Antwort
      0
      • liv-in-skyL liv-in-sky

        @sborg

        problem ist -glaube ich - diese zeile :

        helper=JSON.parse(helper.substring(1, (getState(id).val).length-1));
        
        SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #87

        @liv-in-sky Jepp, aus irgendeinem Grund entfernt er bei @Nashra beim einlesen die "[]" ich will jetzt per "indexof()" prüfen ob sie drin sind, dann kann ich normal weitermachen oder sie wieder hinzufügen. Nicht schön, aber so funktioniert es für alle...

        LG SBorg ( SBorg auf GitHub)
        Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

        1 Antwort Letzte Antwort
        0
        • NashraN Nashra

          @SBorg

          16:11:26.603	info	javascript.0 (430) Start javascript script.js.Wetter.Statistik-tabelle
          16:11:26.630	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle-sborg: registered 2 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
          16:11:26.727	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
          16:11:26.727	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":8.22,"Hoechstwert":17.72,"Temp_Durchschnitt":13.81,"Max_Windboe":29.45,"Max_Regenmenge":8.1,"Regenmenge_Monat":42.7,"warme_Tage":0,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":0,"kalte_Tage":0,"Eistage":0,"sehr_kalte_Tage":0}
          16:11:26.728	error	javascript.0 (430) script.js.Wetter.Statistik-tabelle: SyntaxError: Unexpected token : in JSON at position 12
          16:11:26.728	error	javascript.0 (430) at script.js.Wetter.Statistik-tabelle:71:56
          16:11:26.728	error	javascript.0 (430) at dataStuff (script.js.Wetter.Statistik-tabelle:56:15)
          16:11:26.729	error	javascript.0 (430) at main (script.js.Wetter.Statistik-tabelle:178:4)
          16:11:45.898	info	javascript.0 (430) Stop script script.js.Wetter.Statistik-tabelle
          
          
          SBorgS Offline
          SBorgS Offline
          SBorg
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #88

          @nashra

           if (typeof(formathelp)=="object") {helper=getState(id).val[0];} 
            else if (typeof(formathelp)=="string") { helper=String(getState(id).val);
                                                     if (helper.indexOf("[")>=0) { helper=JSON.parse(helper.substring(1, helper.length-1)); }
                                                       else { helper=JSON.parse(helper); }  
                                                     }
            else { helper=JSON.parse(getState(id).val); }
          

          LG SBorg ( SBorg auf GitHub)
          Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

          1 Antwort Letzte Antwort
          0
          • NashraN Offline
            NashraN Offline
            Nashra
            Most Active Forum Testing
            schrieb am zuletzt editiert von Nashra
            #89

            gelöscht

            Gruß Ralf
            Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            1 Antwort Letzte Antwort
            0
            • NashraN Offline
              NashraN Offline
              Nashra
              Most Active Forum Testing
              schrieb am zuletzt editiert von
              #90

              @SBorg

              16:42:47.832	info	javascript.0 (430) Start javascript script.js.Wetter.Statistik-tabelle
              16:42:47.849	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: registered 2 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":8.22,"Hoechstwert":17.72,"Temp_Durchschnitt":13.81,"Max_Windboe":29.45,"Max_Regenmenge":8.1,"Regenmenge_Monat":42.7,"warme_Tage":0,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":0,"kalte_Tage":0,"Eistage":0,"sehr_kalte_Tage":0}
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":-3.72,"Hoechstwert":20.27,"Temp_Durchschnitt":1.03,"Max_Windboe":36.69,"Max_Regenmenge":5.5,"Regenmenge_Monat":20.8,"warme_Tage":5,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":3,"kalte_Tage":8,"Eistage":0,"sehr_kalte_Tage":0}
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":-4.72,"Hoechstwert":14.61,"Temp_Durchschnitt":9.42,"Max_Windboe":46.02,"Max_Regenmenge":12.9,"Regenmenge_Monat":204.4,"warme_Tage":12,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":13,"kalte_Tage":22,"Eistage":0,"sehr_kalte_Tage":0}
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -1.77, "Hoechstwert": 12.27, "Temp_Durchschnitt": 2.95, "Max_Windboe": 40.39, "Max_Regenmenge": 22.3, "Regenmenge_Monat": 165.6, "warme_Tage": 0, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 10, "kalte_Tage": 26, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -10.61, "Hoechstwert": 20.22, "Temp_Durchschnitt": 4.19, "Max_Windboe": 34.92, "Max_Regenmenge": 27.4, "Regenmenge_Monat": 203.4, "warme_Tage": 1, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 10, "kalte_Tage": 13, "Eistage": 4, "sehr_kalte_Tage": 2 }
              16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -3.72, "Hoechstwert": 24.38, "Temp_Durchschnitt": 6.68, "Max_Windboe": 36.69, "Max_Regenmenge": 17.1, "Regenmenge_Monat": 67.8, "warme_Tage": 2, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 5, "kalte_Tage": 15, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -0.77, "Hoechstwert": 22.22, "Temp_Durchschnitt": 7.58, "Max_Windboe": 38.46, "Max_Regenmenge": 15.4, "Regenmenge_Monat": 43.5, "warme_Tage": 2, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 6, "kalte_Tage": 9, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 0.5, "Hoechstwert": 28.38, "Temp_Durchschnitt": 11.83, "Max_Windboe": 36.69, "Max_Regenmenge": 11.7, "Regenmenge_Monat": 95.7, "warme_Tage": 6, "Sommertage": 1, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 9.5, "Hoechstwert": 34.5, "Temp_Durchschnitt": 19.81, "Max_Windboe": 21.88, "Max_Regenmenge": 24.3, "Regenmenge_Monat": 72.4, "warme_Tage": 23, "Sommertage": 16, "heisse_Tage": 3, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 11.5, "Hoechstwert": 28.72, "Temp_Durchschnitt": 18.54, "Max_Windboe": 179.93, "Max_Regenmenge": 57.7, "Regenmenge_Monat": 125.1, "warme_Tage": 26, "Sommertage": 14, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 0, "Hoechstwert": 0, "Temp_Durchschnitt": 0, "Max_Windboe": 0, "Max_Regenmenge": 0, "Regenmenge_Monat": 0, "warme_Tage": 0, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
              16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 0, "Hoechstwert": 0, "Temp_Durchschnitt": 0, "Max_Windboe": 0, "Max_Regenmenge": 0, "Regenmenge_Monat": 0, "warme_Tage": 0, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
              16:42:51.172	info	javascript.0 (430) Stop script script.js.Wetter.Statistik-tabelle
              
              

              Kein Fehler mehr, aber ist das ok mit der Ausgabe

              Gruß Ralf
              Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              SBorgS 1 Antwort Letzte Antwort
              0
              • NashraN Nashra

                @SBorg

                16:42:47.832	info	javascript.0 (430) Start javascript script.js.Wetter.Statistik-tabelle
                16:42:47.849	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: registered 2 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":8.22,"Hoechstwert":17.72,"Temp_Durchschnitt":13.81,"Max_Windboe":29.45,"Max_Regenmenge":8.1,"Regenmenge_Monat":42.7,"warme_Tage":0,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":0,"kalte_Tage":0,"Eistage":0,"sehr_kalte_Tage":0}
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":-3.72,"Hoechstwert":20.27,"Temp_Durchschnitt":1.03,"Max_Windboe":36.69,"Max_Regenmenge":5.5,"Regenmenge_Monat":20.8,"warme_Tage":5,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":3,"kalte_Tage":8,"Eistage":0,"sehr_kalte_Tage":0}
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: {"Tiefstwert":-4.72,"Hoechstwert":14.61,"Temp_Durchschnitt":9.42,"Max_Windboe":46.02,"Max_Regenmenge":12.9,"Regenmenge_Monat":204.4,"warme_Tage":12,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":13,"kalte_Tage":22,"Eistage":0,"sehr_kalte_Tage":0}
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -1.77, "Hoechstwert": 12.27, "Temp_Durchschnitt": 2.95, "Max_Windboe": 40.39, "Max_Regenmenge": 22.3, "Regenmenge_Monat": 165.6, "warme_Tage": 0, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 10, "kalte_Tage": 26, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -10.61, "Hoechstwert": 20.22, "Temp_Durchschnitt": 4.19, "Max_Windboe": 34.92, "Max_Regenmenge": 27.4, "Regenmenge_Monat": 203.4, "warme_Tage": 1, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 10, "kalte_Tage": 13, "Eistage": 4, "sehr_kalte_Tage": 2 }
                16:42:47.899	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -3.72, "Hoechstwert": 24.38, "Temp_Durchschnitt": 6.68, "Max_Windboe": 36.69, "Max_Regenmenge": 17.1, "Regenmenge_Monat": 67.8, "warme_Tage": 2, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 5, "kalte_Tage": 15, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": -0.77, "Hoechstwert": 22.22, "Temp_Durchschnitt": 7.58, "Max_Windboe": 38.46, "Max_Regenmenge": 15.4, "Regenmenge_Monat": 43.5, "warme_Tage": 2, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 6, "kalte_Tage": 9, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 0.5, "Hoechstwert": 28.38, "Temp_Durchschnitt": 11.83, "Max_Windboe": 36.69, "Max_Regenmenge": 11.7, "Regenmenge_Monat": 95.7, "warme_Tage": 6, "Sommertage": 1, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 9.5, "Hoechstwert": 34.5, "Temp_Durchschnitt": 19.81, "Max_Windboe": 21.88, "Max_Regenmenge": 24.3, "Regenmenge_Monat": 72.4, "warme_Tage": 23, "Sommertage": 16, "heisse_Tage": 3, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 11.5, "Hoechstwert": 28.72, "Temp_Durchschnitt": 18.54, "Max_Windboe": 179.93, "Max_Regenmenge": 57.7, "Regenmenge_Monat": 125.1, "warme_Tage": 26, "Sommertage": 14, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 0, "Hoechstwert": 0, "Temp_Durchschnitt": 0, "Max_Windboe": 0, "Max_Regenmenge": 0, "Regenmenge_Monat": 0, "warme_Tage": 0, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: string
                16:42:47.900	info	javascript.0 (430) script.js.Wetter.Statistik-tabelle: { "Tiefstwert": 0, "Hoechstwert": 0, "Temp_Durchschnitt": 0, "Max_Windboe": 0, "Max_Regenmenge": 0, "Regenmenge_Monat": 0, "warme_Tage": 0, "Sommertage": 0, "heisse_Tage": 0, "Tropennaechte":0, "Wuestentage":0, "Frost_Tage": 0, "kalte_Tage": 0, "Eistage": 0, "sehr_kalte_Tage": 0 }
                16:42:51.172	info	javascript.0 (430) Stop script script.js.Wetter.Statistik-tabelle
                
                

                Kein Fehler mehr, aber ist das ok mit der Ausgabe

                SBorgS Offline
                SBorgS Offline
                SBorg
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #91

                @nashra sagte in VIS-Tabelle für WLAN Wetterstation:

                Kein Fehler mehr, aber ist das ok mit der Ausgabe

                Sieht gut aus. Wenn auch deine Tabelle in der VIS funktioniert warten wir mal bis zum nächsten Monatswechsel :)
                Die "console.log..." kannst du nun alle entfernen oder per "//" auskommentieren, sonst wird dein Log über kurz oder lang recht voll ;)

                LG SBorg ( SBorg auf GitHub)
                Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                NashraN 2 Antworten Letzte Antwort
                1
                • SBorgS SBorg

                  @nashra sagte in VIS-Tabelle für WLAN Wetterstation:

                  Kein Fehler mehr, aber ist das ok mit der Ausgabe

                  Sieht gut aus. Wenn auch deine Tabelle in der VIS funktioniert warten wir mal bis zum nächsten Monatswechsel :)
                  Die "console.log..." kannst du nun alle entfernen oder per "//" auskommentieren, sonst wird dein Log über kurz oder lang recht voll ;)

                  NashraN Offline
                  NashraN Offline
                  Nashra
                  Most Active Forum Testing
                  schrieb am zuletzt editiert von
                  #92

                  @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                  @nashra sagte in VIS-Tabelle für WLAN Wetterstation:

                  Kein Fehler mehr, aber ist das ok mit der Ausgabe

                  Sieht gut aus. Wenn auch deine Tabelle in der VIS funktioniert warten wir mal bis zum nächsten Monatswechsel :)
                  Die "console.log..." kannst du nun alle entfernen oder per "//" auskommentieren, sonst wird dein Log über kurz oder lang recht voll ;)

                  Ja, hatte ich schon gemacht mit //
                  Ok, dann warten wir mal bis Ende des Monats was dann passiert.
                  Vielen Dank erstmal :+1:

                  Gruß Ralf
                  Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  1 Antwort Letzte Antwort
                  0
                  • SBorgS Offline
                    SBorgS Offline
                    SBorg
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #93

                    Noch eine kleine Änderung wer denn möchte. Wenn man es jetzt in der VIS öffnet, springt er ja automatisch zum Januar 2023. Die Daten gibt es aber erst am 01. Februar. Wäre doch schön wenn er immer einen Monat weniger als den aktuellen springen würde (und für den Januar zzgl. noch -1 Jahr :) ).

                    Einfach den kpl. Scheduler im Skript ersetzen:

                    schedule('*/30 * * * *', function() { 
                      //Patch -1 Monat bzw. Jahr, damit immer etwas angezeigt wird (aktuelle Monatsdaten gibt es ja hier noch keine)
                        let MonatTmp = parseInt(formatDate(getDateObject((new Date().getTime())), "MM"));
                        let JahrTmp = 0;
                        if (MonatTmp>1) { MonatTmp--; } else { MonatTmp = 12; JahrTmp = -1; }  
                      setState("javascript." + instance + ".Wetterstation.MonatAuswahl", MonatTmp) ;
                      setStateDelayed("javascript." + instance + ".Wetterstation.AuswahlJahr", parseInt(formatDate(getDateObject((new Date().getTime())), "JJJJ"))+JahrTmp ,10000);
                    });
                    

                    LG SBorg ( SBorg auf GitHub)
                    Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                    1 Antwort Letzte Antwort
                    1
                    • SBorgS SBorg

                      @nashra sagte in VIS-Tabelle für WLAN Wetterstation:

                      Kein Fehler mehr, aber ist das ok mit der Ausgabe

                      Sieht gut aus. Wenn auch deine Tabelle in der VIS funktioniert warten wir mal bis zum nächsten Monatswechsel :)
                      Die "console.log..." kannst du nun alle entfernen oder per "//" auskommentieren, sonst wird dein Log über kurz oder lang recht voll ;)

                      NashraN Offline
                      NashraN Offline
                      Nashra
                      Most Active Forum Testing
                      schrieb am zuletzt editiert von
                      #94

                      @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                      @nashra sagte in VIS-Tabelle für WLAN Wetterstation:

                      Kein Fehler mehr, aber ist das ok mit der Ausgabe

                      Sieht gut aus. Wenn auch deine Tabelle in der VIS funktioniert warten wir mal bis zum nächsten Monatswechsel :)
                      Die "console.log..." kannst du nun alle entfernen oder per "//" auskommentieren, sonst wird dein Log über kurz oder lang recht voll ;)

                      Hallo @SBorg
                      es hat funktioniert, Tabelle zeigt Werte richtig an :+1: :+1: :+1:

                      Gruß Ralf
                      Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      SBorgS 1 Antwort Letzte Antwort
                      0
                      • NashraN Nashra

                        @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                        @nashra sagte in VIS-Tabelle für WLAN Wetterstation:

                        Kein Fehler mehr, aber ist das ok mit der Ausgabe

                        Sieht gut aus. Wenn auch deine Tabelle in der VIS funktioniert warten wir mal bis zum nächsten Monatswechsel :)
                        Die "console.log..." kannst du nun alle entfernen oder per "//" auskommentieren, sonst wird dein Log über kurz oder lang recht voll ;)

                        Hallo @SBorg
                        es hat funktioniert, Tabelle zeigt Werte richtig an :+1: :+1: :+1:

                        SBorgS Offline
                        SBorgS Offline
                        SBorg
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #95

                        @nashra :grinning: :sunglasses: :+1: Trotzdem merkwürdig das ist...

                        LG SBorg ( SBorg auf GitHub)
                        Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                        NashraN 1 Antwort Letzte Antwort
                        0
                        • SBorgS SBorg

                          @nashra :grinning: :sunglasses: :+1: Trotzdem merkwürdig das ist...

                          NashraN Offline
                          NashraN Offline
                          Nashra
                          Most Active Forum Testing
                          schrieb am zuletzt editiert von
                          #96

                          @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                          @nashra :grinning: :sunglasses: :+1: Trotzdem merkwürdig das ist...

                          jep, da hast du Recht aber ganz ehrlich, ist mir egal, hauptsache läuft jetzt :grin:

                          Gruß Ralf
                          Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          1 Antwort Letzte Antwort
                          0
                          • SBorgS SBorg

                            @nashra

                            Das Design wird dir bekannt vorkommen, "deine" Version des Skriptes bei mir:
                            Bild 002.png

                            Läuft dein ioB unter Windows oder Linux?
                            Der Datensatz stimmt, der Typ, das Skript funktioniert... eigentlich sollte das laufen.

                            NegaleinN Offline
                            NegaleinN Offline
                            Negalein
                            Global Moderator
                            schrieb am zuletzt editiert von Negalein
                            #97

                            @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                            Das Design wird dir bekannt vorkommen, "deine" Version des Skriptes bei mir:

                            Hallo

                            Hast du eine aktuelle View davon?

                            Bei mir kommt in der View undefinied.

                            30f02c6c-ea06-46d5-abfd-3bc25d91525e-image.png

                            ° Node.js: 20.17.0 NPM: 10.8.2
                            ° Proxmox, Ubuntu 22.04.3 LTS
                            ° Fixer ---> iob fix

                            SBorgS 1 Antwort Letzte Antwort
                            0
                            • NegaleinN Negalein

                              @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                              Das Design wird dir bekannt vorkommen, "deine" Version des Skriptes bei mir:

                              Hallo

                              Hast du eine aktuelle View davon?

                              Bei mir kommt in der View undefinied.

                              30f02c6c-ea06-46d5-abfd-3bc25d91525e-image.png

                              SBorgS Offline
                              SBorgS Offline
                              SBorg
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #98

                              @negalein
                              Ich glaube eher du hast da ein rudimentäres Problem (ich antworte gleich im WLAN-Skript Thread).
                              Da hat sich seit Uhrzeiten nichts dran geändert:
                              Bild 002.png

                              // @liv-in-sky 4.10.2021 11:45
                              //forum: https://forum.iobroker.net/topic/38286/vis-tabelle-f%C3%BCr-wlan-wetterstation
                              
                              const dataInputPath="0_userdata.0.Statistik.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
                              const inhaltFarbe="black";
                              const inhaltHintergrund="lightgray";
                              const monatFarbe="white";
                              const hintergrund="gray";
                              const htmlFarbTableBorderColor="black";
                              const abstandZelle=6;
                              const htmlRahmenLinien="all";
                              const htmlSchriftgroessehtmlSchriftart=""; //nicht verwendbar!
                              const htmlFarbFelderschrift="red";         //nicht verwendbar!
                              const htmlSchriftgroesse="13px";
                              const htmlSchriftart="Ubuntu-Light";       //"monospace" oder z.b. "Helvetica"
                              const weite="auto";                        //oder "500px"
                              
                              let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                                  "; font-family:"+htmlSchriftart+";\"";
                              
                              const varData={ 
                                           Tiefstwert:       { einheit:"°C",   name:"Minimum Temperatur"},
                                           Hoechstwert:      { einheit:"°C",   name:"Maximum Temperatur"}, 
                                           Temp_Durchschnitt:{ einheit:"°C",   name:"Durchschnittstemperatur"},
                                           Max_Windboee:     { einheit:'km/h', name:"Max Windböe"},
                                           Max_Regenmenge:   { einheit:'l/m²', name:"Max. Regen/Tag"},
                                           Regenmenge_Monat: { einheit:'l/m²', name:"Regen"},
                                           Regentage:        { einheit:"",     name:"Regentage"},
                                           sehr_kalte_Tage:  { einheit:"",     name:"Sehr kalte Tage (Min. unter -10°C)"},
                                           Eistage:          { einheit:"",     name:"Eistage (Max. unter 0°C)"},
                                           Frost_Tage:       { einheit:"",     name:"Frosttage (Min. unter 0°C)"},
                                           kalte_Tage:       { einheit:"",     name:"Kalte Tage (Max. unter 10°C)"},
                                           warme_Tage:       { einheit:"",     name:"Warme Tage (über 20°C)"},
                                           Sommertage:       { einheit:"",     name:"Sommertage (über 25°C)"},
                                           Tropennaechte:    { einheit:"",     name:"Tropennächte (Min. über 20°C)"},
                                           heisse_Tage:      { einheit:"",     name:"Heiße Tage (über 30°C)"},
                                           Wuestentage:      { einheit:"",     name:"Wüstentage (über 35°C)"}
                              };  
                              const table_rowspan = Object.keys(varData).length + 1;
                              
                              const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
                              
                              //--------------------------nix mehr ändern ab hier--------------------------------------
                              let myObj;
                              let myArrAll=[]
                              let myArrErstellt=[]
                              let tableContent;
                              let monWahlVIS;
                              let lastThree;
                              
                              //----------------------------------------------------------------------------------------
                              function dataStuff(){
                              let myArrAll=[]
                              let mySelector=dataInputPath+'.*.*'
                              $(mySelector).each(function(id) {
                              let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
                              let obj2 = { jahr: ida[jahri]};
                              let obj3 = { monat: ida[moni]};
                              let formathelp=getState(id).val;
                              let helper;
                              
                              if (typeof(formathelp)=="object") {helper=getState(id).val[0];} 
                               else if (typeof(formathelp)=="string") { helper=String(getState(id).val);
                                                                        if (helper.indexOf("[")>=0) { helper=JSON.parse(helper.substring(1, helper.length-1)); }
                                                                          else { helper=JSON.parse(helper); }  
                                                                        }
                               else { helper=JSON.parse(getState(id).val); }
                              
                              helper={ ...helper, ...obj2, ...obj3}
                              myArrAll.push(JSON.stringify(helper))
                              });
                              
                              //log(myArrAll)
                              tableContent = ""  
                              myObj=JSON.parse("["+myArrAll.toString()+"]")
                              if (lastThree==0) {
                              
                              //KOPFZEILE
                              let choseMonth=monate[monWahlVIS-1]
                              let choseMonthArr=choseMonth.split('')
                              let test=""
                              for (let i=0;i<choseMonthArr.length;i++){
                              
                              // log(choseMonthArr[i])
                               test=test+choseMonthArr[i]+`
                               `    
                              }
                              
                              //log(test)
                              //tableContent+='<td  class=\"test-klein\"  rowspan=\"17\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                              tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan='+table_rowspan+'\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Jahreswerte</td>'
                              
                              for (let i=0;i<myObj.length;i++) {
                               if(parseInt(myObj[i].monat)==monWahlVIS){
                              tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
                              }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                              
                              //RESTZEILEN
                              for(var index in varData){
                               tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                               for (let i=0;i<myObj.length;i++) {
                                  if(myObj[i].monat==monWahlVIS){
                                    tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                                }; tableContent="<tr>"+tableContent+"</tr>"
                              }
                              } //lastThree
                              else {
                              //log(myObj[0].monat)
                                myObj.sort(function (alpha, beta) {
                                         if (parseInt(alpha.monat) > parseInt(beta.monat))
                                             return 1;
                                          if (parseInt(beta.monat) > parseInt(alpha.monat))
                                             return -1;
                                          return 0;});
                                      //    log(myObj[0].monat)
                              //KOPFZEILE LASTTHREE
                              let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
                              let choseMonthArr=choseJahr.split('')
                              let test=""
                              for (let i=0;i<choseMonthArr.length;i++){
                              // log(choseMonthArr[i])
                               test=test+choseMonthArr[i]+`
                               `    
                              }
                              
                              //log(test)
                              //tableContent+='<td  class=\"test-klein\"  rowspan=\"17\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                              tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan='+table_rowspan+'\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
                              
                              for (let i=0;i<myObj.length;i++) {
                               if( parseInt(myObj[i].jahr)==parseInt(choseJahr) ){ //&& (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                              tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
                              }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                              
                              //RESTZEILEN
                              for(var index in varData){
                               tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                               for (let i=0;i<myObj.length;i++) {
                                if( parseInt(myObj[i].jahr)==parseInt(choseJahr) ){ //&& (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                                    tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                                }; tableContent="<tr>"+tableContent+"</tr>"
                              }
                              }
                              tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
                              //log(tableContent)
                              setState("0_userdata." + instance + ".Wetterstation.MonthlyDaten",tableContent)
                              }
                              
                              //--------------------------------------------------------------------------------------------------
                              async function main() {
                               if (!(await existsStateAsync("0_userdata." + instance + ".Wetterstation.MonthlyDaten"))) {
                                   await createStateAsync("0_userdata." + instance + ".Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
                               if (!(await existsStateAsync("0_userdata." + instance + "..Wetterstation.MonatAuswahl"))) {
                                   await createStateAsync("0_userdata." + instance + ".Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
                               if (!(await existsStateAsync("0_userdata." + instance + ".Wetterstation.AuswahlJahr"))) {
                                   await createStateAsync("0_userdata." + instance + ".Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
                               lastThree = (await getStateAsync("0_userdata." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                               monWahlVIS=((await getStateAsync("0_userdata." + instance + ".Wetterstation.MonatAuswahl")).val ) 
                               dataStuff(); 
                              }
                              
                              //-----------------------------------------------------------------------------------------------------
                              main()
                              
                              on({id: "0_userdata." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
                               main()
                              });
                              
                              on({id: "0_userdata." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
                               main()
                              });
                              
                              schedule('*/30 * * * *', function() { 
                               //Patch -1 Monat bzw. Jahr, damit immer etwas angezeigt wird (aktuelle Monatsdaten gibt es ja hier noch keine)
                                 let MonatTmp = parseInt(formatDate(getDateObject((new Date().getTime())), "MM"));
                                 let JahrTmp = 0;
                                 if (MonatTmp>1) { MonatTmp--; } else { MonatTmp = 12; JahrTmp = -1; }  
                               setState("0_userdata." + instance + ".Wetterstation.MonatAuswahl", MonatTmp) ;
                               setStateDelayed("0_userdata." + instance + ".Wetterstation.AuswahlJahr", parseInt(formatDate(getDateObject((new Date().getTime())), "JJJJ"))+JahrTmp ,10000);
                              });
                              
                              


                              Springt immer zu aktuellem Monat minus 1 (also gerade heute dann automatisch auf Mai), im Januar dann auf Dezember und minus 1 Jahr.

                              LG SBorg ( SBorg auf GitHub)
                              Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                              NegaleinN 1 Antwort Letzte Antwort
                              0
                              • SBorgS SBorg

                                @negalein
                                Ich glaube eher du hast da ein rudimentäres Problem (ich antworte gleich im WLAN-Skript Thread).
                                Da hat sich seit Uhrzeiten nichts dran geändert:
                                Bild 002.png

                                // @liv-in-sky 4.10.2021 11:45
                                //forum: https://forum.iobroker.net/topic/38286/vis-tabelle-f%C3%BCr-wlan-wetterstation
                                
                                const dataInputPath="0_userdata.0.Statistik.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
                                const inhaltFarbe="black";
                                const inhaltHintergrund="lightgray";
                                const monatFarbe="white";
                                const hintergrund="gray";
                                const htmlFarbTableBorderColor="black";
                                const abstandZelle=6;
                                const htmlRahmenLinien="all";
                                const htmlSchriftgroessehtmlSchriftart=""; //nicht verwendbar!
                                const htmlFarbFelderschrift="red";         //nicht verwendbar!
                                const htmlSchriftgroesse="13px";
                                const htmlSchriftart="Ubuntu-Light";       //"monospace" oder z.b. "Helvetica"
                                const weite="auto";                        //oder "500px"
                                
                                let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                                    "; font-family:"+htmlSchriftart+";\"";
                                
                                const varData={ 
                                             Tiefstwert:       { einheit:"°C",   name:"Minimum Temperatur"},
                                             Hoechstwert:      { einheit:"°C",   name:"Maximum Temperatur"}, 
                                             Temp_Durchschnitt:{ einheit:"°C",   name:"Durchschnittstemperatur"},
                                             Max_Windboee:     { einheit:'km/h', name:"Max Windböe"},
                                             Max_Regenmenge:   { einheit:'l/m²', name:"Max. Regen/Tag"},
                                             Regenmenge_Monat: { einheit:'l/m²', name:"Regen"},
                                             Regentage:        { einheit:"",     name:"Regentage"},
                                             sehr_kalte_Tage:  { einheit:"",     name:"Sehr kalte Tage (Min. unter -10°C)"},
                                             Eistage:          { einheit:"",     name:"Eistage (Max. unter 0°C)"},
                                             Frost_Tage:       { einheit:"",     name:"Frosttage (Min. unter 0°C)"},
                                             kalte_Tage:       { einheit:"",     name:"Kalte Tage (Max. unter 10°C)"},
                                             warme_Tage:       { einheit:"",     name:"Warme Tage (über 20°C)"},
                                             Sommertage:       { einheit:"",     name:"Sommertage (über 25°C)"},
                                             Tropennaechte:    { einheit:"",     name:"Tropennächte (Min. über 20°C)"},
                                             heisse_Tage:      { einheit:"",     name:"Heiße Tage (über 30°C)"},
                                             Wuestentage:      { einheit:"",     name:"Wüstentage (über 35°C)"}
                                };  
                                const table_rowspan = Object.keys(varData).length + 1;
                                
                                const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
                                
                                //--------------------------nix mehr ändern ab hier--------------------------------------
                                let myObj;
                                let myArrAll=[]
                                let myArrErstellt=[]
                                let tableContent;
                                let monWahlVIS;
                                let lastThree;
                                
                                //----------------------------------------------------------------------------------------
                                function dataStuff(){
                                let myArrAll=[]
                                let mySelector=dataInputPath+'.*.*'
                                $(mySelector).each(function(id) {
                                let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
                                let obj2 = { jahr: ida[jahri]};
                                let obj3 = { monat: ida[moni]};
                                let formathelp=getState(id).val;
                                let helper;
                                
                                if (typeof(formathelp)=="object") {helper=getState(id).val[0];} 
                                 else if (typeof(formathelp)=="string") { helper=String(getState(id).val);
                                                                          if (helper.indexOf("[")>=0) { helper=JSON.parse(helper.substring(1, helper.length-1)); }
                                                                            else { helper=JSON.parse(helper); }  
                                                                          }
                                 else { helper=JSON.parse(getState(id).val); }
                                
                                helper={ ...helper, ...obj2, ...obj3}
                                myArrAll.push(JSON.stringify(helper))
                                });
                                
                                //log(myArrAll)
                                tableContent = ""  
                                myObj=JSON.parse("["+myArrAll.toString()+"]")
                                if (lastThree==0) {
                                
                                //KOPFZEILE
                                let choseMonth=monate[monWahlVIS-1]
                                let choseMonthArr=choseMonth.split('')
                                let test=""
                                for (let i=0;i<choseMonthArr.length;i++){
                                
                                // log(choseMonthArr[i])
                                 test=test+choseMonthArr[i]+`
                                 `    
                                }
                                
                                //log(test)
                                //tableContent+='<td  class=\"test-klein\"  rowspan=\"17\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                                tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan='+table_rowspan+'\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Jahreswerte</td>'
                                
                                for (let i=0;i<myObj.length;i++) {
                                 if(parseInt(myObj[i].monat)==monWahlVIS){
                                tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
                                }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                                
                                //RESTZEILEN
                                for(var index in varData){
                                 tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                                 for (let i=0;i<myObj.length;i++) {
                                    if(myObj[i].monat==monWahlVIS){
                                      tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                                  }; tableContent="<tr>"+tableContent+"</tr>"
                                }
                                } //lastThree
                                else {
                                //log(myObj[0].monat)
                                  myObj.sort(function (alpha, beta) {
                                           if (parseInt(alpha.monat) > parseInt(beta.monat))
                                               return 1;
                                            if (parseInt(beta.monat) > parseInt(alpha.monat))
                                               return -1;
                                            return 0;});
                                        //    log(myObj[0].monat)
                                //KOPFZEILE LASTTHREE
                                let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
                                let choseMonthArr=choseJahr.split('')
                                let test=""
                                for (let i=0;i<choseMonthArr.length;i++){
                                // log(choseMonthArr[i])
                                 test=test+choseMonthArr[i]+`
                                 `    
                                }
                                
                                //log(test)
                                //tableContent+='<td  class=\"test-klein\"  rowspan=\"17\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                                tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan='+table_rowspan+'\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
                                
                                for (let i=0;i<myObj.length;i++) {
                                 if( parseInt(myObj[i].jahr)==parseInt(choseJahr) ){ //&& (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                                tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
                                }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                                
                                //RESTZEILEN
                                for(var index in varData){
                                 tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                                 for (let i=0;i<myObj.length;i++) {
                                  if( parseInt(myObj[i].jahr)==parseInt(choseJahr) ){ //&& (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                                      tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                                  }; tableContent="<tr>"+tableContent+"</tr>"
                                }
                                }
                                tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
                                //log(tableContent)
                                setState("0_userdata." + instance + ".Wetterstation.MonthlyDaten",tableContent)
                                }
                                
                                //--------------------------------------------------------------------------------------------------
                                async function main() {
                                 if (!(await existsStateAsync("0_userdata." + instance + ".Wetterstation.MonthlyDaten"))) {
                                     await createStateAsync("0_userdata." + instance + ".Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
                                 if (!(await existsStateAsync("0_userdata." + instance + "..Wetterstation.MonatAuswahl"))) {
                                     await createStateAsync("0_userdata." + instance + ".Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
                                 if (!(await existsStateAsync("0_userdata." + instance + ".Wetterstation.AuswahlJahr"))) {
                                     await createStateAsync("0_userdata." + instance + ".Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
                                 lastThree = (await getStateAsync("0_userdata." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                                 monWahlVIS=((await getStateAsync("0_userdata." + instance + ".Wetterstation.MonatAuswahl")).val ) 
                                 dataStuff(); 
                                }
                                
                                //-----------------------------------------------------------------------------------------------------
                                main()
                                
                                on({id: "0_userdata." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
                                 main()
                                });
                                
                                on({id: "0_userdata." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
                                 main()
                                });
                                
                                schedule('*/30 * * * *', function() { 
                                 //Patch -1 Monat bzw. Jahr, damit immer etwas angezeigt wird (aktuelle Monatsdaten gibt es ja hier noch keine)
                                   let MonatTmp = parseInt(formatDate(getDateObject((new Date().getTime())), "MM"));
                                   let JahrTmp = 0;
                                   if (MonatTmp>1) { MonatTmp--; } else { MonatTmp = 12; JahrTmp = -1; }  
                                 setState("0_userdata." + instance + ".Wetterstation.MonatAuswahl", MonatTmp) ;
                                 setStateDelayed("0_userdata." + instance + ".Wetterstation.AuswahlJahr", parseInt(formatDate(getDateObject((new Date().getTime())), "JJJJ"))+JahrTmp ,10000);
                                });
                                
                                


                                Springt immer zu aktuellem Monat minus 1 (also gerade heute dann automatisch auf Mai), im Januar dann auf Dezember und minus 1 Jahr.

                                NegaleinN Offline
                                NegaleinN Offline
                                Negalein
                                Global Moderator
                                schrieb am zuletzt editiert von Negalein
                                #99

                                @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                                Da hat sich seit Uhrzeiten nichts dran geändert:

                                Hast du auch einen VIS-Export für mich?

                                ° Node.js: 20.17.0 NPM: 10.8.2
                                ° Proxmox, Ubuntu 22.04.3 LTS
                                ° Fixer ---> iob fix

                                SBorgS 1 Antwort Letzte Antwort
                                0
                                • NegaleinN Negalein

                                  @sborg sagte in VIS-Tabelle für WLAN Wetterstation:

                                  Da hat sich seit Uhrzeiten nichts dran geändert:

                                  Hast du auch einen VIS-Export für mich?

                                  SBorgS Offline
                                  SBorgS Offline
                                  SBorg
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #100

                                  @negalein
                                  Ist wahrscheinlich gleich mit deinem

                                  [{"tpl":"tplJquiSelectList","data":{"oid":"0_userdata.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2020;2021;2022;2023;2024","texts":"All Years;2020;2021;2022;2023;2024","height":"100","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"no_style":true},"style":{"left":"160px","top":"375px","box-shadow":"8px 8px 8px rgba(20, 20, 20, 50)"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{0_userdata.0.Wetterstation.MonthlyDaten}"},"style":{"left":"160px","top":"405px","width":"auto","height":"auto","font-family":"","color":"#f7f51d","z-index":"1","box-shadow":"8px 8px 8px rgba(20, 20, 20, 50)"},"widgetSet":"basic"},{"tpl":"tplJquiSelectList","data":{"oid":"0_userdata.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"no_style":true},"style":{"left":"260px","top":"375px","width":"100px","height":"","box-shadow":"8px 8px 8px rgba(20, 20, 20, 50)","z-index":"1"},"widgetSet":"jqui"}]
                                  

                                  LG SBorg ( SBorg auf GitHub)
                                  Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                                  T 1 Antwort Letzte Antwort
                                  1
                                  • SBorgS SBorg

                                    @negalein
                                    Ist wahrscheinlich gleich mit deinem

                                    [{"tpl":"tplJquiSelectList","data":{"oid":"0_userdata.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2020;2021;2022;2023;2024","texts":"All Years;2020;2021;2022;2023;2024","height":"100","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"no_style":true},"style":{"left":"160px","top":"375px","box-shadow":"8px 8px 8px rgba(20, 20, 20, 50)"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{0_userdata.0.Wetterstation.MonthlyDaten}"},"style":{"left":"160px","top":"405px","width":"auto","height":"auto","font-family":"","color":"#f7f51d","z-index":"1","box-shadow":"8px 8px 8px rgba(20, 20, 20, 50)"},"widgetSet":"basic"},{"tpl":"tplJquiSelectList","data":{"oid":"0_userdata.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":true,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"no_style":true},"style":{"left":"260px","top":"375px","width":"100px","height":"","box-shadow":"8px 8px 8px rgba(20, 20, 20, 50)","z-index":"1"},"widgetSet":"jqui"}]
                                    
                                    T Offline
                                    T Offline
                                    tritor
                                    schrieb am zuletzt editiert von
                                    #101

                                    @sborg

                                    habe heute mal die Vis aktiviert und muß sagen, bin begeistert.

                                    Gernot

                                    Host: i9 server Proxmox , Debian 13.2 for ioBroker
                                    ioBroker: 7.7.20, Node.js: 22.21.1, NPM: 10.9.3, JS-controller: 7.1.0
                                    Wetterstation: HP1000SEPro V1.9.0 Easeweather V1.7.0
                                    Grafana 12.0.2 / InfluxDB 2.7.11

                                    1 Antwort Letzte Antwort
                                    0
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    755

                                    Online

                                    32.5k

                                    Benutzer

                                    81.8k

                                    Themen

                                    1.3m

                                    Beiträge
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                    ioBroker Community 2014-2025
                                    logo
                                    • Anmelden

                                    • Du hast noch kein Konto? Registrieren

                                    • Anmelden oder registrieren, um zu suchen
                                    • Erster Beitrag
                                      Letzter Beitrag
                                    0
                                    • Home
                                    • Aktuell
                                    • Tags
                                    • Ungelesen 0
                                    • Kategorien
                                    • Unreplied
                                    • Beliebt
                                    • GitHub
                                    • Docu
                                    • Hilfe