Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Projekt] MDCSS v2: Material Design CSS Version 2

    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

    [Projekt] MDCSS v2: Material Design CSS Version 2

    This topic has been deleted. Only users with topic management privileges can see it.
    • Uhula
      Uhula @Bastelritius last edited by

      @Bastelritius PNGs lassen sich in der Farbgestaltung durch CSS nicht beeinflussen, wenn du schwarze PNGs haben möchtest, müssen diese im Original bereits schwarz sein.
      Bei der Nutzung der "materila-icons" ist das anders, weil es sich dort nicht um Bilddaten, sondern um einen Font (praktisch "Buchstaben") handelt, der ist durch CSS manipulierbar.

      1 Reply Last reply Reply Quote 0
      • Uhula
        Uhula @der-eine last edited by

        @der-eine Nein, es sind eigentlich keine Konfigurationen notwendig. Welche Einträge erscheinen denn im ioBroker Log wenn du die serverseitigen Scripte startest?
        Du hast eine aktuelle ioBroker Inst? Die "0_userdata.0"-States gibt es im ioBroker noch nicht so lange, glaube erst seit Okt 2019. Version habe ich im Mom nicht zur Hand.

        D 1 Reply Last reply Reply Quote 0
        • Uhula
          Uhula @mickym last edited by

          @mickym iOS ist böse, leider kann ich das nicht testen, da ich komplett apple-free bin 😉 Auf der anderen Seite ist auch der Safari webkit-basiert, wie Chrome.

          1 Reply Last reply Reply Quote 0
          • D
            der-eine @Uhula last edited by der-eine

            @Uhula iobroker 3.7.8;
            0_userdata.0 habe ich in Objekten.
            Diese Meldungen kommen

            Bildschirmfoto 2020-03-11 um 15.42.56.png

            P Uhula 2 Replies Last reply Reply Quote 0
            • P
              Pittini Developer @der-eine last edited by

              @der-eine sagte in [Projekt] Material Design CSS v2:

              Diese Meldungen kommen

              Evtl hilfreich - onLog() ist erst ab Javascript 4.3.0 verfügbar.:

              https://forum.iobroker.net/topic/28098/javascript-findet-onlog-nicht/3?fbclid=IwAR3HZdwCw6qLP8RBOtt1VrpQlivYgpT3Vpyh4hNpMRXBGLuaL_Ul_qZd-cg

              1 Reply Last reply Reply Quote 0
              • Uhula
                Uhula @der-eine last edited by Uhula

                @der-eine onLog() ist erst ab Javascript 4.3.0 Adapter verfügbar, da musst du den erst updaten. Siehe auch: onLog

                lol - Pittini war schneller

                1 Reply Last reply Reply Quote 0
                • D
                  der-eine last edited by der-eine

                  @Pittini @Uhula danke für den Hinweis werde ich gleich mal testen. Erst mal schauen, wie man richtig Updatet JS 4.3.0 wird wahrscheinlich erst mit Admin 4.0 angezeigt.

                  Edit:
                  Das hat funktioniert. Danke jetzt läufts. 👍

                  1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @mickym last edited by mickym

                    @mickym said in [Projekt] Material Design CSS v2:

                    Screenshot.png

                    So ich habe leider doch ein Problem mit dem Titel auf der aktuellen Seite.
                    Ich hätte gerne in der abar nicht einen starren Text wie "MD-Demo" - sondern den Titel der aktuellen Seite.
                    Ich hatte es anfangs mit dem kleinen Script von @OliverIO versucht und ich habe meine pageTitel Seiten immer als Titel View benannt und wollte die statt des starren Textes ausgeben.

                    Ich hatte dazu erst auf dem abarMain View ein HTML Widget mit folgendem Script implementiert:

                    <p id="viewtest"</p>
                    <script>
                    $('#viewtest').html(vis.activeView);
                    </script>
                    

                    Das hat aber nur beim ersten Aufruf der Seite funktioniert. Sobald ich dann auf eine andere Seite navigiert habe - hat sich der Titel nicht aktualisiert.

                    Dann kam der Tipp - ich sollte einfach "{view}" eingeben. Das hat aber den Effekt, dass dann als Seitentitel immer nur abarMain drin steht - was ja streng genommen auch richtig ist.
                    Ich kann das HTML Widget aber auch nicht in die entsprechenden MainViews platzieren, da es dann nicht sichtbar - von der abar überschrieben wird.

                    Ich bin leider kein Webentwickler und meine HTML Kenntnisse sind sehr bescheiden - aber es muss doch möglich sein aus dem document.referrer irgendwie den String/Seitennamen nach dem Projektnamen zu extrahieren?

                    Das kann doch eigentlich keine große Sache sein - nur mir fehlen die Kenntnisse. 😞

                    Am Besten wäre eigentlich wenn man von dem TopView einfach ein Datenfeld - wie Name oder sowas als Anzeige verwenden könnte.

                    Uhula 2 Replies Last reply Reply Quote 0
                    • Uhula
                      Uhula @mickym last edited by

                      @mickym Dein Script wird nur genau 1x ausgeführt, danach nie wieder (da kein reload der Page mehr stattfindet, nur noch AJAX Manipulationen). Wie das CSS Script müsstest du also die DOM Änderungen überwachen (Mutation-Observer) und darauf reagieren. Einfacher wäre es, wenn du das Script erweiterst: Funktion _onChangePage() im Bereich "// favicon anpassen" ...

                      Soll der komplette View-Name angezeigt werden? Ich nenne die bei mir immer pageVorgarten, pageHeizung usw. würde also die ersten vier Zeichen abschneiden wollen. Ich schau am WoEnde mal, ob ich was ähnliches implementieren kann wie beim favicon.

                      Du kannst auch auf jeder page-View ein Widget korrekt positionieren, musst diesem aber eine z-order zuweisen, die größer ist die vom abar. Sieht beim Öffnen der lnav dann vielleicht nicht gut aus.

                      1 Reply Last reply Reply Quote 0
                      • Uhula
                        Uhula @mickym last edited by

                        @mickym Ab der MD CSS v2.3 kannst du den page-Viewnamen leicht nutzen:

                        • mdui-page-name: Der Widgetinhalt wird nach jedem Seitenwechsel mit dem page-Viewnamen gefüllt, kann in basic-HTMLs zur Anzeige des page-Viewnamens genutzt werden
                        • mdui-page-title: Wie mdui-page-name, allerdings wird der Name noch aufbereitet. Kleinbuchstaben am Anfang werden ignoriert und '_' werden zu Leerzeichen gewandelt. "pageMeine_ioBroker_Vis" -> "Meine ioBroker Vis"
                          bbe8798b-1e7f-4efb-a4a4-f79d1921800f-image.png
                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @Uhula last edited by

                          @Uhula Ganz lieben Dank! - Du bist echt gut. Ich werde es heute abend gleich ausprobieren. Vorher komme ich nicht dazu!! Das ist genau das, was ich wollte. 🙂

                          Uhula 1 Reply Last reply Reply Quote 0
                          • T
                            Tirador @Uhula last edited by

                            @Uhula Das Kalendarscript ist super. Das wäre doch etwas für das neue Wiki! 🙂

                            1 Reply Last reply Reply Quote 0
                            • Uhula
                              Uhula @mickym last edited by

                              @mickym Heute abend wird nicht gehen, die v2.3 ist noch nicht online 😉 Wenn du willst, kannst du das vorhandene Script selbst ergänzen: In _onChangePage
                              aus

                              // favicon anpassen
                                          $("#vis_container>:not([style*='display: none']) .mdui-favicon img").each( function (index) {
                                              if ($(this)[0].src)
                                                   $("link[rel='shortcut icon']").attr("href", $(this)[0].src);
                                          });
                              

                              einfach

                              // favicon anpassen
                                          $("#vis_container>:not([style*='display: none']) .mdui-favicon img").each( function (index) {
                                              if ($(this)[0].src)
                                                   $("link[rel='shortcut icon']").attr("href", $(this)[0].src);
                                          });
                                          
                                          // page-name anpassen
                                          let pagename = window.location.hash.substr(1,255);
                                          $(".mdui-page-name").each( function (index) {
                                              $(this).html( pagename );
                                          });
                                          $(".mdui-page-title").each( function (index) {
                                              // "pageMeine_ioBroker_Vis" -> "Meine ioBroker Vis"
                                              let title = '';
                                              let c;
                                              for (let i=0; i<pagename.length; i++) {
                                                  c = pagename[i];
                                                  if (title=='') {
                                                      if (c==c.toUpperCase()) title += c; 
                                                  } else {
                                                      if (c=='_') c = ' '; 
                                                      title += c;
                                                  }    
                                              }
                                              $(this).html( title );
                                          });
                              
                              

                              machen.

                              @Tirador Das Kalendarscript kommt auch noch ins Wiki, ich will es aber erst noch überarbeiten.

                              mickym 1 Reply Last reply Reply Quote 0
                              • D
                                der-eine last edited by der-eine

                                @Uhula habe mit dem Log und den TR064 Views noch anzeige Probleme. Hätte sie genau so importiert wie Du sie erstellt hast. Trotzdem werden sie so angezeigt...
                                Habe das aktuelle Skript und CSS Projekt

                                Icon zu nah am Text

                                IMG_6854.jpg

                                Hintergrundfarbe änder sich beim vergrössern

                                IMG_6855.jpg

                                Kennst Du dieses verhalten?

                                1 Reply Last reply Reply Quote 0
                                • T
                                  Tirador last edited by

                                  Ich finde es wird langsam Zeit, dass wir einen neuen Thread eröffnen, wo wir alle unsere Widgets präsentieren.
                                  Ich fummel schon stundenlang am perfekten Layout/Design herum.
                                  Wenn wir uns auf gewissen Grundlagen (Material Design Icons als Schriftarten, Referenz auf die Konfigurationsseite etc.) einigen, könnte man die Widgets untereinander teilen.

                                  Ich meine damit auch so Basics wie:

                                  • Lampensteuerung
                                  • Heizungssteuerung
                                  • Anzeige Türen/Fenster
                                  • Anruflisten / Verpasste Anrufe
                                  • Kalendarfunktion

                                  etc.

                                  @Uhula Was meinst Du?

                                  Uhula 1 Reply Last reply Reply Quote 0
                                  • Uhula
                                    Uhula @Tirador last edited by

                                    @Tirador Ja, ist eine gute Idee, ich habe damit auch bereits begonnen, zumindest mit den Scripten/Views, die ich erstellt habe. Ich gehe dabei so vor:

                                    • Die Scripte/Views spiele ich in mein Github/templates hoch (news versions sind da besser zu handhaben als hier im Forum)
                                    • Im Github/Wiki erfasse ich die Dokumentation dazu
                                    • Im Forum erzeuge ich einen neues Thema um Fragen beantworten zu können (das wiederum geht auf Github nicht gut) (Bsp: [Vorlage] MDCSS v2: tr-064 devices adapter in vis anzeigen
                                    • In diesem MDCSS c2 Thema führe ich alle Verweise auf die anderen Themen noch einmal auf (im 1.Beitrag)

                                    Da ich mein Github nicht öffnen möchte, könnt ihr da nichts hochladen. Aber ihr könnt hier im Forum ebenfalls neue Themen der Art "[Vorlage] MDCSS v2: was kann mein Script/View" erzeugen. Ich nehme dann Links im MDCCS v2 Thema mit auf. Evtl. auch im Github/Wiki (sie sollten sich dann ein wenig an die schon vorhandenen Wiki-Texte halten).

                                    1 Reply Last reply Reply Quote 0
                                    • jpgorganizer
                                      jpgorganizer last edited by jpgorganizer

                                      Hi,

                                      gibt es eigentlich eine schicke Möglichkeit Datum und Uhrzeit anzeigen zu lassen. Ich meine jetzt nicht die aktuelle Zeit, sondern ich habe einen Datum/Zeit String im UTC-Format, also z.B.

                                      2020-03-12T17:04:18.872+0000
                                      

                                      und würde mir das gerne als

                                      12.03.2020 18:04
                                      

                                      anzeigen lassen. Man beachte die Stunde! Ich bin Zeitzone MEZ.

                                      Dazu wäre eine Funktion ala der Javascript Funktion

                                      Date.toLocaleString()
                                      

                                      schön. Und das dann noch gepaart mit einem Formatstring.
                                      Gibt es sowas in VIS? In MD CSS? Ideen?

                                      Grüße
                                      jpgorganizer

                                      Uhula 1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @Uhula last edited by mickym

                                        @Uhula said in [Projekt] Material Design CSS v2:

                                        @mickym Heute abend wird nicht gehen, die v2.3 ist noch nicht online Wenn du willst, kannst du das vorhandene Script selbst ergänzen: In _onChangePage

                                        In der Demo App und meinen ersten Versuchen - hab ich es getest und Script ergänzt - läuft super- Danke nochmals.

                                        1 Reply Last reply Reply Quote 0
                                        • Uhula
                                          Uhula @jpgorganizer last edited by

                                          @jpgorganizer sagte in [Projekt] MDCSS v2: Material Design CSS Version 2:

                                          Date.toLocaleString()

                                          Ja, ist recht einfach. Basis ist ein Basci-HTML Widget. Du nutzt dann das vis-Binding und musst unter "HTML" eintragen (natürlich mit deinem State):

                                          {0_userdata.0.example_state;date(DD.MM.YYYY hh:mm)}
                                          

                                          41446e39-2aec-48de-96ae-2519659b4e80-image.png

                                          Weitere Binding-Infos

                                          jpgorganizer 1 Reply Last reply Reply Quote 1
                                          • jpgorganizer
                                            jpgorganizer @Uhula last edited by

                                            @Uhula said in [Projekt] MDCSS v2: Material Design CSS Version 2:

                                            ;date(DD.MM.YYYY hh:mm)}

                                            manomanoman --- das hab ich doch schon mal gemacht. Habe nicht mehr dran gedacht, dass man bei den Bindings auch Funktionen hat. Danke für die Hilfe.

                                            Grüße
                                            jpgorganizer

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            683
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            material css material ui vis
                                            74
                                            717
                                            144058
                                            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