Example #1
0
        public async Task <IActionResult> CreateAsync(string id, string examId, string answer)
        {
            var user = await this.userManager.GetUserAsync(this.User);

            var exams = this.examUsersService.Exams(user.Id);

            if (!exams.Contains(examId))
            {
                ErrorViewModelTekst model = new ErrorViewModelTekst()
                {
                    Tekst = "NE ste dobaven kum izpita!"
                };
                return(this.View("Error", model));
            }

            var exam = this.examsService.GetById <ExamViewModel>(int.Parse(examId));
            var questionFromExamIdM = exam.QuestionMultiSelects.Select(t => t.Id).ToList();

            if (exam == null || !questionFromExamIdM.Contains(int.Parse(id)) || !exam.IsOpen)
            {
                ErrorViewModelTekst model = new ErrorViewModelTekst()
                {
                    Tekst = "Connot be answered!"
                };
                return(this.View("Error", model));
            }

            await this.answerMultiSelectsService.CreateAsync(id, answer, user.Id);

            return(this.RedirectToAction("ById", "Exams", new { id = examId }));
        }
Example #2
0
        public async Task <IActionResult> CreateAsync(string name, string description)
        {
            if (!this.examsService.CheckForQuestions())
            {
                ErrorViewModelTekst model = new ErrorViewModelTekst()
                {
                    Tekst = "Няма свободни въпроси със отворен отговор, създайте нови въпроси. "
                };
                return(this.View("Error", model));
            }

            if (!this.examsService.CheckForQuestionsMulti())
            {
                ErrorViewModelTekst model = new ErrorViewModelTekst()
                {
                    Tekst = "Няма свободни въпроси с отговор с избор, създайте нови въпроси. "
                };
                return(this.View("Error", model));
            }

            var examId = await this.examsService.CreateAsync(name, description);

            return(this.RedirectToAction("ById", new { id = examId }));
        }