public async Task<bool> ExecuteDeleteTripCommand(Trip trip)
{
if (IsBusy)
return false;
Logger.Instance.Track("DeleteTrip");
var progress = UserDialogs.Instance.Loading("Deleting Trip...", show: false, maskType: MaskType.Clear);
try
{
var result =
await
UserDialogs.Instance.ConfirmAsync($"Are you sure you want to delete trip: {trip.Name}?",
"Delete trip?", "Delete", "Cancel");
if (!result)
return false;
progress?.Show();
await StoreManager.TripStore.RemoveAsync(trip);
Trips.Remove(trip);
}
catch (Exception ex)
{
Logger.Instance.Report(ex);
}
finally
{
progress?.Dispose();
}
return true;
}