private async Task <bool> LoadSavedWeatherData(bool _override) { if (_override) { // Load weather data try { weather = await Settings.GetWeatherData(location.query); if (wm.SupportsAlerts) { weather.weather_alerts = await Settings.GetWeatherAlertData(location.query); } } catch (Exception ex) { weather = null; Logger.WriteLine(LoggerLevel.Error, ex, "WeatherDataLoader: error loading saved weather data"); } #if WINDOWS_UWP var userlang = GlobalizationPreferences.Languages.First(); var culture = new CultureInfo(userlang); #else var culture = CultureInfo.CurrentCulture; #endif var locale = wm.LocaleToLangCode(culture.TwoLetterISOLanguageName, culture.Name); bool isInvalid = weather == null || !weather.IsValid() || weather.source != Settings.API; if (wm.SupportsWeatherLocale && !isInvalid) { isInvalid = weather.locale != locale; } return(!isInvalid); } else { return(await LoadSavedWeatherData()); } }