MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-OpenWeatherForecast - Replacement for MMM-DarkSkyForecast

    Scheduled Pinned Locked Moved Utilities
    256 Posts 55 Posters 631.8k Views 57 Watching
    Loading More Posts
    • 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.
    • F Offline
      fillilutten
      last edited by

      Any way to change the order of the different extraCurrentConditions?

      J 1 Reply Last reply Reply Quote 0
      • F Offline
        fillilutten
        last edited by fillilutten

        Oh, two more things. What css do I do to change color of the slash in H/L in “extraCurrentConditions” ?

        And can I remove “Powered by OpenWeather”? I have such a small screen so have to remove even the smallest of things.

        J 1 Reply Last reply Reply Quote 0
        • J Offline
          j.e.f.f Project Sponsor Module Developer @blackeaglece
          last edited by

          @blackeaglece that’s not my weather module. You’re using a different one. Not sure which.

          1 Reply Last reply Reply Quote 0
          • J Offline
            j.e.f.f Project Sponsor Module Developer @swvalenti
            last edited by

            @swvalenti unfortunately, the provider has put “Special weather statement” into the title field and the actual title as part of the description. To get that to show a different colour it would require extra processing to split on the ... character.

            Having seen a few weather alerts from other regions I can say it’s not commonly done the same way as yours. I don’t know what might break as a result of formatting that way for you.

            If you’re up for it, you can modify my code for your needs. Most of this prefornatting is in the main MMM-OpenEeatherForecast.js file

            1 Reply Last reply Reply Quote 0
            • J Offline
              j.e.f.f Project Sponsor Module Developer @miniashman
              last edited by

              @miniashman A couple of ways, yes:

              By default, the animated icon set is used for the large icon beside the current temperature. I’ve found from my testing that sometimes this the code calls for the icon to render before it is ready to do so, and just shows up blank as you see above. There is a configuration parameter to add a delay to animated icon rendering. Use it in your config as follows:

              ...
                animatedIconStartDelay: 1500,
              ...
              

              This parameter defaults to 1000 (milliseconds) so it looks like you’ll need to experiment with numbers larger than that.

              Alternatively If you don’t care about the animated icon, then you can turn it off altogether in your config:

              ...
                useAnimatedIcons: false,
              ...
              

              This will use the static icon set for everything, and you won’t need to play around with the animatedIconStartDelay config parameter.

              M 1 Reply Last reply Reply Quote 0
              • J Offline
                j.e.f.f Project Sponsor Module Developer @fillilutten
                last edited by

                @fillilutten said in MMM-OpenWeatherForecast - Replacement for MMM-DarkSkyForecast:

                Any way to change the order of the different extraCurrentConditions?

                This is technically possible with CSS, but it’s likely more trouble than it’s worth for me to explain it here, and error prone. A better and easier option for you would be to modify the mmm-openweather-forecast.njk file to reorder these items as you like.

                Starting on line 39 you’ll see the templates for the extra current conditions. The order in which they appear here is the order in which they appear in the module.

                Here are the first several lines of that section:

                {# -------------- Extra Current Conditions -------------- #}
                    {% if config.showExtraCurrentConditions %}
                      <div class="extra-current-conditions-wrapper small bright">
                
                        {# -- High / Low Temp -- #}
                        {% if config.extraCurrentConditions.highLowTemp %}
                          <span class="temperature-container">
                            <span class="high-temperature">{{ forecast.currently.tempRange.high }}</span>
                            <span class="temperature-separator dimmed">/</span>
                            <span class="low-temperature">{{ forecast.currently.tempRange.low }}</span>
                          </span>
                        {% endif %}
                
                        {# -- Sunrise -- #}
                        {% if config.extraCurrentConditions.sunrise %}
                        <span class="sunrise-container">
                          <img class="inline-icon sunrise-icon" src="{{ inlineIcons.sunrise }}" />
                          {{ forecast.currently.sunrise }}
                        </span>
                        {% endif %}
                
                        {# -- Sunset -- #}
                        {% if config.extraCurrentConditions.sunset %}
                        <span class="sunset-container">
                          <img class="inline-icon sunset-icon" src="{{ inlineIcons.sunset }}" />
                          {{ forecast.currently.sunset }}
                        </span>
                        {% endif %}
                

                Say you wanted the Hi / Lo temps to display after sunrise / sunset, just move the whole block as follows:

                {# -------------- Extra Current Conditions -------------- #}
                    {% if config.showExtraCurrentConditions %}
                      <div class="extra-current-conditions-wrapper small bright">
                
                        {# -- Sunrise -- #}
                        {% if config.extraCurrentConditions.sunrise %}
                        <span class="sunrise-container">
                          <img class="inline-icon sunrise-icon" src="{{ inlineIcons.sunrise }}" />
                          {{ forecast.currently.sunrise }}
                        </span>
                        {% endif %}
                
                        {# -- Sunset -- #}
                        {% if config.extraCurrentConditions.sunset %}
                        <span class="sunset-container">
                          <img class="inline-icon sunset-icon" src="{{ inlineIcons.sunset }}" />
                          {{ forecast.currently.sunset }}
                        </span>
                        {% endif %}
                
                        {# -- High / Low Temp -- #}
                        {% if config.extraCurrentConditions.highLowTemp %}
                          <span class="temperature-container">
                            <span class="high-temperature">{{ forecast.currently.tempRange.high }}</span>
                            <span class="temperature-separator dimmed">/</span>
                            <span class="low-temperature">{{ forecast.currently.tempRange.low }}</span>
                          </span>
                        {% endif %}
                
                

                Keep in mind that doing this will make it a touch more difficult to update my module as I release updates. When you want to update, you’ll need to to the following:

                1. Make a backup of your modified mmm-openweather-forecast.njk file (copy it to another location, for example)
                2. Restore the original with git checkout mmm-openweather-forecast.njk
                3. Update the code with git pull
                4. Restore your modified version of mmm-openweather-forecast.njk from your backup
                1 Reply Last reply Reply Quote 1
                • J Offline
                  j.e.f.f Project Sponsor Module Developer @fillilutten
                  last edited by

                  @fillilutten said in MMM-OpenWeatherForecast - Replacement for MMM-DarkSkyForecast:

                  What css do I do to change color of the slash in H/L in “extraCurrentConditions” ?

                  Yes:

                  .MMM-OpenWeatherForecast .temperature-container .temperature-separator,
                  .MMM-OpenWeatherForecast .forecast-container .forecast-item .temperature-container .temperature-separator {
                    color: #FF0000; /* makes it red */
                  }
                  
                  
                  

                  @fillilutten said in MMM-OpenWeatherForecast - Replacement for MMM-DarkSkyForecast:

                  And can I remove “Powered by OpenWeather”?

                  Yes.

                  .MMM-OpenWeatherForecast .attribution {
                    display: none;
                  }
                  
                  1 Reply Last reply Reply Quote 1
                  • J Offline
                    j.e.f.f Project Sponsor Module Developer @pwalsh2202
                    last edited by

                    @pwalsh2202 said in MMM-OpenWeatherForecast - Replacement for MMM-DarkSkyForecast:

                    I’m looking to see if I can get just a truncated text-based description of the upcoming weather.

                    I’d like to see this too. The DarkSky API had this and it’s the one thing I really miss with switching over to OpenWeather. My guess is that in order to do this I’d need to create a special formatter that generates a detailed summary based on the weather data available. Say the API returned a wind speed of over 10mph, gusts reaching 30mph… I could generate a phrase like “It’s windy today with gusts reaching 30mph.”

                    This looks like a significant time commitment that I just don’t have. I would need to come up with all of the thresholds of the weather data that would trigger such phrases, create phrase templates, choose how they should be ordered, and then worry about translation for all of the languages MM supports. As it is I barely have an hour or two on the weekend to dedicate answering forum questions on this module and fixing any bugs.

                    If anyone else is willing to do this, I’d gladly welcome the pull request into my code.

                    The best my module can currently do to address your ask is to configure the module to only show the current conditions and the extra current conditions (which give you the summary in icon/metric format). You can turn off the hourly and daily forecasts if you like. Take a look through the README.md file with outlines all of the configuration options for this module.

                    P 1 Reply Last reply Reply Quote 0
                    • P Offline
                      pwalsh2202 @j.e.f.f
                      last edited by

                      @j-e-f-f - Thanks for responding. I wasn’t sure if this was something their API auto-configured or not. I didn’t mean to ask so much work of you but thought there might be a part of their API I missed. I just last night managed to get what I needed with a really basic “(Description) currently. The high will be (high temp) and the low will be (low temp.”

                      Thank you for all your work on this. You saved me a ton of time by using your module as a base.

                      1 Reply Last reply Reply Quote 0
                      • M Offline
                        miniashman @j.e.f.f
                        last edited by

                        @j-e-f-f Thank you it worked just the way I wanted it. Appreciate it :oncoming_fist:

                        1 Reply Last reply Reply Quote 0
                        • StoffbeuteluweS Offline
                          Stoffbeuteluwe Project Sponsor @miniashman
                          last edited by

                          @miniashman

                          hi… how can I get the C for Celsius behind the degree, on my mirror I only have the number …

                          BKeyportB M 2 Replies Last reply Reply Quote 0
                          • BKeyportB Offline
                            BKeyport Module Developer @Stoffbeuteluwe
                            last edited by

                            Actually, I’d like the F for F#@(%**&@ stupid measurements, for mine too.

                            The "E" in "Javascript" stands for "Easy"

                            1 Reply Last reply Reply Quote 0
                            • M Offline
                              miniashman @Stoffbeuteluwe
                              last edited by

                              @stoffbeuteluwe In the custom.css i added the following:

                              
                              .MMM-OpenWeatherForecast .current-conditions-wrapper .current.temperature:after {
                                  content: "C";
                              }
                              .MMM-OpenWeatherForecast .extra-current-conditions-wrapper  . temperature-container . high-temperature:after,
                              .MMM-OpenWeatherForecast .extra-current-conditions-wrapper  . temperature-container . low-temperature:after {
                                  content: "C";
                              }
                              .MMM-OpenWeatherForecast .forecast-item.daily .high-temperature:after,
                              .MMM-OpenWeatherForecast .forecast-item.daily .low-temperature:after {
                                  content: "C";
                              }
                              
                              
                              

                              You can change “C” to “F” if needed depending on which units you want to use.

                              StoffbeuteluweS J 2 Replies Last reply Reply Quote 0
                              • StoffbeuteluweS Offline
                                Stoffbeuteluwe Project Sponsor @miniashman
                                last edited by

                                @miniashman oh thanks 🙏 I will try today …

                                1 Reply Last reply Reply Quote 0
                                • J Offline
                                  j.e.f.f Project Sponsor Module Developer @miniashman
                                  last edited by

                                  @miniashman said in MMM-OpenWeatherForecast - Replacement for MMM-DarkSkyForecast:

                                  @stoffbeuteluwe In the custom.css i added the following:

                                  
                                  .MMM-OpenWeatherForecast .current-conditions-wrapper .current.temperature:after {
                                      content: "C";
                                  }
                                  .MMM-OpenWeatherForecast .extra-current-conditions-wrapper  . temperature-container . high-temperature:after,
                                  .MMM-OpenWeatherForecast .extra-current-conditions-wrapper  . temperature-container . low-temperature:after {
                                      content: "C";
                                  }
                                  .MMM-OpenWeatherForecast .forecast-item.daily .high-temperature:after,
                                  .MMM-OpenWeatherForecast .forecast-item.daily .low-temperature:after {
                                      content: "C";
                                  }
                                  
                                  
                                  

                                  You can change “C” to “F” if needed depending on which units you want to use.

                                  There’s actually a slight bug in this. The CSS should be as follows (notice he removal of the sapce between the period and class names in a few places):

                                  .MMM-OpenWeatherForecast .current-conditions-wrapper .current.temperature:after {
                                      content: "C";
                                  }
                                  .MMM-OpenWeatherForecast .extra-current-conditions-wrapper  .temperature-container .high-temperature:after,
                                  .MMM-OpenWeatherForecast .extra-current-conditions-wrapper  .temperature-container .low-temperature:after {
                                      content: "C";
                                  }
                                  .MMM-OpenWeatherForecast .forecast-item.daily .high-temperature:after,
                                  .MMM-OpenWeatherForecast .forecast-item.daily .low-temperature:after {
                                      content: "C";
                                  }
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • B Offline
                                    Biebermann
                                    last edited by

                                    One question about this, how do you get the weather warnings from the DWD displayed in German? The language is set to German “de” but these messages are displayed in English.

                                    Unfortunately I have not found anything.

                                    P.S. Sorry for my English :confused_face:

                                    karsten13K 1 Reply Last reply Reply Quote 0
                                    • M Offline
                                      miniashman
                                      last edited by

                                      @j-e-f-f Thank you. Will correct it

                                      1 Reply Last reply Reply Quote 0
                                      • karsten13K Offline
                                        karsten13 @Biebermann
                                        last edited by

                                        @biebermann

                                        Unfortunately I have not found anything.

                                        https://forum.magicmirror.builders/post/89463
                                        https://forum.magicmirror.builders/post/90002

                                        B P 2 Replies Last reply Reply Quote 0
                                        • B Offline
                                          Biebermann @karsten13
                                          last edited by

                                          @karsten13

                                          I have already gone through the two posts.

                                          But thanks for your answer.

                                          P.S. now I also have the double display since today. Let’s wait and see if there will be a solution.

                                          J 1 Reply Last reply Reply Quote 0
                                          • J Offline
                                            j.e.f.f Project Sponsor Module Developer @Biebermann
                                            last edited by

                                            @biebermann There isn’t a solution. The alerts come through as-is. There seems to be no logic in place on OpenWeather’s side to return the alerts in the configured language.

                                            B 1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 9
                                            • 10
                                            • 11
                                            • 12
                                            • 13
                                            • 13 / 13
                                            • First post
                                              Last post
                                            Enjoying MagicMirror? Please consider a donation!
                                            MagicMirror created by Michael Teeuw.
                                            Forum managed by Sam, technical setup by Karsten.
                                            This forum is using NodeBB as its core | Contributors
                                            Contact | Privacy Policy