async Task DeleteDrive(string driveId)
        {
            bool answer = await _dialogService.ShowMessage("Are you sure you want to delete this drive?", "Delete Drive", "Yes", "No", null);

            if (answer)
            {
                DeleteDriveResponse deleteDriveResponse = await _dbHelper.DeleteDrive(new DeleteDriveRequest
                {
                    DriveId = driveId
                });

                if (!deleteDriveResponse.Success)
                {
                    await _dialogService.ShowMessage("Failed to delete drive", "Error", "OK", null);

                    return;
                }

                var drive = Drives.First(o => o.Id == driveId);
                Drives.Remove(drive);

                var drives = (await _dbHelper.GetPersonDrives(new GetPersonDrivesRequest
                {
                    Username = MainPage.Person.Username
                })).Drives.Select(o => (Drive)o);

                MainPage.Person.Drives = drives.ToList();
            }
        }
Exemple #2
0
        public async Task <DeleteDriveResponse> DeleteDrive(DeleteDriveRequest request)
        {
            DeleteDriveResponse deleteDriveResponse = new DeleteDriveResponse();

            try
            {
                deleteDriveResponse = await App.Database.DeleteDrive(new DeleteDriveRequest
                {
                    DriveId = request.DriveId
                });
            }
            catch (Exception e)
            {
                await _dialogService.ShowMessage($"The server returned an error: {e.Message}", "Error", "OK", null);
            }
            return(deleteDriveResponse);
        }