public ActionResult Upsert(FaqUpsertViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var dbModel = Mapper.Map <Faq>(model);
                    using (var transaction = ContextManager.NewTransaction())
                    {
                        faqService.Upsert(dbModel);
                        transaction.Commit();
                    }

                    this.ShowMessage(MessageType.Success, Resource.ChangesSuccessfullySaved);
                    return(RedirectToAction("Index", new FaqQueryViewModel {
                        Id = model.Id
                    }));
                }
                catch (UserDbException e)
                {
                    Logger.Error(e);
                    ModelState.AddModelError(string.Empty, Resource.DbErrorMessage);
                }
                catch (UserException e)
                {
                    ModelState.AddModelError(string.Empty, e.Message);
                }
            }

            InitUpsertBreadcrumb(model);
            return(View(model));
        }