Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. [Projekt] MDCSS v2: Material Design CSS Version 2

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

[Projekt] MDCSS v2: Material Design CSS Version 2

Scheduled Pinned Locked Moved Visualisierung
material uivismaterial css
717 Posts 74 Posters 177.3k Views 77 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.
  • D der-eine

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

    @Uhula danke für den Hinweis. Werd ich morgen mal implementieren. 😀

    Edit:

    Habe es heute in meinen iobroker und VIS eingesetzt. Leider bekomme ich weder beim LogTR064 noch bei den Logfiles Daten in den Datenpunkten. VIS-View auch so eingefügt aber keine Anzeige. Hab ich was übersehen zu konfigurieren? Konnte in der Doku im Skript noch im Wiki was finden.

    UhulaU Offline
    UhulaU Offline
    Uhula
    wrote on last edited by
    #175

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

    Uhula - Leise und Weise
    Ex: ioBroker on Gigabyte NUC Proxmox

    D 1 Reply Last reply
    0
    • mickymM mickym

      Nur zur Info:

      Ich weiß nicht, ob das schon mal wo erwähnt wurde - die Shapes funktionieren nicht unter IOS - egal welchen Browser man nimmt (Edge, Chrome oder Safari).
      Ich habs auf einem iPhone und iPad probiert. Wahrscheinlich eine Inkompatibilität von IOS.
      Unter Windows 10 ist alles gut. 🙂

      IMG_0007.PNG

      UhulaU Offline
      UhulaU Offline
      Uhula
      wrote on last edited by
      #176

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

      Uhula - Leise und Weise
      Ex: ioBroker on Gigabyte NUC Proxmox

      1 Reply Last reply
      0
      • UhulaU Uhula

        @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 Offline
        D Offline
        der-eine
        wrote on last edited by der-eine
        #177

        @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 UhulaU 2 Replies Last reply
        0
        • D 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 Offline
          P Offline
          Pittini
          Developer
          wrote on last edited by
          #178

          @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
          0
          • D 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

            UhulaU Offline
            UhulaU Offline
            Uhula
            wrote on last edited by Uhula
            #179

            @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

            Uhula - Leise und Weise
            Ex: ioBroker on Gigabyte NUC Proxmox

            1 Reply Last reply
            0
            • D Offline
              D Offline
              der-eine
              wrote on last edited by der-eine
              #180

              @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
              0
              • mickymM mickym

                @Uhula
                Danke - schon OK. Ich weiß, dass Dokumentation immer lästig ist. Aber ich habe bewusst mit einer leeren Vorlage begonnen und dann mit der Anleitung zu verstehen.

                Ich habe inzwischen dank @OliverIO das mit der automatischen Titel in der abar hinbekommen.

                Allerdings scheine ich ein Problem mit Farben generell zu haben. 😉
                Zumindest ist der View, den ich zuerst erstellt habe heller, als die Seiten/Views die ich danach gemacht habe, obwohl diese erst mal die gleichen content und card Views als Inhalt habe.

                Screenshot.png

                Eigenartig 😉

                Aber nochmal mein Kompliment an Deine Arbeit! Und vielen Dank - auch für Deinen Support hier.

                mickymM Online
                mickymM Online
                mickym
                Most Active
                wrote on last edited by mickym
                #181

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

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                UhulaU 2 Replies Last reply
                0
                • mickymM 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.

                  UhulaU Offline
                  UhulaU Offline
                  Uhula
                  wrote on last edited by
                  #182

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

                  Uhula - Leise und Weise
                  Ex: ioBroker on Gigabyte NUC Proxmox

                  1 Reply Last reply
                  0
                  • mickymM 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.

                    UhulaU Offline
                    UhulaU Offline
                    Uhula
                    wrote on last edited by
                    #183

                    @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

                    Uhula - Leise und Weise
                    Ex: ioBroker on Gigabyte NUC Proxmox

                    mickymM 1 Reply Last reply
                    0
                    • UhulaU Uhula

                      @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
                      mickymM Online
                      mickymM Online
                      mickym
                      Most Active
                      wrote on last edited by
                      #184

                      @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. 🙂

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      UhulaU 1 Reply Last reply
                      0
                      • UhulaU Uhula

                        @Pittini Kleiner Fehler, leicht zu beheben, "background" statt "color":
                        .mdui-bnav {
                        background:var(--bnav-background) !important;
                        z-index:98;
                        border:none;
                        box-shadow:0px -2px 4px -1px rgba(0,0,0,0.45);
                        transition: left 0.25s ease;
                        }

                        @der-eine Ich habe noch nichts mit iCal erklärt - oder kann mich zumindest daran nicht erinnern. Worum geht es? Termine aus dem Kalender via Script in einen HTML-State als table zu setzen um ihn als mdui-table anzuzeigen?

                        Wenn ja, dann

                        • das Script Legt einen HTML-State unter javascript.X.ical.0.HTML an (X=Script-Instanz)
                        • es setzt ein on-Event auf den State ical.0.Data.Table
                        • wenn sich der Wert dort verändert, wird das Script ausgeführt und dieses bildet aus dem ical.0.Data.Table Inhalt dann den javascript.X.ical.0.HTML Inhalt
                        • der javascript.X.ical.0.HTML Inhalt kann als HTML Wert für eine mdui-table genutzt werden, Widget: "basic-string (unexcaped)"
                        var idCal = "ical.0";
                        var idCalTrigger   = idCal + ".data.trigger";
                        var idCalTable     = idCal + ".data.table";
                        var idCalHTML      = idCal + ".data.html";
                        var idCalHTMLtable = idCal + ".html";
                        
                        createState(idCalHTMLtable, " ");
                        
                        
                        
                        function iCalToHTMLTable() {
                            var html     = "<table style='font-size:0.9em;'><thead><tr><th style='text-align:left;'>Zeit</th><th style='text-align:left;'>Text</th><th style='text-align:left;'>Kalendar</th></tr></thead><tbody>";
                            var calTable = getState(idCalTable);
                            var inst     = getObject("system.adapter."+idCal);
                            var instopt  = inst.native;
                            var calendar = {};
                        
                            for (var i = 0; i < calTable.val.length; i++) { 
                                var entry = calTable.val[i];
                                if ( entry._calName != calendar.name ) {
                                    calendar = {};
                                    for (var c = 0; c < instopt.calendars.length; c++ ) {
                                        if (entry._calName == instopt.calendars[c].name ) {
                                            calendar = instopt.calendars[c];
                                            break;
                                        }
                                    }
                                }    
                                if (calendar.color !== "")
                                    html+="<tr style='background:transparent; background-image: linear-gradient("+calendar.color+","+calendar.color+"); background-size: 4px 90%; background-repeat: no-repeat;'>";
                                else
                                    html+="<tr>";
                                html+="<td style='font-size:1.1em;'>"+entry.date+"</td>"
                                html+="<td>"+entry.event+"</td>"
                                html+="<td>"+entry._calName+"</td>"
                                html+="</tr>";
                            }
                            html+="</body></table>";    
                            setState(idCalHTMLtable, html);    
                        //dump( html );
                        }
                        
                        
                        on({id: idCalTable, change: "ne"}, function (obj) {
                            iCalToHTMLTable();
                        });
                        
                        iCalToHTMLTable();
                        

                        T Offline
                        T Offline
                        Tirador
                        wrote on last edited by
                        #185

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

                        1 Reply Last reply
                        0
                        • mickymM mickym

                          @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. 🙂

                          UhulaU Offline
                          UhulaU Offline
                          Uhula
                          wrote on last edited by
                          #186

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

                          Uhula - Leise und Weise
                          Ex: ioBroker on Gigabyte NUC Proxmox

                          mickymM 1 Reply Last reply
                          0
                          • D Offline
                            D Offline
                            der-eine
                            wrote on last edited by der-eine
                            #187

                            @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
                            0
                            • T Offline
                              T Offline
                              Tirador
                              wrote on last edited by
                              #188

                              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?

                              UhulaU 1 Reply Last reply
                              0
                              • T Tirador

                                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?

                                UhulaU Offline
                                UhulaU Offline
                                Uhula
                                wrote on last edited by
                                #189

                                @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).

                                Uhula - Leise und Weise
                                Ex: ioBroker on Gigabyte NUC Proxmox

                                1 Reply Last reply
                                0
                                • jpgorganizerJ Offline
                                  jpgorganizerJ Offline
                                  jpgorganizer
                                  wrote on last edited by jpgorganizer
                                  #190

                                  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

                                  Bitte keine Fragen per PN, die gehören ins Forum!

                                  ioBroker
                                  smartgarden Adapter für GARDENA smart system
                                  Plattform: Raspberry Pi OS Linux 12 (bookworm), Node.js: v18.18.2, NPM: 9.8.1

                                  UhulaU 1 Reply Last reply
                                  0
                                  • UhulaU Uhula

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

                                    mickymM Online
                                    mickymM Online
                                    mickym
                                    Most Active
                                    wrote on last edited by mickym
                                    #191

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

                                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                    1 Reply Last reply
                                    0
                                    • jpgorganizerJ 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

                                      UhulaU Offline
                                      UhulaU Offline
                                      Uhula
                                      wrote on last edited by
                                      #192

                                      @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

                                      Uhula - Leise und Weise
                                      Ex: ioBroker on Gigabyte NUC Proxmox

                                      jpgorganizerJ 1 Reply Last reply
                                      1
                                      • UhulaU Uhula

                                        @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

                                        jpgorganizerJ Offline
                                        jpgorganizerJ Offline
                                        jpgorganizer
                                        wrote on last edited by
                                        #193

                                        @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

                                        Bitte keine Fragen per PN, die gehören ins Forum!

                                        ioBroker
                                        smartgarden Adapter für GARDENA smart system
                                        Plattform: Raspberry Pi OS Linux 12 (bookworm), Node.js: v18.18.2, NPM: 9.8.1

                                        1 Reply Last reply
                                        0
                                        • T Offline
                                          T Offline
                                          Tirador
                                          wrote on last edited by
                                          #194

                                          Ich würde gerne den Chips Radio-Button zur Steuerung meiner OSRAM-Schaltsteckdosen über Deconz verwenden.
                                          Kurioserweise ändert das den Wert, allerdings werden die Dosen nicht geschaltet.

                                          Ich habe testweise nun zwei andere Schalter in das Widget aufgenommen (die oberen zwei im Screenshot). Beide schalten auch die Steckdosen richtig.

                                          2020-03-14 14_52_34-vis.png

                                          Wenn ich den Chip-Schalter schalte erhalte ich auch eine Fehlermeldung im Log:

                                          2020-03-14 14_58_28-logs - ioBroker.png

                                          Ich denke das Widget müsste also statt den Werten 0 oder 1 ein true oder false senden. Allerdings kann man dies ja nirgendwo konfigurieren. Mache ich etwas grundlegend falsch?

                                          Export der Widgets:

                                          Widget Bool-Schalter funktionierend (auf dem Screenshot der gelbe oben):

                                          [{"tpl":"tplValueBoolCheckbox","data":{"oid":"deconz.0.Groups.5.on","g_fixed":true,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"html_append":"<label for=\"{wid}_checkbox\"><label>","class":"mdui-switch mdui-amber-acc","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},"style":{"left":"192px","top":"48px","width":"48px","height":"30px","z-index":1},"widgetSet":"basic"}]
                                          

                                          Widget ChipDesign Schalter (leider nicht funktionierend):

                                          [{"tpl":"tplJquiRadio","data":{"oid":"deconz.0.Groups.5.on","g_fixed":true,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","off_text":"aus","on_text":"ein","padding":"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,"class":"mdui-red mdui-red-acc mdui-chips-outlined","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},"style":{"left":"168px","top":"136px","width":"","height":"32px"},"widgetSet":"jqui"}]
                                          

                                          bilberryB 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

                                          525

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe