public static TFQLog getTFQLogFromData(TFQLogData tfqlData) { TFQLog tfql = new TFQLog(); tfql.ActivityName = tfqlData.ActivityName; tfql.expID = tfqlData.expID; tfql.id = tfqlData.id; tfql.isMainActivity = tfqlData.isMainActivity; tfql.RoomId = tfqlData.RoomId; tfql.question = tfqlData.question; tfql.explaination = tfqlData.explaination; tfql.correctAnswerBool = tfqlData.correctAnswerBool; tfql.counterFalse = tfqlData.counterFalse; tfql.counterTrue = tfqlData.counterTrue; tfql.studentsAnswers = new List<AnswerByPhone>(); if (tfqlData.studentsAnswers != null) { foreach (AnswerByPhoneData abpData in tfqlData.studentsAnswers) { tfql.studentsAnswers.Add(getAnswerByPhoneFromData(abpData)); } } return tfql; }
// GET: Teacher/Dashboard1 public ActionResult Dashboard1(long id) { TeacherData teacherData = rsContext.getTeacher(User.Identity.Name); RoomData roomData = rsContext.getRoom(teacherData.RoomId); roomData.updateCurrentActivityId(0); rsContext.SaveChanges(); // Save activity log ActivityData actData = rsContext.getActivity(id); if (actData is TrueFalseQuestionData) { TFQLogData tfqlData = new TFQLogData((TrueFalseQuestionData)actData, DateTime.Now); rsContext.addActivityLog(tfqlData); ((TrueFalseQuestionData)actData).reset(); rsContext.SaveChanges(); } else if (actData is AmericanQuestionData) { AmericanLogData aqlData = new AmericanLogData((AmericanQuestionData)actData, DateTime.Now); rsContext.addActivityLog(aqlData); ((AmericanQuestionData)actData).reset(); rsContext.SaveChanges(); } else if (actData is ShortAnswerQuestionData) { SALogData saqlData = new SALogData((ShortAnswerQuestionData)actData, DateTime.Now); rsContext.addActivityLog(saqlData); rsContext.SaveChanges(); } else { ActiveExperimentData activeExpData = rsContext.getActiveExperiment(id); List<StudentData> studentsInRoom = rsContext.getStudentsByTeacher(roomData.id); foreach (StudentData studentData in studentsInRoom) { studentData.GroupID = 0; } ExperimentData expData = (ExperimentData) rsContext.getActivity(activeExpData.ExpID); expData.ActiveExpID = 0; //rsContext.addActiveExpLog(activeExpData); //TODO rsContext.SaveChanges(); } return RedirectToDashboard(); }