public void LoadCurrents(AbsolutePlace place) { var countries = namazApi.GetCountries(); countries.ForEach(c => Countries.Add(c)); if (!string.IsNullOrWhiteSpace(place.Country?.UlkeID) && Countries.Any()) { var selectedCnt = Countries.FirstOrDefault(c => c.UlkeID == place.Country?.UlkeID); SelectedCountry = selectedCnt; var cities = namazApi.GetCities(selectedCnt.UlkeID); cities.ForEach(c => Cities.Add(c)); if (!string.IsNullOrWhiteSpace(place.City?.SehirID)) { var selectedCity = Cities.FirstOrDefault(c => c.SehirID == place.City?.SehirID); SelectedCity = selectedCity; var towns = namazApi.GetTowns(selectedCity.SehirID); towns.ForEach(i => Towns.Add(i)); if (!string.IsNullOrWhiteSpace(place.Town?.IlceID)) { var selectedTown = Towns.FirstOrDefault(t => t.IlceID == place.Town?.IlceID); SelectedTown = SelectedTown; } else { var cityCenter = towns.FirstOrDefault(t => t.IlceAdi == selectedCity.SehirAdi); SelectedTown = cityCenter; } } } }
private async void SaveSettings(object obj) { var oldSettings = LocalSettings.GetCurrent(); AbsolutePlace absoluteplace = null; if (SelectedTown == null || SelectedCity == null || SelectedCountry == null) { absoluteplace = oldSettings.AbsolutePlace; } else { absoluteplace = new AbsolutePlace { City = SelectedCity, Country = SelectedCountry, Town = SelectedTown } }; var newSettings = new LocalSettings { AbsolutePlace = absoluteplace, AlertUser = AlertUser, Interval = Interval }; if (GetLocation(oldSettings) != GetLocation(newSettings)) { mainViewModel.DeletePrayerTimes(); } LocalSettings.SaveSettings(newSettings); var navigation = App.Current.MainPage as NavigationPage; mainViewModel.ReStart(); await navigation.PopAsync(); }