Exemple #1
0
        public void ResultAnotherConstructorTest()
        {
            //Arrange
            int expectedScore = 1;

            Exam     exam     = new Exam("SomeExam", 1, 3, 1);
            Student  student  = new Student("Ivan", "Ivanov", "Studak", "Zachotka", "TEST", "ivanov");
            Question question = new Question("Some question", "Correct answer", new List <String> {
                "Answer1", "Answer2"
            });
            AnsweredQuestion        answeredQuestion  = new AnsweredQuestion(question, "Correct answer");
            List <AnsweredQuestion> answeredQuestions = new List <AnsweredQuestion>();

            //Act
            Result result = new Result(student, expectedScore, answeredQuestions);

            //Assert
            Assert.AreEqual(answeredQuestion.correctAnswer, answeredQuestion.actualAnswer);
            Assert.AreEqual(expectedScore, result.score);
        }
        public ActionResult Create(ScreeningTest screeningtest)
        {
            if (ModelState.IsValid)
            {
                db.ScreeningTests.Add(screeningtest);

                //create a new record of questions answered by the user
                AnsweredQuestion question = new AnsweredQuestion
                {
                    username    = User.Identity.Name.ToString(),
                    QuestionId  = screeningtest.id,
                    DateCreated = DateTime.Now
                };
                db.AnsweredQuestions.Add(question);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(screeningtest));
        }
Exemple #3
0
        public void ResultAnotherConstructorTest()
        {
            //Arrange
            int           expectedId       = 1;
            string        expectedQuestion = "Question";
            string        expectedAnswer   = "Correct answer";
            List <string> falseAnswers     = new List <String> {
                "Answer1", "Answer2"
            };
            Question question = new Question(expectedId, expectedQuestion, expectedAnswer, falseAnswers);

            //Act
            AnsweredQuestion answeredQuestion = new AnsweredQuestion(question, expectedAnswer);

            //Assert
            Assert.AreEqual(expectedQuestion, answeredQuestion.question);
            Assert.AreEqual(expectedAnswer, answeredQuestion.correctAnswer);
            Assert.AreEqual(expectedAnswer, answeredQuestion.actualAnswer);
            Assert.AreEqual(falseAnswers[0], answeredQuestion.falseAnswers[0]);
            Assert.AreEqual(falseAnswers[1], answeredQuestion.falseAnswers[1]);
        }
        private QuestionModel CreateHeuristicModelWithAnswers(AnsweredQuestion qa, List <Answer> answers)
        {
            var hwa = new QuestionModel()
            {
                Id             = qa.Id,
                HeuristicText  = qa.HeuristicText,
                HeuristicTitle = qa.HeuristicTitle,
                Answers        = answers.Where(x => x.QuestionAnswerId == qa.Id).Select(a => new AnswerModel()
                {
                    Id             = a.Id,
                    Description    = a.Description,
                    Level          = a.Level,
                    Images         = a.Images.Select(x => CreateImageModel(x)).ToList(),
                    Location       = a.Location,
                    Recommendation = a.Recommendation,
                    Answered       = a.Answered
                }).ToList()
            };

            return(hwa);
        }
Exemple #5
0
 private void CountDown()
 {
     if (_totalSeconds.TotalSeconds == 0)
     {
         //do something after hitting 0, in this example it just stops/resets the timer
         StopTimerCommand();
         var answeredQuestion = new AnsweredQuestion()
         {
             Question      = CurrentQuestion.Question,
             CorrectAnswer = CurrentQuestion.CorrectAnswer,
             IsCorrect     = false,
             UserAnswer    = string.Empty
         };
         SaveTestResult(answeredQuestion);
         ChooseNewQuestion();
     }
     else
     {
         TotalSeconds = _totalSeconds.Subtract(new TimeSpan(0, 0, 0, 1));
     }
 }
Exemple #6
0
        public async Task <ProcessResult> UpdateRankingAfterUserAnswerAsync(AnsweredQuestion answeredQuestion)
        {
            var question = await _questionRepository.FindAsync(answeredQuestion.QuestionId);

            var answer = await _answerRepository.FindAsync(answeredQuestion.AnswerId);

            if (!await _questionService.DoesAnswerBelongToQuestionAsync(answeredQuestion.AnswerId, answeredQuestion.QuestionId, answeredQuestion.TrackId))
            {
                return(new ProcessResult {
                    Message = "A resposta não é uma das respostas possíveis para a questão.", Result = false
                });
            }

            bool didUserCompleteTrack = await _questionService.HasUserFinishedTrackAsync(answeredQuestion.UserId, question.TrackId);

            if (answer.IsAnswerCorrect || didUserCompleteTrack)
            {
                var trackRanking = (await _trackRankingRepository
                                    .FindAsync(tr => tr.TrackId == question.TrackId && tr.UserId == answeredQuestion.UserId))
                                   .FirstOrDefault();

                if (answer.IsAnswerCorrect)
                {
                    trackRanking.Points += (int)question.QuestionLevel;
                }
                if (didUserCompleteTrack)
                {
                    trackRanking.CompletedTime = DateTime.UtcNow - trackRanking.StartedAtUtc;
                }

                _trackRankingRepository.Update(trackRanking);
                await _unitOfWork.CommitAsync();
            }

            return(new ProcessResult {
                Result = true
            });
        }
        /// <summary>
        /// Функция считывает тайтл варианта ответа, который был отмечен, и записывает его в новый объект -
        /// отвеченный вопрос, добавляя к массиву отвеченных
        /// </summary>
        private void CheckQuestion()
        {
            if (_currentQuestion == null)
            {
                return;
            }
            var answer = new AnsweredQuestion
            {
                AskQuestion   = _currentQuestion.AskQuestion,
                CorrectAnswer = _currentQuestion.CorrectAnswer
            };

            //------------------------
            foreach (var rb in _radioButtonsList)
            {
                var tb = (TextBlock)rb.Content;
                if (rb.IsChecked != null && rb.IsChecked.Value)
                {
                    answer.ChosenAnswer = tb.Text;
                }
            }
            answer.IsItCorrect = answer.ChosenAnswer == answer.CorrectAnswer;
            _answered.Add(answer);
        }
        protected void btnSave_clicked(object sender, System.EventArgs e)
        {
            List <AnsweredQuestion> ansLst = new List <AnsweredQuestion>();


            foreach (RepeaterItem item in repSurvey.Items)
            {
                Panel           pnl    = item.FindControl("pnlAnswer") as Panel;
                CheckBoxList    chkLst = item.FindControl("chkLstAnswer") as CheckBoxList;
                RadioButtonList rdoLst = item.FindControl("rdoLstAnswer") as RadioButtonList;
                Repeater        rep    = item.FindControl("rep") as Repeater;

                string questionType = pnl.Attributes["QuestionType"].ToString();
                int    qid          = Int32.Parse(pnl.Attributes["QuestionID"].ToString());

                List <int> ansIDLst = new List <int>();

                if (questionType.ToLower() == "RadioButton".ToLower())
                {
                    foreach (ListItem li in rdoLst.Items)
                    {
                        if (li.Selected)
                        {
                            AnsweredQuestion ansQ = new AnsweredQuestion();

                            ansQ.UserID = UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID;
                            ansQ.QID    = qid;
                            ansQ.AID    = Int32.Parse(li.Value);

                            ansLst.Add(ansQ);
                        }
                    }
                }
                else
                if (questionType.ToLower() == "CheckBox".ToLower())
                {
                    foreach (ListItem li in chkLst.Items)
                    {
                        if (li.Selected)
                        {
                            AnsweredQuestion ansQ = new AnsweredQuestion();

                            ansQ.UserID = UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID;
                            ansQ.QID    = qid;
                            ansQ.AID    = Int32.Parse(li.Value);

                            ansLst.Add(ansQ);
                        }
                    }
                }
                else
                {
                    foreach (RepeaterItem repItem in rep.Items)
                    {
                        DropDownList dd = repItem.FindControl("ddRating") as DropDownList;

                        if (dd.SelectedIndex > 0)
                        {
                            AnsweredQuestion ansQ = new AnsweredQuestion();

                            ansQ.UserID = UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID;
                            ansQ.QID    = qid;
                            ansQ.AID    = Int32.Parse(dd.Attributes["AID"].ToString());
                            ansQ.Answer = dd.SelectedValue;

                            ansLst.Add(ansQ);
                        }
                    }
                }
            }

            quesRepos.ClearAnswers(UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID, screenID); //clear all answers first
            quesRepos.Save(ansLst);                                                                           //save answers
        }
        protected void btnNext_clicked(object sender, System.EventArgs e)
        {
            if (isReadOnly)
            {
                screenID++;

                if (screenID == 4)
                {
                    Response.Redirect("~/Default.aspx");
                }
                else
                {
                    Response.Redirect(string.Format("~/Physician/AssesSurvey.aspx?SCREENID={0}&{1}={2}",
                                                    screenID.ToString(),
                                                    Constants.READONLY,
                                                    this.isReadOnly ? "1" : "0"));
                }
            }

            else
            {
                List <AnsweredQuestion> ansLst   = new List <AnsweredQuestion>();
                PhysicianRepository     phyRepos = new PhysicianRepository();

                if (Page.IsValid)
                {
                    foreach (RepeaterItem item in repSurvey.Items)
                    {
                        Panel pnl = item.FindControl("pnlAnswer") as Panel;

                        CheckBoxList chkLst = item.FindControl("chkLstAnswer") as CheckBoxList;

                        RadioButtonList rdoLst = item.FindControl("rdoLstAnswer") as RadioButtonList;

                        Repeater rep = item.FindControl("rep") as Repeater;

                        string questionType = pnl.Attributes["QuestionType"].ToString();

                        int qid = Int32.Parse(pnl.Attributes["QuestionID"].ToString());

                        List <int> ansIDLst = new List <int>();

                        if (questionType.ToLower() == "RadioButton".ToLower())
                        {
                            foreach (ListItem li in rdoLst.Items)
                            {
                                if (li.Selected)
                                {
                                    AnsweredQuestion ansQ = new AnsweredQuestion();

                                    ansQ.UserID = UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID;
                                    ansQ.QID    = qid;
                                    ansQ.AID    = Int32.Parse(li.Value);

                                    ansLst.Add(ansQ);
                                }
                            }
                        }
                        else
                        if (questionType.ToLower() == "CheckBox".ToLower())
                        {
                            foreach (ListItem li in chkLst.Items)
                            {
                                if (li.Selected)
                                {
                                    AnsweredQuestion ansQ = new AnsweredQuestion();

                                    ansQ.UserID = UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID;
                                    ansQ.QID    = qid;
                                    ansQ.AID    = Int32.Parse(li.Value);

                                    ansLst.Add(ansQ);
                                }
                            }
                        }
                        else
                        {
                            foreach (RepeaterItem repItem in rep.Items)
                            {
                                DropDownList dd = repItem.FindControl("ddRating") as DropDownList;

                                if (dd.SelectedIndex > 0)
                                {
                                    AnsweredQuestion ansQ = new AnsweredQuestion();

                                    ansQ.UserID = UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID;
                                    ansQ.QID    = qid;
                                    ansQ.AID    = Int32.Parse(dd.Attributes["AID"].ToString());
                                    ansQ.Answer = dd.SelectedValue;

                                    ansLst.Add(ansQ);
                                }
                            }
                        }
                    }

                    quesRepos.ClearAnswers(UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID, screenID); //clear all answers first
                    quesRepos.Save(ansLst);                                                                           //save answers


                    if (screenID == 3)
                    {
                        phyRepos.UpdateAssesmentInformation(HttpContext.Current.User.Identity.Name, 1);

                        phyRepos.UpdateAssesmentSurveyScreenID(UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID, 4); //make it readonly

                        UserHelper.ReloadUser(HttpContext.Current.Session);

                        Master.LoadPortalVisibility();

                        Response.Redirect("~/default.aspx");
                    }
                    else
                    {
                        screenID++;

                        phyRepos.UpdateAssesmentSurveyScreenID(UserHelper.GetLoggedInUser(HttpContext.Current.Session).UserID, screenID);

                        Response.Redirect(string.Format("~/Physician/AssesSurvey.aspx?SCREENID={0}&{1}={2}",
                                                        screenID.ToString(),
                                                        Constants.READONLY,
                                                        this.isReadOnly ? "1" : "0"));
                    }
                }
            }
        }
Exemple #10
0
        /// <summary>
        /// Main view model of the game. Does all the navigation and communicate with game model
        /// </summary>
        /// <param name="navigationService"></param>
        public GameViewModel(INavigationService navigationService)
        {
            ///create visual states
            visualStates = new List <string>();
            visualStates.Add("Player1");
            visualStates.Add("Player2");
            visualStates.Add("Player3");
            visualStates.Add("Player4");


            VisualStateName = "Start";
            //create navigation serices
            _navigationService = navigationService;
            _currentGame       = new Game();
            notes = new ObservableCollection <string>();

            //create players
            players = new ObservableCollection <PlayerViewModel>();
            players.Add(new PlayerViewModel(_currentGame.ActivePlayers[0]));
            players.Add(new PlayerViewModel(_currentGame.ActivePlayers[1]));
            players.Add(new PlayerViewModel(_currentGame.ActivePlayers[2]));
            players.Add(new PlayerViewModel(_currentGame.ActivePlayers[3]));

            //get all teh cards in the game
            allCards = GetAllCardsinGame();


            ///initialize the command
            NextQuestion = new RelayCommand(() =>
            {
                NextQuestionMethod();
            });


            QuestionsPageNavigate = new RelayCommand(() =>
            {
                _navigationService.NavigateTo(
                    new Uri(
                        string.Format(ViewModelLocator.QuestionsPage),
                        UriKind.Relative));
            });


            CardManipulationPageNavigate = new RelayCommand(() =>
            {
                _navigationService.NavigateTo(
                    new Uri(
                        string.Format(ViewModelLocator.CardManipulationPage),
                        UriKind.Relative));
            });


            NotesNavigatePage = new RelayCommand(() =>
            {
                _navigationService.NavigateTo(
                    new Uri(
                        string.Format(ViewModelLocator.NotesPage),
                        UriKind.Relative));
            });

            DeleteNote = new RelayCommand <int>((int selected) =>
            {
                if (selected >= 0 && selected < notes.Count)
                {
                    notes.RemoveAt(selected);
                }
            });


            SaveNote = new RelayCommand <string>((string s) =>
            {
                string g = s.Trim();
                if (g != string.Empty)
                {
                    notes.Add(g);
                    _navigationService.GoBack();
                }
            });

            AddNoteNavigatePage = new RelayCommand(() =>
            {
                _navigationService.NavigateTo(
                    new Uri(
                        string.Format(ViewModelLocator.AddNotesPage),
                        UriKind.Relative));
            });

            GuessCard = new RelayCommand(GuessCardMethod);

            CheckInput = new RelayCommand <int>(CheckInputCmd);

            System.Diagnostics.Debug.WriteLine("In game constr");


            if (IsInDesignMode)
            {
                sampleAq = new AnsweredQuestion(new Question(5, "On how many racks do you see three consecutive numbers? ”"), _currentGame.ActivePlayers[0], "3", 3);
            }

            RaisePropertyChanged("GetOpponent1");
        }
        public async Task <IHttpActionResult> Get(int?id)
        {
            var user   = _db.Users.Find(User.Identity.GetUserId());
            var myQuiz = await _db.Quizs.Include("QuestionsList").FirstOrDefaultAsync(d => d.Id == id);

            var myAnswers = await _db.Answers.Where(d => d.Student.UserName == user.UserName && d.Quiz.Id == id).ToListAsync();

            var myQuestions = myAnswers.Select(answer => answer.Question).ToList();

            if (myQuiz.QuestionsList.Count > myAnswers.Count)
            {
                var notFound = true;
                var temp     = 0;
                while (notFound)
                {
                    var random = new Random();
                    temp = random.Next(myQuiz.QuestionsList.Count);
                    if (myQuestions.All(d => d.Id != myQuiz.QuestionsList[temp].Id))
                    {
                        notFound = false;
                    }
                }

                var nextQuestion = new AnsweredQuestion()
                {
                    Description = myQuiz.QuestionsList[temp].Description,
                    QuestionId  = myQuiz.QuestionsList[temp].Id,
                    QuizId      = myQuiz.Id,
                    UserName    = user.UserName,
                    TheType     = myQuiz.QuestionsList[temp].Type,
                    QuizName    = myQuiz.Name,
                    //StartTime = (myQuiz.Length * 1000000 * 60).ToString(),
                    StartTime  = DateTime.Now.AddMinutes(myQuiz.Length).Year + "/" + DateTime.Now.AddMinutes(myQuiz.Length).Month + "/" + DateTime.Now.AddMinutes(myQuiz.Length).Day + " " + (DateTime.Now.AddMinutes(myQuiz.Length).Hour + ":" + DateTime.Now.AddMinutes(myQuiz.Length).Minute),
                    TimeLength = myQuiz.Length
                };

                if (nextQuestion.TheType == QuestionType.Multy)
                {
                    var answersList   = new List <AnswerToAnswer>();
                    var answersString = myQuiz.QuestionsList[temp].Questions;
                    int counter       = 0;
                    while (!String.IsNullOrEmpty(answersString))
                    {
                        answersString = answersString.Trim();
                        answersList.Add(new AnswerToAnswer()
                        {
                            AnswerId = counter,
                            Name     = answersString.Substring(0, answersString.IndexOf(';')),
                            Selected = false
                        });
                        counter++;
                        answersString = answersString.IndexOf(';') < answersString.Length + 1
                            ? answersString.Substring(answersString.IndexOf(';') + 1,
                                                      answersString.Length - answersString.IndexOf(';') - 1)
                            : "";
                    }

                    nextQuestion.Answers = answersList;
                }

                if (nextQuestion.TheType == QuestionType.Radio)
                {
                    var answersList   = new List <RadioAnswer>();
                    var answersString = myQuiz.QuestionsList[temp].Questions;
                    int counter       = 0;
                    while (!String.IsNullOrEmpty(answersString))
                    {
                        answersString = answersString.Trim();
                        answersList.Add(new RadioAnswer()
                        {
                            Value     = answersString.Substring(0, answersString.IndexOf(';')),
                            GroupName = "questionGroup",
                            Id        = counter,
                            Selected  = false
                        });
                        counter++;
                        answersString = answersString.IndexOf(';') < answersString.Length + 1
                            ? answersString.Substring(answersString.IndexOf(';') + 1,
                                                      answersString.Length - answersString.IndexOf(';') - 1)
                            : "";
                    }

                    nextQuestion.RadioAnswers = answersList;
                }

                if (nextQuestion.TheType == QuestionType.Value)
                {
                    nextQuestion.ValueAnswer = "";
                }

                return(this.Ok(nextQuestion));
            }
            else
            {
                return(this.NotFound());
            }
        }
 public void Delete(AnsweredQuestion answeredquestion)
 {
     _iDAnsweredQuestion.Delete(EAnsweredQuestion(answeredquestion));
 }
        public AnsweredQuestion Update(AnsweredQuestion answeredquestion)
        {
            var eAnsweredQuestion = _iDAnsweredQuestion.Update(EAnsweredQuestion(answeredquestion));

            return(AnsweredQuestion(eAnsweredQuestion));
        }
Exemple #14
0
        public async Task <bool> HasUserFinishedTrackAsync(AnsweredQuestion answeredQuestion)
        {
            var trackId = (await _questionRepository.FindAsync(answeredQuestion.QuestionId))?.TrackId ?? 0;

            return(await HasUserFinishedTrackAsync(answeredQuestion.UserId, trackId));
        }
Exemple #15
0
        public ActionResult ValidateAnswer(Question question)
        {
            try {
                var          identity  = (ClaimsIdentity)User.Identity;
                List <Claim> claims    = identity.Claims.ToList();
                string       userEmail = claims.Where(c => c.Type == "preferred_username").First().Value;
                bool         correct   = false;
                string       hint      = string.Empty;
                if (question.Excercise == "Hackagram" && question.QuestionNumber == 2)
                {
                    //Check for HTML and Javascript
                    if (question.Answer.Contains("<script>") && question.Answer.Contains("</script>"))
                    {
                        correct = true;
                        //Add SQL call to insert  for questions answered.
                        var checkIfExists = (from q in adminContext.AnsweredQuestions
                                             where q.excercise == question.Excercise && q.questionNumber == question.QuestionNumber && q.email == userEmail
                                             select q.email).FirstOrDefault();
                        if (checkIfExists == null)
                        {
                            var qAnswered = new AnsweredQuestion(question.Excercise, userEmail, question.QuestionNumber, question.ID);
                            adminContext.AnsweredQuestions.Add(qAnswered);
                            adminContext.SaveChanges();
                        }
                    }
                }
                else
                {
                    string answerFromDB = (from q in adminContext.Questions
                                           where q.Excercise == question.Excercise && q.QuestionNumber == question.QuestionNumber
                                           select q.Answer).First();

                    if (question.Answer == answerFromDB)
                    {
                        correct = true;
                        //Add SQL call to insert  for questions answered.
                        var checkIfExists = (from q in adminContext.AnsweredQuestions
                                             where q.excercise == question.Excercise && q.questionNumber == question.QuestionNumber && q.email == userEmail
                                             select q.email).FirstOrDefault();
                        if (checkIfExists == null)
                        {
                            var qAnswered = new AnsweredQuestion(question.Excercise, userEmail, question.QuestionNumber, question.ID);
                            adminContext.AnsweredQuestions.Add(qAnswered);
                            adminContext.SaveChanges();
                        }
                    }
                    else
                    {
                        hint = (from q in adminContext.Questions
                                where q.Excercise == question.Excercise && q.QuestionNumber == question.QuestionNumber
                                select q.Hint).First();
                    }
                }

                if (correct)
                {
                    return(Json(new Value("success", question.QuestionNumber)));
                }
                else
                {
                    return(Json(new Value("failure", question.QuestionNumber, hint, question.Answer)));
                }
            }
            catch (Exception e)
            {
                return(Json(new Value("error", question.QuestionNumber, "Unauthenticated", question.Answer)));
            }
        }
Exemple #16
0
 public bool AllHasGuessed(AnsweredQuestion question, Players players)
 {
     return(question.AllHasGuessed(players));
 }
Exemple #17
0
 public void CollectGuess(AnsweredQuestion question, Answer guess)
 {
     question.Guess(guess);
 }
        public async Task <ActionResult> ActiveExam(AnsweredQuestion model, FormCollection formCollection)
        {
            var user = _db.Users.Find(User.Identity.GetUserId());

            if (ModelState.IsValid)
            {
                //var questions = _db.Answers.Include("Question").Where(d => d.Student.UserName == user.UserName && d.Quiz.Id == model.QuizId).Select(answer => answer.Question).ToList();
                //if (!questions.Any(d => d.Id == model.QuestionId))
                //{
                var newAnswer = new Answer()
                {
                    AnswerTime = DateTime.Now,
                    Question   = _db.Questions.Find(model.QuestionId),
                    Quiz       = _db.Quizs.Find(model.QuizId),
                    Student    = _db.Users.Find(User.Identity.GetUserId()),
                };

                if (model.Answers != null)
                {
                    foreach (var answer in model.Answers.Where(answer => answer.Selected))
                    {
                        newAnswer.Answers += answer.Name + ";";
                    }
                }

                if (model.RadioAnswers != null)
                {
                    newAnswer.Answers += Request.Form["Radio"] + ";";
                }

                if (model.ValueAnswer != null)
                {
                    newAnswer.Answers = model.ValueAnswer;
                }

                newAnswer.Correctness = newAnswer.Answers == _db.Questions.Find(model.QuestionId).Answers;

                _db.Answers.Add(newAnswer);
                _db.SaveChanges();
                //}
            }


            var myQuiz = await _db.Quizs.Include("QuestionsList").FirstOrDefaultAsync(d => d.Id == model.QuizId);

            var myAnswers = await _db.Answers.Where(d => d.Student.UserName == user.UserName && d.Quiz.Id == model.QuizId).ToListAsync();

            var myQuestions = myAnswers.Select(answer => answer.Question).ToList();

            if (myQuiz.QuestionsList.Count > myAnswers.Count)
            {
                var notFound = true;
                var temp     = 0;
                while (notFound)
                {
                    var random = new Random();
                    temp = random.Next(myQuiz.QuestionsList.Count);
                    if (myQuestions.All(d => d.Id != myQuiz.QuestionsList[temp].Id))
                    {
                        notFound = false;
                    }
                }
                var question = myQuiz.QuestionsList[temp];
                model.Description = question.Description;
                model.QuestionId  = question.Id;
                model.QuizId      = myQuiz.Id;
                model.UserName    = user.UserName;
                model.TheType     = question.Type;
                model.QuizName    = myQuiz.Name;


                if (model.TheType == QuestionType.Multy)
                {
                    var answersList   = new List <AnswerToAnswer>();
                    var answersString = question.Questions;
                    int counter       = 0;
                    while (!String.IsNullOrEmpty(answersString))
                    {
                        answersString = answersString.Trim();
                        answersList.Add(new AnswerToAnswer()
                        {
                            AnswerId = counter,
                            Name     = answersString.Substring(0, answersString.IndexOf(';')),
                            Selected = false
                        });
                        counter++;
                        answersString = answersString.IndexOf(';') < answersString.Length + 1
                            ? answersString.Substring(answersString.IndexOf(';') + 1,
                                                      answersString.Length - answersString.IndexOf(';') - 1)
                            : "";
                    }

                    model.Answers = answersList;
                }

                if (model.TheType == QuestionType.Radio)
                {
                    var answersList   = new List <RadioAnswer>();
                    var answersString = question.Questions;
                    int counter       = 0;
                    while (!String.IsNullOrEmpty(answersString))
                    {
                        answersString = answersString.Trim();
                        answersList.Add(new RadioAnswer()
                        {
                            Value     = answersString.Substring(0, answersString.IndexOf(';')),
                            GroupName = "questionGroup",
                            Id        = counter,
                            Selected  = false
                        });
                        counter++;
                        answersString = answersString.IndexOf(';') < answersString.Length + 1
                            ? answersString.Substring(answersString.IndexOf(';') + 1,
                                                      answersString.Length - answersString.IndexOf(';') - 1)
                            : "";
                    }

                    model.RadioAnswers = answersList;
                }

                if (model.TheType == QuestionType.Value)
                {
                    model.ValueAnswer = "";
                }

                return(View(model));
            }
            else
            {
                return(RedirectToAction("ActiveExamToCheck", new { id = model.QuizId, startTime = model.StartTime }));
            }
        }
 public void InsertAnsweredQuestion(AnsweredQuestion answeredQuestion)
 {
     AnsweredQuestionDAL.InsertAnsweredQuestion(answeredQuestion);
 }