private void RemoveLocation(PersonalLocationViewModel personalLocation) { this.personalLocationModel.DeletePersonalLocationForCurrentUserAsync(personalLocation.Id, (error) => { if (error != null) { MessageBox.Show(error.Message); return; } this.Refresh(); }); }
private void FindStoresByPersonalLocation(PersonalLocationViewModel personalLocation) { if (personalLocation != null && personalLocation.Latitude.HasValue && personalLocation.Longitude.HasValue) { this.storeModel.FindStoresByLatitudeAndLongitudeAsync(personalLocation.Latitude.Value, personalLocation.Longitude.Value, this.SearchPersonalLocationRadius, (stores, error) => { if (error != null) { // Display error, normally this would be done through a property MessageBox.Show(error.Message); return; } this.SearchResults.Clear(); foreach (StoreViewModel store in stores) { using (UserStoreViewModel userStore = new UserStoreViewModel(store)) { var storeUsedByUser = this.UserStores.FirstOrDefault(s => s.Id == store.Id); if (storeUsedByUser == null) { userStore.UsedByUser = false; } else { userStore.UsedByUser = true; } userStore.Index = this.SearchResults.Count + 1; this.SearchResults.Add(userStore); } } }); } }