async Task <DataDisplayModel> LoadDataAsync(DataDisplayModel dataDisplayModel) { var result = new DataDisplayModel(); if (dataDisplayModel.DataType == DataType.Joke) { var joke = await _dataReader.GetJoke(dataDisplayModel.Id); result.Body = joke.Body; result.InsertDate = joke.InsertDate; result.Id = joke.Id; result.TextColor = ColorPaletteHelper.Blue; result.DataType = DataType.Joke; } else if (dataDisplayModel.DataType == DataType.Quote) { var quote = await _dataReader.GetQuote(dataDisplayModel.Id); result.Body = quote.Body; result.InsertDate = quote.InsertDate; result.Id = quote.Id; result.TextColor = ColorPaletteHelper.Green; result.Author = quote.Author; result.DataType = DataType.Quote; } return(result); }
public ViewItemViewModel(DataDisplayModel dataDisplayModel, INavigation navigation) { _dataReader = DependencyService.Get <IDataReader>(); _dataManipulator = DependencyService.Get <IDataManipulator>(); _navigation = navigation; DeleteItemCommand = new Command(DeleteAction); DataDisplayModel = new NotifyTaskCompletion <DataDisplayModel>(LoadDataAsync(dataDisplayModel)); }
public ViewItemPage(DataDisplayModel dataDisplayModel) { InitializeComponent(); MessagingCenter.Subscribe <ViewItemViewModel>(this, "ItemDeleted", (sender) => { DisplayAlert("Alert", "Item deleted!", "OK"); }); BindingContext = new ViewItemViewModel(dataDisplayModel, Navigation); }
async Task <List <DataDisplayModel> > LoadDataAsync() { var list = new List <DataDisplayModel>(); var jokes = await _dataReader.GetJokes(); foreach (var joke in jokes) { var displayModel = new DataDisplayModel { DataType = DataType.Joke, Body = $"{joke.Body} - Saved: {joke.InsertDate.ToLongDateString()}", Id = joke.Id, InsertDate = joke.InsertDate, BgColor = ColorPaletteHelper.Blue }; list.Add(displayModel); } var quotes = await _dataReader.GetQuotes(); foreach (var quote in quotes) { var displayModel = new DataDisplayModel { DataType = DataType.Quote, Body = $"{quote.Body} - Saved: {quote.InsertDate.ToLongDateString()}", Id = quote.Id, InsertDate = quote.InsertDate, BgColor = ColorPaletteHelper.Green }; list.Add(displayModel); } list = list.OrderByDescending(d => d.InsertDate).ToList(); return(list); }