Skip to content

Commit

Permalink
Fixed probability of precipitation in weathergov.js (#3195)
Browse files Browse the repository at this point in the history
Fixes #3182

Fixed issue with probability of precipitation not showing up on hourly
or daily forecast

---------

Co-authored-by: veeck <[email protected]>
  • Loading branch information
dgoth and rejas authored Sep 25, 2023
1 parent ad665a7 commit a3c2e7b
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 4 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ _This release is scheduled to be released on 2023-10-01._
- Fix: AnimateCSS merge hide() and show() animated css class when we do multiple call
- Fix `Uncaught SyntaxError: Identifier 'getCorsUrl' has already been declared (at utils.js:1:1)` when using `clock` and `weather` module (#3204)
- Fix overriding `config.js` when running tests (#3201)
- Fix issue in weathergov provider with probability of precipitation not showing up on hourly or daily forecast

## [2.24.0] - 2023-07-01

Expand Down
16 changes: 12 additions & 4 deletions modules/default/weather/providers/weathergov.js
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,12 @@ WeatherProvider.register("weathergov", {
weather.windSpeed = WeatherUtils.convertWindToMs(weather.windSpeed);
weather.windFromDirection = forecast.windDirection;
weather.temperature = forecast.temperature;
//assign probability of precipitation
if (forecast.probabilityOfPrecipitation.value === null) {
weather.precipitationProbability = 0;
} else {
weather.precipitationProbability = forecast.probabilityOfPrecipitation.value;
}
// use the forecast isDayTime attribute to help build the weatherType label
weather.weatherType = this.convertWeatherType(forecast.shortForecast, forecast.isDaytime);

Expand Down Expand Up @@ -238,8 +244,6 @@ WeatherProvider.register("weathergov", {
* fetch forecast information for daily forecast.
*/
fetchForecastDaily(forecasts) {
const precipitationProbabilityRegEx = "Chance of precipitation is ([0-9]+?)%";

// initial variable declaration
const days = [];
// variables for temperature range and rain
Expand All @@ -262,8 +266,12 @@ WeatherProvider.register("weathergov", {

minTemp = [];
maxTemp = [];
const precipitation = new RegExp(precipitationProbabilityRegEx, "g").exec(forecast.detailedForecast);
if (precipitation) weather.precipitationProbability = precipitation[1];
//assign probability of precipitation
if (forecast.probabilityOfPrecipitation.value === null) {
weather.precipitationProbability = 0;
} else {
weather.precipitationProbability = forecast.probabilityOfPrecipitation.value;
}

// set new date
date = moment(forecast.startTime).format("YYYY-MM-DD");
Expand Down

0 comments on commit a3c2e7b

Please sign in to comment.