mirror of
				https://github.com/MichMich/MagicMirror.git
				synced 2025-10-31 02:36:47 +00:00 
			
		
		
		
	Make all visiable values dynamic.
This commit is contained in:
		| @@ -1,13 +1,43 @@ | ||||
| {# | ||||
|     TODO: | ||||
|     - Show Humidity | ||||
|     - Show Units | ||||
|     _ Show Indoor Temperature | ||||
|     _ Show Indoor Humidity | ||||
| #} | ||||
|  | ||||
| {% if current %} | ||||
|     <div class="normal medium"> | ||||
|         <span class="wi wi-strong-wind dimmed"></span> | ||||
|         <span> | ||||
|             {{current.windSpeed}} <!-- should be converted to wind speed in correct unit ... --> | ||||
|             <sup>{{current.cardinalWindDirection()}}</sup> | ||||
|         </span> | ||||
|         <span class="wi dimmed wi-sunset"></span> <!-- hard coded, should use logic ... --> | ||||
|         <span> 00:00</span> <!-- hard coded, should use logic ... --> | ||||
|     </div> | ||||
|     {% if not config.onlyTemp %} | ||||
|         <div class="normal medium"> | ||||
|             <span class="wi wi-strong-wind dimmed"></span> | ||||
|             <span> | ||||
|                 {% if config.useBeaufort %} | ||||
|                     {{current.beaufortWindSpeed() | round}} | ||||
|                 {% else %} | ||||
|                     {{current.windSpeed | round}} | ||||
|                 {% endif %} | ||||
|                  | ||||
|                 {% if config.showWindDirection %} | ||||
|                     <sup>  | ||||
|                         {% if config.showWindDirectionAsArrow %} | ||||
|                             <i class="fa fa-long-arrow-up" style="transform:rotate({{current.windDirection}}deg);"></i>     | ||||
|                         {% else %} | ||||
|                             {{current.cardinalWindDirection()}} | ||||
|                         {% endif %} | ||||
|                           | ||||
|                     </sup> | ||||
|                 {% endif %} | ||||
|             </span> | ||||
|             <span class="wi dimmed wi-{{current.nextSunAction()}}"></span> | ||||
|             <span> | ||||
|                 {% if current.nextSunAction() == "sunset" %} | ||||
|                     {{current.sunset | formatTime}} | ||||
|                 {% else %} | ||||
|                     {{current.sunrise | formatTime}} | ||||
|                 {% endif %} | ||||
|             </span> | ||||
|         </div> | ||||
|     {% endif %} | ||||
|     <div class="large light"> | ||||
|         <span class="wi weathericon wi-{{current.weatherType}}"></span> | ||||
|         <span class="bright"> {{current.temperature | round(0 if config.roundTemp else 1)}}°</span></div> | ||||
|   | ||||
| @@ -55,7 +55,7 @@ Module.register("weather",{ | ||||
|  | ||||
| 	// Define required scripts. | ||||
| 	getStyles: function() { | ||||
| 		return ["weather-icons.css", "weather.css"]; | ||||
| 		return ["font-awesome.css", "weather-icons.css", "weather.css"]; | ||||
| 	}, | ||||
|  | ||||
| 	// Return the scripts that are nessecery for the weather module. | ||||
| @@ -79,6 +79,9 @@ Module.register("weather",{ | ||||
| 		// Let the weather provider know we are starting. | ||||
| 		this.weatherProvider.start() | ||||
|  | ||||
| 		// Add custom filters | ||||
| 		this.addFilters() | ||||
|  | ||||
| 		// Schedule the first update. | ||||
| 		this.scheduleUpdate(0) | ||||
| 	}, | ||||
| @@ -122,5 +125,26 @@ Module.register("weather",{ | ||||
| 				break; | ||||
| 			} | ||||
| 		}, nextLoad); | ||||
| 	}, | ||||
|  | ||||
| 	addFilters() { | ||||
| 		var self = this | ||||
| 		this.nunjucksEnvironment().addFilter("formatTime", function(date) { | ||||
| 			date = moment(date) | ||||
|  | ||||
| 			if (self.config.timeFormat !== 24) { | ||||
| 				if (self.config.showPeriod) { | ||||
| 					if (self.config.showPeriodUpper) { | ||||
| 						return date.format("h:mm A") | ||||
| 					} else { | ||||
| 						return date.format("h:mm a") | ||||
| 					} | ||||
| 				} else { | ||||
| 					return date.format("h:mm") | ||||
| 				} | ||||
| 			} | ||||
|  | ||||
| 			return date.format("HH:mm") | ||||
| 		}); | ||||
| 	} | ||||
| }); | ||||
|   | ||||
| @@ -5,11 +5,11 @@ | ||||
|  * | ||||
|  * By Michael Teeuw http://michaelteeuw.nl | ||||
|  * MIT Licensed. | ||||
|  *  | ||||
|  * | ||||
|  * This class is the blueprint for a day which includes weather information. | ||||
|  */ | ||||
|  | ||||
| // Currently this is focused on the information which is nessecery for the current weather. | ||||
| // Currently this is focused on the information which is necessary for the current weather. | ||||
| // As soon as we start implementing the forecast, mode properties will be added. | ||||
|  | ||||
| class WeatherObject { | ||||
| @@ -60,4 +60,21 @@ class WeatherObject { | ||||
| 			return "N"; | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	beaufortWindSpeed () { | ||||
| 		var kmh = this.windSpeed * 60 * 60 / 1000; | ||||
| 		var speeds = [1, 5, 11, 19, 28, 38, 49, 61, 74, 88, 102, 117, 1000]; | ||||
| 		for (var beaufort in speeds) { | ||||
| 			var speed = speeds[beaufort]; | ||||
| 			if (speed > kmh) { | ||||
| 				return beaufort; | ||||
| 			} | ||||
| 		} | ||||
| 		return 12; | ||||
| 	} | ||||
|  | ||||
| 	nextSunAction () { | ||||
| 		var now = new Date(); | ||||
| 		return (this.sunrise < now && this.sunset > now) ? "sunset" : "sunrise"; | ||||
| 	} | ||||
| }; | ||||
| @@ -5,7 +5,7 @@ | ||||
|  * | ||||
|  * By Michael Teeuw http://michaelteeuw.nl | ||||
|  * MIT Licensed. | ||||
|  *  | ||||
|  * | ||||
|  * This class is the blueprint for a weather provider. | ||||
|  */ | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user