Ejemplo n.º 1
0
        public async Task <ActionResult> MinefieldQuiz(QuizViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("quiz", new { id = viewModel.QuizId, seoName = viewModel.SEOName }));
            }

            string currentUserId = User.Identity.GetUserId();

            var profile = await ProfileService.GetProfileAsync(currentUserId);

            // loop through questions and record answers
            var result = await TriviaService.RecordAnsweredMinefieldQuestionAsync(
                currentUserId,
                viewModel.MinefieldQuestion.MinefieldQuestionId,
                viewModel.MinefieldQuestion.Answers);

            if (result.Succeeded)
            {
                int count = await TriviaService.SetQuizAsCompletedAsync(currentUserId, viewModel.QuizId, result.CorrectAnswerCount);
            }

            TempData["TagsAwardedCount"]        = 0;
            TempData["DidUserJustCompleteQuiz"] = true;

            return(RedirectToAction("quiz", new { id = viewModel.QuizId, seoName = viewModel.SEOName }));
        }