public static SALog getShortAnswerQuestionLogFromData(SALogData saqLogData) { SALog saqLog = new SALog(); saqLog.ActivityName = saqLogData.ActivityName; saqLog.expID = saqLogData.expID; saqLog.id = saqLogData.id; saqLog.RoomId = saqLogData.RoomId; saqLog.question = saqLogData.question; saqLog.explaination = saqLogData.explaination; saqLog.correctAnswerString = saqLogData.correctAnswerString; saqLog.studentsAnswers = new List<AnswerByPhone>(); if (saqLogData.studentsAnswers != null) { foreach (AnswerByPhoneData abpData in saqLogData.studentsAnswers) { saqLog.studentsAnswers.Add(getAnswerByPhoneFromData(abpData)); } } return saqLog; }
// 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(); }