Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Vorlage] Variable Zeitsteuerung mit VIS Editor

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Variable Zeitsteuerung mit VIS Editor

    This topic has been deleted. Only users with topic management privileges can see it.
    • Glasfaser
      Glasfaser @GiuseppeS last edited by 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

      Scrounger 1 Reply Last reply Reply Quote 1
      • Scrounger
        Scrounger Developer @Glasfaser last edited by Scrounger

        @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 Reply Quote 1
        • M
          micklafisch last edited by

          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.

          Glasfaser 1 Reply Last reply Reply Quote 0
          • Glasfaser
            Glasfaser @micklafisch last edited by

            @micklafisch

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

            oder du baust mein Snipsel ein

            M 1 Reply Last reply Reply Quote 0
            • M
              micklafisch @Glasfaser last edited by

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

              Glasfaser G 2 Replies Last reply Reply Quote 0
              • Glasfaser
                Glasfaser @micklafisch last edited by

                @micklafisch

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

                M 1 Reply Last reply Reply Quote 0
                • G
                  GiuseppeS @micklafisch last edited by GiuseppeS

                  @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 Reply Quote 0
                  • M
                    micklafisch @Glasfaser last edited by

                    @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 😨

                    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 Reply Quote 1
                    • G
                      GiuseppeS @micklafisch last edited by 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 1 Reply Last reply Reply Quote 1
                      • M
                        micklafisch @GiuseppeS last edited by

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

                        Hört sich elegant gelöst an 😊

                        Glasfaser 1 Reply Last reply Reply Quote 0
                        • Glasfaser
                          Glasfaser @micklafisch last edited by

                          @micklafisch

                          Freut mich das es funktioniert ....

                          @GiuseppeS und eine Baustelle weniger 😉

                          G 1 Reply Last reply Reply Quote 0
                          • G
                            GiuseppeS @Glasfaser last edited by

                            @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 Reply Last reply Reply Quote 1
                            • G
                              GiuseppeS last edited by 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 Scrounger 2 Replies Last reply Reply Quote 0
                              • M
                                micklafisch @GiuseppeS last edited by

                                @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 Reply Quote 0
                                • G
                                  GiuseppeS @micklafisch last edited by 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 1 Reply Last reply Reply Quote 0
                                  • M
                                    micklafisch @GiuseppeS last edited by

                                    @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 Reply Quote 0
                                    • Scrounger
                                      Scrounger Developer @GiuseppeS last edited by

                                      @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 Reply Quote 0
                                      • G
                                        GiuseppeS @Scrounger last edited by

                                        @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 Reply Quote 0
                                        • G
                                          GiuseppeS @Scrounger last edited by

                                          @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 Reply Quote 0
                                          • G
                                            GiuseppeS last edited by

                                            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).
                                            sigi234 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            386
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            template vis
                                            47
                                            919
                                            232201
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo