Ejemplo n.º 1
0
        public async Task <ActionResult> AdminCreateFaq(CreateSupportFaqModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View("AdminCreateFaqModal", model));
            }

            var result = await SupportWriter.AdminCreateSupportFaq(User.Id(), model);

            if (!ModelState.IsWriterResultValid(result))
            {
                return(View("AdminCreateFaqModal", model));
            }

            return(CloseModalRedirect(Url.Action("Index", "Admin")));
        }
Ejemplo n.º 2
0
        public async Task <IWriterResult <bool> > AdminCreateSupportFaq(string userId, CreateSupportFaqModel model)
        {
            using (var context = DataContextFactory.CreateContext())
            {
                var faq = await context.SupportFaq.FirstOrDefaultNoLockAsync(x => x.Question == model.Question);

                if (faq != null)
                {
                    return(WriterResult <bool> .ErrorResult("FAQ with question '{0}' already exists.", model.Question));
                }

                int order = context.SupportFaq.Count() + 1;
                context.SupportFaq.Add(new SupportFaq
                {
                    Question  = model.Question,
                    Answer    = model.Answer,
                    Order     = order,
                    IsEnabled = true
                });

                await context.SaveChangesAsync();

                return(WriterResult <bool> .SuccessResult());
            }
        }