Ejemplo n.º 1
0
 private Train AddAttemptsToFreeTrain(FreeTrain train, IEnumerable <TaskAnswerBindingModel> answers)
 {
     //add new attempts in free train for each answer
     answers.ForEach(x =>
     {
         var attempt        = GenerateNewEmptyAttemptByTaskId(x.id);
         attempt.UserAnswer = x.answer;
         attempt            = addExtraInfoForType(attempt, x);
         train.TaskAttempts.Add(attempt);
     }
                     );
     return(train);
 }
Ejemplo n.º 2
0
        private Train GetTrainByType(string trainType, User user)
        {
            Train train;

            if (trainType.ToLower().Equals("free"))
            {
                train            = new FreeTrain();
                train.Exam       = user.CurrentExam;
                train.StartTime  = DateTime.Now;
                train.FinishTime = DateTime.Now;

                _dbContext.Trains.Add(train);
            }
            else
            {
                if (trainType.ToLower().Equals("exam"))
                {
                    //searching unfinished ege trains
                    train =
                        user.Trains.OfType <ExamTrain>()
                        .TrainsOfUsersCurrentExamType()
                        .FirstOrDefault(x => x.FinishTime == null);
                    if (train != null)
                    {
                        train.FinishTime = DateTime.Now;
                    }
                    else
                    {
                        return(null);
                    }
                }
                else
                {
                    return(null);
                }
            }
            return(train);
        }