Ankündigung

Einklappen
Keine Ankündigung bisher.

Erster Test smartVISU 2.9 mit jQuery Mobile 1.4.5

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Hab zum Test auch die v2.9 parallel zur 2.8 installiert.
    Bisher konnte ich meine Visu erfolgreich auf die 2.9 anpassen,
    bis auf die Diagramme, die in untermenüs integriert sind, diese werden falsch dargestellt.

    Bis zur Version 2.8 hatte ich in der visu.js folgenden Eintrag hinterlegt, um die Diagramme in Umtermenüs erfolgreich anzuzeigen.
    Code:
    // Visu Plot in Hidden Charts JS 1.3.2
    //
    $( document ).on( "expand", ".hidden-chart", function( event, ui ){
      $( this ).find('[data-widget^="plot."]').each(function() {
        if( $(this).highcharts()) {
          $( this ).highcharts().destroy();
          var values = widget.get(widget.explode($(this).attr('data-item')));
          if (widget.check(values))
            $(this).trigger('update', [values]);
        }
      });
    });
    In der v2.9 wird ja wie bereits von smai angemerkt die visu.js nicht mehr berücksichtigt, wo muss ich den Code dann einfügen damit er wieder geladen wird ?
    plot.PNG

    Kommentar


      Siehe hier - seit gestern in sV/pages/deine_page/js/irgendein_name.js
      css entsprechend in das Unterverzeichnis css.
      Wird jetzt alles eingesammelt.
      Nicht vergessen, die sV auch auf die aktuelle develop zu ziehen.
      /tom

      (Meines Wissens gibt es übrigens die visu.js weiterhin.)

      Kommentar


        Zitat von Mike01 Beitrag anzeigen
        In der v2.9 wird ja wie bereits von smai angemerkt die visu.js nicht mehr berücksichtigt
        Sowas habe ich nie behauptet, die visu.js funktioniert natürlich weiterhin.
        Spontan sehe ich auch keinen Fehler in deinem Code. Hast du denn irgend eine Meldung auf der Konsole?

        Kommentar


          smai Sorry, hatte das aus dem Post #61 so herausgelesen, allerdings beim 2. mal lesen gemerkt, dass es da um eine andere Datei ging.
          Der Code funktioniert in der version 2.8 einwandfrei, in der v2.9 zeigt er keine wirkung.
          Debug Mode bzw Firebug Konsole meldet keinen Fehler.
          Dachte daher, dass die Datei visu.js deshalb nicht mehr berücksichtigt wird.

          werd mich heute nochmal damit beschäftigen, evtl. finde ich ja noch was.

          Gruß, Mike

          Kommentar


            smai
            Ich habe jetzt mal die die neuste develop-Version mit FHEM getestet.
            Womit ich Probleme habe ist folgende Zeile in basic.html
            Code:
            {{ not id is empty ? 'id="' ~ uid(page, id) ~ '"' | raw }}
            Im html-Code steht dann für die id:

            id=""Lampe""

            Damit hat der fhem-Treiber Probleme und die Widgets auf der momentan aktiven Seite werden nicht gefunden!
            Ich nutze den fhem-Treiber ohne die Anpassung für UZSU aus dem 2.8 Release.Wäre schön, wenn das noch andere testen!

            Wenn ich aber den Code so abändere
            Code:
            {{ not id is empty ? 'id=' ~ uid(page, id) ~ '' | raw }}
            dann wird im html-Code der Eintrag für die id ohne die dopplelten Anführungszeichen ausgegeben und alles funktioniert wunderbar.

            Und noch was:
            Die Funktion "twig_lang" in functions_twig.php funktioniert mit den Anpassungen der Sprachdateien nicht mehr. Wird diese in
            Zukunft nicht mehr benötigt? Ist mir nur aufgefallen, da ich diese in einigen eigenen Widgets verwende. Im comfortchart-Plot werden deshalb die Namen für die Serien nicht übersetzt.


            Für alle FHEM-Nutzer:

            Ich habe weiter keine Veränderungen an der SV 2.9 Version vorgenommen (keine php-Dateien ergänzt bzw. ersetzt), sondern nutze für unterschiedliche Einstellungen auf verschiedenen Endgeräten in der Config zusätzlich die Cookies. Mit den globalen Einstellungen alleine sollte fhem aber auch funktionieren.
            Die einzige Veränderung, die ich vorgenommen habe ist, dass ich den io_fhem.js Treiber aus dem SV 2.8 Release verwende und die basic.html wie oben beschrieben abgeändert habe.
            Zuletzt geändert von ramann; 16.02.2017, 22:59.

            Kommentar


              Vielen Dank für deinen Test und das Feedback.
              Der Code mit der ID ist tatsächlich Mist, habe ich gestern per Zufall auch festgestellt. Deine Version ist aber auch nicht valid, weil dann die " ganz fehlen. Ich werde das korrigieren.
              twig_lang verwende ich aktuell grad auf der Config-Seite, dort funktioniert es. Ich muss mir anschauen, was da falsch läuft.
              Wenn ich mich richtig erinnere, hast du mal geschrieben, dass eine kleine Änderung für die UZSU rückgängig gemacht werden muss, richtig?

              Kommentar


                Das ganze war für mich zum Testen einfach mal ein Workaround.

                In io_fhem.js müsste folgende Zeile wieder abgeändert werden, da durch die Integration von UZSU in widget.js die Abrfrage "Array oder nein" nicht mehr nötig ist.
                Code:
                -262  io.callUpdateHandler(this, value.list instanceof Array ? values : [values]);
                +262  io.callUpdateHandler(this, [values]);

                Kommentar


                  Den Zusammenhang mit der Integration des UZSU-Widgets verdtehe ich zwar nicht ganz, weil die gesendeten Daten meines Wissens gleich sind.
                  Aber da du die Anpassung damals selbst ģemacht hast, wirst du wohl wissen, wovon du sprichst :-)

                  Bei der twig_lang erinnere ich mich nun übrigens, dass ich diesebei mir kürzlich korrigiert aber noch nicht committed habe.

                  Kommentar


                    Hi,

                    hier wurde ja auch nach weiteren Wünschen gefragt. Ich hätte da noch einen:

                    Es wäre schön wenn ich im clock-Widget meine eigene Temperatur übergeben könnte.
                    Auch wäre schön wenn man den Ort ausblenden könnte und dafür nur die Wetterbedingung in bold darstellt.

                    Gruß

                    Sebastian

                    Kommentar


                      Es steht die Idee im Raum, dass man die Daten vom Wetterservice auch aus dem Backend (z.B. SH.py) beziehen kann und nicht nur direkt vom API.
                      Vielleicht könnte man das damit kombinieren und für clock.digiclock und weather.current nicht nur Daten eines Wetterdienstes sondern auch solche von der eigenen Wetterstation ermöglichen.

                      Allerdings wird dies wohl leider nichts mehr für 2.9.
                      Ich habe das als Issue 143 erfasst, damit es nicht vergessen geht.

                      Kommentar


                        Ohhh, dann habe ich auch noch einen Wunsch....

                        Könnte man dem basic.Button und evtl. auch dem Switch, wie bei KNX üblich, eine Option "Betätigungsanzeige" hinzufügen?
                        Also nach dem Drücken, die Icon1 Farbe 3 Sekunden einschalten.

                        Grüße, Marc

                        Kommentar


                          Mist, hab ich die offizielle Eröffnung der 'Wünsch-Dir-was'-Runde verpennt?

                          Öffnen von Popup's über basic.stateswitch statt des eigentliche Schaltvorgangs wäre cool, dann müsste man nicht immer <a href> basic.symbol </a> für Statusanzeigen nutzen (was bei ausgeblendeten Icons unschön ist, da das href bestehen bleibt und so trotzdem versehentlich mit den Patschehändchen auf dem Tablet aktiviert werden kann, obwohl der Zustand eigentlich 'aus' ist). Siehe z.B. die ganzen Statusanzeigen (Fehler, Filter, Heizung usw) im 2. Bild hier.

                          Und und und ....

                          /tom

                          Kommentar


                            smai
                            Anscheinend gibt es zwischen delegate und on einen Unterschied wie die Daten in jQM "weitergereicht" werden.

                            Ich habe jetzt nochmal die Einstellung Client (cookie) in der Konfiguration in verschiedenen Browsern auf PC und Android getestet. Es werden damit die globalen Einstellungen nicht "überschrieben" (z.B wenn ich ein anderes Design auswähle). Mit der der Pages-Option funktioniert es, soweit ich getestet habe.

                            Kommentar


                              twig_lang ist korrigiert wie auch die &quot; bei den IDs.
                              Und die cookie settings funktionieren nun auch. (Das Cookie wurde ohne explizite Pfadangabe gespeichert. Weil ich den Code verschoben hatte, war es deshalb nur noch für /pages/base/ gültig, was nicht viel gebracht hat.)

                              Wünschen könnt ihr übrigens viel...


                              schuma das klingt einfacher, als es umzusetzen ist. Für mich sprechen mehreren Gründen dagegen (v.A. beim Switch):
                              - Der Switch ist ja im eingeschalteten Zustand bereits in der Farbe von icon1.
                              - Die Änderung der Farbe geschieht eigentlich erst bei der Rückmeldung. So sieht man, ob der Schaltvorgang durchgeführt wurde.
                              - "Bei KNX üblich" finde ich etwas stark formuliert - bei meinen Tastern ist dies jedenfalls nicht eingeschaltet. Dort zeige ich ebenfalls den tatsächlichen Status.
                              - Hingegen ist sowas in Computer GUIs bzw. auf Webseiten und in Apps sehr unüblich (und das ist eine Visu ja)
                              - Beim Button hat man die Betätigungsanzeige durch das "Eindrücken", wie es üblich ist.

                              Übrigens: basic.button und basic.switch gibt's in 2.9 nicht mehr, die werden beide durch basic.stateswitch (oder wie auch immer der schliesslich heissen wird abgelöst.

                              Nach all dem Negativen nun ein Gegenvorschlag:
                              Ich könnte mir vorstellen, das Icon blinken zu lassen, bis die Rückmeldung erfolgt bzw. max. 3 Sekunden (es gibt ja nicht bei allem eine Rückmeldung).
                              Und das vielleicht per Parameter "push_indicator" aktivierbar machen.
                              Was meint ihr dazu?


                              Tom Bombadil auch wenn ich deinen Use Case verstehe, dürfte dieser doch eher spezifisch sein. Ich sehe spontan keine Möglichkeit, das sinnvoll zu integrieren.
                              Aber du könntest status.collapse nutzen, um Link und Icon auszublenden.
                              Oder anstelle eines Links bindest du einen Click-Event per JavaScript an den Button, etwa so:
                              HTML-Code:
                              {{ basic.stateswitch('meineid', ...) }}
                              <script type="text/javascript">
                              $('#meinepage_meineid').click(function() {
                                $('#id_des_popups').popup('open');
                              })
                              </script>
                              Das Binding per '#meinepage_meineid' ist in vielen Fällen übrigens nicht gerade schön.
                              In deinem Fall handelt es sich ja um ein Widget, da machst du besser z.B. sowas:
                              HTML-Code:
                              <div data-widget="dein.widget">
                                ...
                                <span class="meinbutton">
                                  {{ basic.stateswitch('', ...) }}
                                </span>
                                ...
                              </div>
                              Und das Script dann separat in einem .js:
                              Code:
                              $('[data-widget="dein.widget"] .meinbutton [data-widget="basic.stateswitch"]').click(function() {
                                $('#id_des_popups').popup('open');
                              })
                              Oder vielleicht hast du sonst schon ein Identifikationsmerkmal im Code und brauchst das span nicht mal.
                              Zuletzt geändert von smai; 18.02.2017, 23:44.

                              Kommentar


                                ich habe jetzt diese custom RTR widgets - von denen ich leider selber nicht mehr weiss, wo ich sie her habe - sv 2.9 kompatibel gemacht.. wenn jemand probleme hat einfach melden! Ich glaube sie waren aus diesem FHEM repository..

                                gg.PNG

                                Kommentar

                                Lädt...
                                X