private async void OpenItinerary(Itinerary itinerary)
 {
     try
     {
         await Navigator.PushAsync<ItineraryViewModel>(vm =>
         {
             vm.Trip = Trip;
             vm.Itinerary = itinerary;
         });
     }
     catch (Exception ex)
     {
         ReportError(ex);
     }
 }
        protected override async void Done()
        {
            try
            {
                if (_importMode == EventImportMode.Itinerary)
                {
                    var selectItineraryVM = await Navigator.PushModalAndWaitAsync<SelectItineraryViewModel>(vm => vm.Trip = Trip);

                    if (selectItineraryVM.Result != ModalResult.Canceled)
                    {
                        EventsToImport = await DataStore.GetEvents(selectItineraryVM.SelectedItinerary);

                        foreach (var ev in EventsToImport)
                        {
                            ev.ID = 0;
                            ev.ItineraryID = 0;
                        }
                    }
                    else
                    {
                        return;
                    }
                }
                else if (_importMode == EventImportMode.Calendar)
                {
                    var selectCalendarVM = await Navigator.PushModalAndWaitAsync<SelectCalendarViewModel>();

                    if (selectCalendarVM.Result != ModalResult.Canceled)
                    {
                        EventsToImport = await CalendarService.GetEventsAsync(selectCalendarVM.SelectedCalendar, Trip.Start, Trip.End);
                    }
                    else
                    {
                        return;
                    }
                }

                Result = ModalResult.Done;

                _itinerary = new Itinerary
                {
                    Name = _name,
                    TripID = Trip.ID
                };

                await Navigator.PopModalAsync();
            }
            catch (Exception ex)
            {
                ReportError(ex);
            }
        }
 private async void DeleteItinerary(Itinerary itinerary)
 {
     try
     {
         await DataStore.RemoveItinerary(itinerary);
         Itineraries.Remove(itinerary);
     }
     catch (Exception ex)
     {
         ReportError(ex);
     }
 }
Example #4
0
 public Task UpdateItinerary(Itinerary itinerary)
 {
     return Connection.UpdateAsync(itinerary);
 }
Example #5
0
 public Task RemoveItinerary(Itinerary itinerary)
 {
     return Connection.DeleteAsync(itinerary);
 }
Example #6
0
 public async Task<IList<Event>> GetEvents(Itinerary itinerary)
 {
     return await Connection.Table<Event>().Where(i => i.ItineraryID == itinerary.ID).ToListAsync().ConfigureAwait(false);
 }
Example #7
0
 public Task AddItinerary(Itinerary itinerary)
 {
     return Connection.InsertAsync(itinerary);
 }