示例#1
0
        public async Task <ActionResult> AdminUpdateVoteSettings(UpdateVoteSettingsModel model)
        {
            if (!ModelState.IsValid)
            {
                model.Currencies = await CurrencyReader.GetCurrencies();

                return(View("AdminUpdateVoteSettingsModal", model));
            }

            var result = await VoteWriter.AdminUpdateVoteSettings(User.Id(), model);

            if (!ModelState.IsWriterResultValid(result))
            {
                model.Currencies = await CurrencyReader.GetCurrencies();

                return(View("AdminUpdateVoteSettingsModal", model));
            }

            return(CloseModal());
        }
示例#2
0
        public async Task <IWriterResult <bool> > AdminUpdateVoteSettings(string userId, UpdateVoteSettingsModel model)
        {
            using (var context = DataContextFactory.CreateContext())
            {
                var votesettings = await context.VoteSetting.FirstOrDefaultNoLockAsync();

                if (votesettings == null)
                {
                    votesettings = new VoteSettings();
                    context.VoteSetting.Add(votesettings);
                    await context.SaveChangesAsync();
                }

                votesettings.Next          = model.Next;
                votesettings.IsPaidEnabled = model.IsPaidEnabled;
                votesettings.IsFreeEnabled = model.IsFreeEnabled;
                votesettings.CurrencyId    = model.CurrencyId;

                var contextResults = await context.SaveChangesWithLoggingAsync();

                return(WriterResult <bool> .ContextResult(contextResults));
            }
        }