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. Visualisierung
  4. [Vorlage] Variable Zeitsteuerung mit VIS Editor

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[Vorlage] Variable Zeitsteuerung mit VIS Editor

Scheduled Pinned Locked Moved Visualisierung
vistemplate
919 Posts 47 Posters 296.0k Views 75 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.
  • GlasfaserG Glasfaser

    @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

    Wird das Boolean per JS auf true gesetzt, öffnet sich der Dialog nicht. Wird das Boolean State aber mit einem Bool Button gesteuert öffnet sich der gewünschte Dialog.

    Nee ... so :

    Wird das Boolean per JS auf true gesetzt, öffnet sich der Dialog nicht.
    Wird ein Boolean State im View gelegt als Dummy (nicht betätigt nur den Datenpunkt zugewiesen )
    öffnet sich der gewünschte Dialog per JS

    ScroungerS Offline
    ScroungerS Offline
    Scrounger
    Developer
    wrote on last edited by Scrounger
    #497

    @Glasfaser sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

    @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

    Wird das Boolean per JS auf true gesetzt, öffnet sich der Dialog nicht. Wird das Boolean State aber mit einem Bool Button gesteuert öffnet sich der gewünschte Dialog.

    Nee ... so :

    Wird das Boolean per JS auf true gesetzt, öffnet sich der Dialog nicht.
    Wird ein Boolean State im View gelegt als Dummy (nicht betätigt nur den Datenpunkt zugewiesen )
    öffnet sich der gewünschte Dialog per JS

    OK dann weiß ich was das Problem ist, Werd ich in der nächsten Version beheben

    Edit: Habs grad eingebaut, könnt also die aktuelle github version testen.

    1 Reply Last reply
    1
    • M Offline
      M Offline
      micklafisch
      wrote on last edited by
      #498

      Es klappt bei mir weiterhin nicht, aber verbessert mich wenn ich etwas falsch gemacht habe:

      im ioB Admin auf "latest" umgestellt und per Katze von Github das materialdesign installiert. Habe zur Sicherheit nochmal das Zeitschaltuhr-Skript deaktiviert und aktiviert und die WidgetID gecheckt.

      Das Popup geht weiterhin nicht auf - egal ob im Skript oneclick oder doubleclick hinterlegt ist.

      GlasfaserG 1 Reply Last reply
      0
      • M micklafisch

        Es klappt bei mir weiterhin nicht, aber verbessert mich wenn ich etwas falsch gemacht habe:

        im ioB Admin auf "latest" umgestellt und per Katze von Github das materialdesign installiert. Habe zur Sicherheit nochmal das Zeitschaltuhr-Skript deaktiviert und aktiviert und die WidgetID gecheckt.

        Das Popup geht weiterhin nicht auf - egal ob im Skript oneclick oder doubleclick hinterlegt ist.

        GlasfaserG Offline
        GlasfaserG Offline
        Glasfaser
        wrote on last edited by
        #499

        @micklafisch

        Muss per Datenpunkt wie ich oben erwähnt getriggert werden , dazu kann @GiuseppeS es einbauen .

        oder du baust mein Snipsel ein

        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

        M 1 Reply Last reply
        0
        • GlasfaserG Glasfaser

          @micklafisch

          Muss per Datenpunkt wie ich oben erwähnt getriggert werden , dazu kann @GiuseppeS es einbauen .

          oder du baust mein Snipsel ein

          M Offline
          M Offline
          micklafisch
          wrote on last edited by
          #500

          @Glasfaser
          achso, sorry mein Fehler :confused:. Dachte mit der Anpassung von @Scrounger hätte sich das erledigt.

          GlasfaserG G 2 Replies Last reply
          0
          • M micklafisch

            @Glasfaser
            achso, sorry mein Fehler :confused:. Dachte mit der Anpassung von @Scrounger hätte sich das erledigt.

            GlasfaserG Offline
            GlasfaserG Offline
            Glasfaser
            wrote on last edited by
            #501

            @micklafisch

            Hat er denn schon eine Anpassung in der Version die du runtergeladen hast durchgeführt !?

            Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

            M 1 Reply Last reply
            0
            • M micklafisch

              @Glasfaser
              achso, sorry mein Fehler :confused:. Dachte mit der Anpassung von @Scrounger hätte sich das erledigt.

              G Offline
              G Offline
              GiuseppeS
              wrote on last edited by GiuseppeS
              #502

              @micklafisch
              Werde im oberen Bereich der Variablen eine neue Variable erstellen:

              let mdAdapterID = false;

              Ist diese ID false oder nicht existent, wird alles so gehandhabt wie bisher, Standard Widget.
              Steht in diese Variable auf true, wird das PopUp über eine ID mit true/false gesteuert.
              Die ID werde ich mit dem Skript automatisch erstellen.
              Im Hauptpfad die ID "MdAdapterID".

              Korrigiert mich falls ich falsch liege:

              • true: Dialog wird angezeigt
              • false: Dialog ist nicht geöffnet

              Wenn es so funktioniert, ist das echt geschickt gelöst.
              Werde das Timer Skript morgen anpassen und hochladen.

              Bisherige Anwender ohne Material Design Adapter müssen nichts anpassen.

              Wichtig:
              Wenn Du Scroungers letzte Version installiert hast. Bitte teste das PopUp zunächst unabhängig vom Timer Skript. Nur um zu bestätigen, dass es bei dir funktioniert.
              Kannst ja die ID des md Widgets direkt im Objekt

              1 Reply Last reply
              0
              • GlasfaserG Glasfaser

                @micklafisch

                Hat er denn schon eine Anpassung in der Version die du runtergeladen hast durchgeführt !?

                M Offline
                M Offline
                micklafisch
                wrote on last edited by
                #503

                @Glasfaser @GiuseppeS
                Argh, ich dreh gerade hohl und hab den Wald vor lauter Bäumen nicht gesehen.

                Mit dem Codeschnippsel von @Glasfaser funktioniert das Popup jetzt. Ich dachte ich hätte die Codezeilen noch drin, dem war aber nicht so :fearful:

                Ich sehe es auch so, wenn State "true" dann sollte der Dialog offen sein.

                Habe es gerade noch einmal zur Sicherheit in einem blanken Projekt getestet. Wenn ich im Admin manuell den DP triggere, geht in der VIS das Popup auf. Dort ist der Boolsche DP als trigger hinterlegt.

                G 1 Reply Last reply
                1
                • M micklafisch

                  @Glasfaser @GiuseppeS
                  Argh, ich dreh gerade hohl und hab den Wald vor lauter Bäumen nicht gesehen.

                  Mit dem Codeschnippsel von @Glasfaser funktioniert das Popup jetzt. Ich dachte ich hätte die Codezeilen noch drin, dem war aber nicht so :fearful:

                  Ich sehe es auch so, wenn State "true" dann sollte der Dialog offen sein.

                  Habe es gerade noch einmal zur Sicherheit in einem blanken Projekt getestet. Wenn ich im Admin manuell den DP triggere, geht in der VIS das Popup auf. Dort ist der Boolsche DP als trigger hinterlegt.

                  G Offline
                  G Offline
                  GiuseppeS
                  wrote on last edited by GiuseppeS
                  #504

                  @micklafisch
                  Klasse!
                  Dann werde ich im Skript direkt den von Glasfaser vorgeschlagenen Namen für die ID nehmen.

                  Evtl. lasse ich auch zusätzliche Variable weg. Wenn die angegebene Widget Bezeichnung existiert, werden wohl keine Fehler ausgegeben, auch wenn es ein MD Widget und nicht das Standard Widget ist.

                  Oder werden bei dir Fehler ausgegeben @micklafisch ?

                  M 1 Reply Last reply
                  1
                  • G GiuseppeS

                    @micklafisch
                    Klasse!
                    Dann werde ich im Skript direkt den von Glasfaser vorgeschlagenen Namen für die ID nehmen.

                    Evtl. lasse ich auch zusätzliche Variable weg. Wenn die angegebene Widget Bezeichnung existiert, werden wohl keine Fehler ausgegeben, auch wenn es ein MD Widget und nicht das Standard Widget ist.

                    Oder werden bei dir Fehler ausgegeben @micklafisch ?

                    M Offline
                    M Offline
                    micklafisch
                    wrote on last edited by
                    #505

                    @GiuseppeS
                    nein, es werden bei mir keine Fehler ausgegeben.

                    Hört sich elegant gelöst an :blush:

                    GlasfaserG 1 Reply Last reply
                    0
                    • M micklafisch

                      @GiuseppeS
                      nein, es werden bei mir keine Fehler ausgegeben.

                      Hört sich elegant gelöst an :blush:

                      GlasfaserG Offline
                      GlasfaserG Offline
                      Glasfaser
                      wrote on last edited by
                      #506

                      @micklafisch

                      Freut mich das es funktioniert ....

                      @GiuseppeS und eine Baustelle weniger ;)

                      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                      G 1 Reply Last reply
                      0
                      • GlasfaserG Glasfaser

                        @micklafisch

                        Freut mich das es funktioniert ....

                        @GiuseppeS und eine Baustelle weniger ;)

                        G Offline
                        G Offline
                        GiuseppeS
                        wrote on last edited by
                        #507

                        @Glasfaser
                        Danke für die Unterstützung ;-)

                        Werde die zwei Zeilen einfach im Skript ergänzen. Dann braucht man keine Variable für die Unterscheidung. Sehr schön :+1:

                        1 Reply Last reply
                        1
                        • G Offline
                          G Offline
                          GiuseppeS
                          wrote on last edited by GiuseppeS
                          #508

                          Neues Update ist hochgeladen. Da nicht absehbar ist, ob zukünftig noch weitere Dialog-Widgets dazukommen, habe ich im Skript das Öffnen und Schließen der DialogBox in eine Funktion "dialogCtrl" ausgelagert. So wird auch verhindert, dass ein und derselbe Code mehrfach angepasst werden muss (Dialogbox öffnen wird an drei Stellen im Skript genutzt).

                          Es wird nun grundsätzlich ein State "javascript.0.Timer." + path + ".MaterialDialogWidgetOpen" erstellt. Dieses State ist auf true wenn die Dialogbox geöffnet ist, ansonsten auf false.
                          Ich bitte um eine kurze Rückmeldung, ob die DialogBox mit Scroungers MD-Adapter einwandfrei läuft. DialogBox im Test bitte sowohl mit "Abbrechen" als auch mit "Übernehmen" schließen. Ich weiß nicht, ob die Dialogbox selbstständig den State auf false setzt, wenn auf "Abbrechen" geklickt wird.

                          Was in dieser Version als Kleinigkeit dazugekommen ist: Wenn eine Bedingung falsch eingegeben wird, lässt sich die Dialogbox nicht mit "übernehmen" schließen und es wird eine Laufschrift im PopUp als Hinweis angezeigt.


                          Changelog 29.05.2020

                          • Steuerung des Dialog Widgets vom "Material Design Adapter" über State "javascript.0.Timer." + path + ".MaterialDialogWidgetOpen"
                          • Meldung bei fehlerhaften Bedingungen in PopUp
                            -> Bei manuellem Update, Widgets "Berechnete Uhrzeit" und "ErrorMsg" aus Export übernehmen
                          M ScroungerS 2 Replies Last reply
                          0
                          • G GiuseppeS

                            Neues Update ist hochgeladen. Da nicht absehbar ist, ob zukünftig noch weitere Dialog-Widgets dazukommen, habe ich im Skript das Öffnen und Schließen der DialogBox in eine Funktion "dialogCtrl" ausgelagert. So wird auch verhindert, dass ein und derselbe Code mehrfach angepasst werden muss (Dialogbox öffnen wird an drei Stellen im Skript genutzt).

                            Es wird nun grundsätzlich ein State "javascript.0.Timer." + path + ".MaterialDialogWidgetOpen" erstellt. Dieses State ist auf true wenn die Dialogbox geöffnet ist, ansonsten auf false.
                            Ich bitte um eine kurze Rückmeldung, ob die DialogBox mit Scroungers MD-Adapter einwandfrei läuft. DialogBox im Test bitte sowohl mit "Abbrechen" als auch mit "Übernehmen" schließen. Ich weiß nicht, ob die Dialogbox selbstständig den State auf false setzt, wenn auf "Abbrechen" geklickt wird.

                            Was in dieser Version als Kleinigkeit dazugekommen ist: Wenn eine Bedingung falsch eingegeben wird, lässt sich die Dialogbox nicht mit "übernehmen" schließen und es wird eine Laufschrift im PopUp als Hinweis angezeigt.


                            Changelog 29.05.2020

                            • Steuerung des Dialog Widgets vom "Material Design Adapter" über State "javascript.0.Timer." + path + ".MaterialDialogWidgetOpen"
                            • Meldung bei fehlerhaften Bedingungen in PopUp
                              -> Bei manuellem Update, Widgets "Berechnete Uhrzeit" und "ErrorMsg" aus Export übernehmen
                            M Offline
                            M Offline
                            micklafisch
                            wrote on last edited by
                            #509

                            @GiuseppeS
                            Guten Abend,
                            ich hab die neue Version direkt geladen und getestet. Über Abbrechen passiert nichts, der Dialog bleibt geöffnet. Übernehmen funktioniert, der Eintrag wird angepasst und der Dialog schließt sich.

                            G 1 Reply Last reply
                            0
                            • M micklafisch

                              @GiuseppeS
                              Guten Abend,
                              ich hab die neue Version direkt geladen und getestet. Über Abbrechen passiert nichts, der Dialog bleibt geöffnet. Übernehmen funktioniert, der Eintrag wird angepasst und der Dialog schließt sich.

                              G Offline
                              G Offline
                              GiuseppeS
                              wrote on last edited by GiuseppeS
                              #510

                              @micklafisch
                              Hatte das den gestern mit dem von dir angepassten Skript funktioniert? Wahrscheinlich auch nicht, oder?

                              Der Abbrechen-Button ist ein Widget für den Standard Dialog.

                              Werde morgen eine neue Version nachschieben und es korrigieren bzw. anders lösen.

                              Aktuelle Version wird kurz aus dem Download entfernt!

                              M 1 Reply Last reply
                              0
                              • G GiuseppeS

                                @micklafisch
                                Hatte das den gestern mit dem von dir angepassten Skript funktioniert? Wahrscheinlich auch nicht, oder?

                                Der Abbrechen-Button ist ein Widget für den Standard Dialog.

                                Werde morgen eine neue Version nachschieben und es korrigieren bzw. anders lösen.

                                Aktuelle Version wird kurz aus dem Download entfernt!

                                M Offline
                                M Offline
                                micklafisch
                                wrote on last edited by
                                #511

                                @GiuseppeS
                                ehrlich gesagt hatte ich bisher nicht auf abbrechen geklickt. Hatte den Dialog immer mit übernehmen geschlossen oder mit dem Widgeteigenen "close" Button.

                                Sorry, war wohl nicht ordentlich getestet.

                                1 Reply Last reply
                                0
                                • G GiuseppeS

                                  Neues Update ist hochgeladen. Da nicht absehbar ist, ob zukünftig noch weitere Dialog-Widgets dazukommen, habe ich im Skript das Öffnen und Schließen der DialogBox in eine Funktion "dialogCtrl" ausgelagert. So wird auch verhindert, dass ein und derselbe Code mehrfach angepasst werden muss (Dialogbox öffnen wird an drei Stellen im Skript genutzt).

                                  Es wird nun grundsätzlich ein State "javascript.0.Timer." + path + ".MaterialDialogWidgetOpen" erstellt. Dieses State ist auf true wenn die Dialogbox geöffnet ist, ansonsten auf false.
                                  Ich bitte um eine kurze Rückmeldung, ob die DialogBox mit Scroungers MD-Adapter einwandfrei läuft. DialogBox im Test bitte sowohl mit "Abbrechen" als auch mit "Übernehmen" schließen. Ich weiß nicht, ob die Dialogbox selbstständig den State auf false setzt, wenn auf "Abbrechen" geklickt wird.

                                  Was in dieser Version als Kleinigkeit dazugekommen ist: Wenn eine Bedingung falsch eingegeben wird, lässt sich die Dialogbox nicht mit "übernehmen" schließen und es wird eine Laufschrift im PopUp als Hinweis angezeigt.


                                  Changelog 29.05.2020

                                  • Steuerung des Dialog Widgets vom "Material Design Adapter" über State "javascript.0.Timer." + path + ".MaterialDialogWidgetOpen"
                                  • Meldung bei fehlerhaften Bedingungen in PopUp
                                    -> Bei manuellem Update, Widgets "Berechnete Uhrzeit" und "ErrorMsg" aus Export übernehmen
                                  ScroungerS Offline
                                  ScroungerS Offline
                                  Scrounger
                                  Developer
                                  wrote on last edited by
                                  #512

                                  @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

                                  Ich bitte um eine kurze Rückmeldung, ob die DialogBox mit Scroungers MD-Adapter einwandfrei läuft. DialogBox im Test bitte sowohl mit "Abbrechen" als auch mit "Übernehmen" schließen. Ich weiß nicht, ob die Dialogbox selbstständig den State auf false setzt, wenn auf "Abbrechen" geklickt wird.

                                  Der MDW Dialog setzt den hinterlegten DP auf false, wenn ihr den Dialog über den Close Button oder click ausserhalb des dialoges schließt.

                                  G 2 Replies Last reply
                                  0
                                  • ScroungerS Scrounger

                                    @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

                                    Ich bitte um eine kurze Rückmeldung, ob die DialogBox mit Scroungers MD-Adapter einwandfrei läuft. DialogBox im Test bitte sowohl mit "Abbrechen" als auch mit "Übernehmen" schließen. Ich weiß nicht, ob die Dialogbox selbstständig den State auf false setzt, wenn auf "Abbrechen" geklickt wird.

                                    Der MDW Dialog setzt den hinterlegten DP auf false, wenn ihr den Dialog über den Close Button oder click ausserhalb des dialoges schließt.

                                    G Offline
                                    G Offline
                                    GiuseppeS
                                    wrote on last edited by
                                    #513

                                    @micklafisch
                                    Kein Thema. Du kannst für dich den Abbrechen-Button gerne durch den Widget-eigenen close-Button ersetzen.
                                    Dann ist es bei dir funktional.

                                    Allgemein ersetze ich den Abbrechen-Button durch ein Standard Button, dieser triggert im Skript die Funktion zum Schließen des Dialogs, egal ob Standard oder MD.

                                    1 Reply Last reply
                                    0
                                    • ScroungerS Scrounger

                                      @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

                                      Ich bitte um eine kurze Rückmeldung, ob die DialogBox mit Scroungers MD-Adapter einwandfrei läuft. DialogBox im Test bitte sowohl mit "Abbrechen" als auch mit "Übernehmen" schließen. Ich weiß nicht, ob die Dialogbox selbstständig den State auf false setzt, wenn auf "Abbrechen" geklickt wird.

                                      Der MDW Dialog setzt den hinterlegten DP auf false, wenn ihr den Dialog über den Close Button oder click ausserhalb des dialoges schließt.

                                      G Offline
                                      G Offline
                                      GiuseppeS
                                      wrote on last edited by
                                      #514

                                      @Scrounger
                                      Antworten hatten sich überschnitten. Danke für die Info; werde es mit einem Standard Button lösen und über das Skript schließen. Sonst müsste ein vermeintlicher Anwender auf das korrekte Widget achten.

                                      1 Reply Last reply
                                      0
                                      • G Offline
                                        G Offline
                                        GiuseppeS
                                        wrote on last edited by
                                        #515

                                        Habe jetzt schon das Update hochgeladen. Habe mit dieser Button-Lösung auch direkt ein Mini-Bug behoben: Wenn die DialogBox mit "Abbrechen" geschlossen wurde, wurde der Fokus auf den Timer belassen, d.h. die Buttons "Add/Del" wurden dauerhaft angezeigt bis eine andere Aktion stattfand. Jetzt funktioniert es wie gewünscht; Buttons verschwinden in jedem Fall nach x Sekunden.

                                        Changelog 29.05.2020 v2

                                        • DialogBox Button "Abbrechen" ersetzt durch Standard-Button. Schließen des Dialogs über Skript (Bugfix bei Verwendung von MD-Adapter Dialog).
                                        sigi234S 1 Reply Last reply
                                        0
                                        • G GiuseppeS

                                          Habe jetzt schon das Update hochgeladen. Habe mit dieser Button-Lösung auch direkt ein Mini-Bug behoben: Wenn die DialogBox mit "Abbrechen" geschlossen wurde, wurde der Fokus auf den Timer belassen, d.h. die Buttons "Add/Del" wurden dauerhaft angezeigt bis eine andere Aktion stattfand. Jetzt funktioniert es wie gewünscht; Buttons verschwinden in jedem Fall nach x Sekunden.

                                          Changelog 29.05.2020 v2

                                          • DialogBox Button "Abbrechen" ersetzt durch Standard-Button. Schließen des Dialogs über Skript (Bugfix bei Verwendung von MD-Adapter Dialog).
                                          sigi234S Online
                                          sigi234S Online
                                          sigi234
                                          Forum Testing Most Active
                                          wrote on last edited by
                                          #516

                                          @GiuseppeS

                                          Irgendwas stimmt bei mir nicht?

                                          Screenshot (2597).png

                                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                          Immer Daten sichern!

                                          G 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

                                          280

                                          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