Ejemplo n.º 1
0
        public QuizVersion FindQuizVersionFromUsersAnswer(string courseId, Guid slideId, string userId)
        {
            var firstUserAnswer = db.UserQuizzes.FirstOrDefault(x => x.UserId == userId && x.SlideId == slideId && !x.isDropped);

            if (firstUserAnswer == null)
            {
                return(null);
            }

            /* If we know version which user has answered*/
            if (firstUserAnswer.QuizVersion != null)
            {
                return(firstUserAnswer.QuizVersion);
            }

            /* If user's version is null, show first created version for this slide ever */
            var quizzesRepo = new QuizzesRepo(db);

            return(quizzesRepo.GetFirstQuizVersion(courseId, slideId));
        }
Ejemplo n.º 2
0
		public async Task<UserQuiz> AddUserQuiz(string courseId, bool isRightAnswer, string itemId, string quizId, Guid slideId, string text, string userId, DateTime time, int quizBlockScore, int quizBlockMaxScore)
		{
			var quizzesRepo = new QuizzesRepo(db);
			var currentQuizVersion = quizzesRepo.GetLastQuizVersion(courseId, slideId);
			var userQuiz = new UserQuiz
			{
				CourseId = courseId,
				SlideId = slideId,
				QuizVersionId = currentQuizVersion.Id,
				IsRightAnswer = isRightAnswer,
				ItemId = itemId,
				QuizId = quizId,
				Text = text,
				Timestamp = time,
				UserId = userId,
				QuizBlockScore = quizBlockScore,
				QuizBlockMaxScore = quizBlockMaxScore
			};
			db.UserQuizzes.Add(userQuiz);
			await db.SaveChangesAsync();
			return userQuiz;
		}
Ejemplo n.º 3
0
        public async Task <UserQuiz> AddUserQuiz(string courseId, bool isRightAnswer, string itemId, string quizId, Guid slideId, string text, string userId, DateTime time, int quizBlockScore, int quizBlockMaxScore)
        {
            var quizzesRepo        = new QuizzesRepo(db);
            var currentQuizVersion = quizzesRepo.GetLastQuizVersion(courseId, slideId);
            var userQuiz           = new UserQuiz
            {
                CourseId          = courseId,
                SlideId           = slideId,
                QuizVersionId     = currentQuizVersion.Id,
                IsRightAnswer     = isRightAnswer,
                ItemId            = itemId,
                QuizId            = quizId,
                Text              = text,
                Timestamp         = time,
                UserId            = userId,
                QuizBlockScore    = quizBlockScore,
                QuizBlockMaxScore = quizBlockMaxScore
            };

            db.UserQuizzes.Add(userQuiz);
            await db.SaveChangesAsync();

            return(userQuiz);
        }
Ejemplo n.º 4
0
		public QuizVersion FindQuizVersionFromUsersAnswer(string courseId, Guid slideId, string userId)
		{
			var firstUserAnswer = db.UserQuizzes.FirstOrDefault(x => x.UserId == userId && x.SlideId == slideId && !x.isDropped);

			if (firstUserAnswer == null)
				return null;

			/* If we know version which user has answered*/
			if (firstUserAnswer.QuizVersion != null)
				return firstUserAnswer.QuizVersion;

			/* If user's version is null, show first created version for this slide ever */
			var quizzesRepo = new QuizzesRepo(db);
			return quizzesRepo.GetFirstQuizVersion(courseId, slideId);
		}