next method

dynamic next()

Implementation

next() {
  currentQuestin++;
  if (activeQuestion != null && activeQuestion!.QuestionTypeId != 1) {
    if (selectedOptions.length > 0) {
      answered++;
      if (isAnswerRight == 1)
        totalEarnedMark = (totalEarnedMark + singleQuestionMark);
      answerList.add(Answer(
          AnswerId: UtilRF.getUUID(),
          QuestionId: activeQuestion!.QuestionId,
          QuizId: quiz!.QuizId,
          SessionId: sessionId,
          IsCorrect: isAnswerRight));
    } else {
      answerList.add(Answer(
          AnswerId: UtilRF.getUUID(),
          QuestionId: activeQuestion!.QuestionId,
          QuizId: quiz!.QuizId,
          SessionId: sessionId,
          IsCorrect: 0));
    }
  } else {
    if (activeQuestion != null) {
      var isExist = answerList
          .where(
              (element) => element.QuestionId == activeQuestion!.QuestionId)
          .isNotEmpty;
      if (!isExist)
        answerList.add(Answer(
            AnswerId: UtilRF.getUUID(),
            QuestionId: activeQuestion!.QuestionId,
            QuizId: quiz!.QuizId,
            SessionId: sessionId,
            IsCorrect: 0));
    }
  }
  selectedOptions.clear();
  isAnswerRight = 0;
  if (questions.length > currentQuestin) {
    activeQuestion = questions[currentQuestin];
    //activeOptions = activeQuestion.Options;
    singleQuestionMark = activeQuestion!.Marks!.toDouble();
    return activeQuestion;
  } else
    return null;
}