示例#1
0
#pragma warning disable S4261 // Methods should be named according to their synchronicities
        public async Task <JsonResult> Create(FeedbackViewModel feedbackViewModel)
#pragma warning restore S4261 // Methods should be named according to their synchronicities
        {
            var result = new FeedbackMessageViewModel {
                ResultMessage       = Resources.UI.TournamentController.CheckCaptcha,
                OperationSuccessful = false
            };

            try
            {
                var isCaptchaValid = await _captchaManager.ValidateUserCaptchaAsync(feedbackViewModel.CaptchaResponse);

                if (isCaptchaValid)
                {
                    if (ModelState.IsValid)
                    {
                        var domainFeedback = feedbackViewModel.ToDomain();
                        _feedbackService.Create(domainFeedback);
                        result.ResultMessage       = Resources.UI.TournamentController.SuccessfulSent;
                        result.OperationSuccessful = true;
                    }
                    else
                    {
                        result.ResultMessage = Resources.UI.TournamentController.CheckData;
                    }
                }
            }
            catch (ArgumentException ex)
            {
                ModelState.AddModelError("ValidationMessage", ex.Message);
            }

            return(Json(result, JsonRequestBehavior.DenyGet));
        }
        ViewResult GetFeedbackView(string msg, FeedbackMessageType messageType)
        {
            var viewModel = new FeedbackMessageViewModel
            {
                Message     = msg,
                MessageType = messageType
            };

            return(View("FeedbackMessage", viewModel));
        }
示例#3
0
        public ActionResult AddMessage(FeedbackMessageViewModel model)
        {
            var questId = int.Parse(Request.QueryString["questId"]);
            var email = model.Email.Trim();
            var msg = model.Text.Trim();

            if (!Provider.AddFeedbackMessage(questId, email, msg))
            {
                return View("AddMessageResult", new FeedbackMessageResultViewModel
                {
                    Title = Resources.Strings.FeedbackMessageFailureTitle,
                    Message = Resources.Strings.FeedbackMessageFailureMessage
                });
            }

            return View("AddMessageResult", new FeedbackMessageResultViewModel
            {
                Title = Resources.Strings.FeedbackMessageSuccessTitle,
                Message = Resources.Strings.FeedbackMessagSuccessMessage
            });
        }