private async void SwitchToDetailedView(MessageTypes.ViewStopDetails args) { RaiseStateChanged(StopSearchState.Details); SelectedStop = args.StopSelected; LinesAtStop.Clear(); DeparturesAtStop.Clear(); IsDetailsLoading = true; ApiResult <TransitStopDetails> stopDetailsResponse = await _networkService.GetStopDetails(args.StopSelected.BackingStop.GtfsId, DateTime.Now); IsDetailsLoading = false; if (stopDetailsResponse.IsFailure) { //todo: show failed UI somehow return; } LinesAtStop = new ObservableCollection <TransitLineWithoutStops>( stopDetailsResponse.Result.LinesThroughStop); DeparturesAtStop = new ObservableCollection <TransitStopTime>( stopDetailsResponse.Result.Stoptimes .Where(x => x.RealtimeDepartureDateTime >= DateTime.Now || x.ScheduledDepartureDateTime >= DateTime.Now) .ToList()); }
private void SwitchToOverview() { if (_currentState == StopSearchState.Details) { RaiseStateChanged(StopSearchState.Overview); LinesAtStop.Clear(); DeparturesAtStop.Clear(); } }