Exemple #1
0
        public async Task <UnsubscribeFromArtistOutput> UnsubscribeFromArtist(UnsubscribeFromArtistInput input)
        {
            if (input.ArtistId <= 0)
            {
                throw new ArgumentException("ArtistId must be a valid Id", "ArtistId");
            }

            if (String.IsNullOrWhiteSpace(input.UnsubscribeToken))
            {
                throw new ArgumentException("UnsubscribeToken must be set", "UnsubscribeToken");
            }

            try
            {
                var subscription = await _crudServices.ReadSingleAsync <Subscription>(
                    s => s.ArtistId == input.ArtistId && s.Subscriber.UnsubscribeToken == input.UnsubscribeToken);

                if (subscription != null)
                {
                    await _crudServices.DeleteAndSaveAsync <Subscription>(subscription.Id);

                    return(new UnsubscribeFromArtistOutput
                    {
                        ErrorMessage = _crudServices.IsValid ? null : _crudServices.GetAllErrors()
                    });
                }
                else
                {
                    return(new UnsubscribeFromArtistOutput
                    {
                        ErrorMessage = "Subscription not found. Either you've already unsubscribed, or the URL that got you here wasn't quite right."
                    });
                }
            }
            catch (Exception ex)
            {
                Logger.LogError(ex, "ArtistId: {0}, UnsubscribeToken: {1}", input.ArtistId, input.UnsubscribeToken);
                return(new UnsubscribeFromArtistOutput
                {
                    ErrorMessage = ex.Message
                });
            }
        }
        protected async Task DeleteAccount()
        {
            if (await dialogService.ShowConfirmMessage(Strings.DeleteTitle, Strings.DeleteAccountConfirmationMessage))
            {
                await crudServices.DeleteAndSaveAsync <Account>(SelectedAccount.Id);

                settingsFacade.LastExecutionTimeStampSyncBackup = DateTime.Now;
                NavigationService.GoBack();
                backupService.EnqueueBackupTask().FireAndForgetSafeAsync();
            }
        }
        protected async Task DeleteAccount()
        {
            await crudServices.DeleteAndSaveAsync <AccountViewModel>(SelectedAccount.Id)
            .ConfigureAwait(true);

            settingsFacade.LastExecutionTimeStampSyncBackup = DateTime.Now;
#pragma warning disable 4014
            backupService.EnqueueBackupTask().ConfigureAwait(true);
#pragma warning restore 4014
            await CancelCommand.ExecuteAsync().ConfigureAwait(true);
        }
Exemple #4
0
        private async Task DeleteCategory()
        {
            await crudServices.DeleteAndSaveAsync <AccountViewModel>(SelectedCategory.Id)
            ;

            settingsFacade.LastExecutionTimeStampSyncBackup = DateTime.Now;
#pragma warning disable 4014
            backupService.EnqueueBackupTask();
#pragma warning restore 4014
            await CancelCommand.ExecuteAsync();
        }
Exemple #5
0
        private async Task DeleteCategory()
        {
            if (await dialogService.ShowConfirmMessage(Strings.DeleteTitle, Strings.DeleteCategoryConfirmationMessage))
            {
                await crudServices.DeleteAndSaveAsync <Category>(SelectedCategory.Id);

                logManager.Info("Category with Id {id} deleted.", SelectedCategory.Id);

                settingsFacade.LastExecutionTimeStampSyncBackup = DateTime.Now;
                backupService.EnqueueBackupTask().FireAndForgetSafeAsync();
                await CancelCommand.ExecuteAsync();
            }
        }
Exemple #6
0
        public async Task <ActionResult <WebApiMessageOnly> > Delete(int id, [FromServices] ICrudServicesAsync service)
        {
            await service.DeleteAndSaveAsync <TodoItemHybrid>(id);

            return(service.Response());
        }