public ActionResult AddMcq(McqViewModel collection) { //return Json(collection, JsonRequestBehavior.AllowGet); Mcq mcq = new Mcq() { ExamId = collection.ExamId, SubjectId = collection.SubjectId, ChapterId = collection.ChapterId, Question = collection.Question.ToString(), OptionA = collection.OptionA.ToString(), OptionB = collection.OptionB.ToString(), OptionC = collection.OptionC.ToString(), OptionD = collection.OptionD.ToString(), CorrectOption = collection.CorrectOption.ToString(), UpVotes = 5, DownVotes = 0, Status = "approve", EntryDate = DateTime.Now, }; DBEnt db = new DBEnt(); db.Submissions.Add(new Submission() { UserID = User.Identity.GetUserId(), McqId = mcq.Id }); db.Mcqs.Add(mcq); db.SaveChanges(); Alerts.addMcq = true; return(RedirectToAction("allMcq", "Admin")); }
public ActionResult allMcq() { List <Mcq> mcqs = (new DBEnt()).Mcqs.Where(x => x.Status == "approve").ToList <Mcq>(); List <McqViewModel> mcqview = new List <McqViewModel>(); foreach (Mcq i in mcqs) { McqViewModel obj = new McqViewModel() { Id = i.Id, Question = i.Question, OptionA = i.OptionA, OptionB = i.OptionB, OptionC = i.OptionC, OptionD = i.OptionD, CorrectOption = i.CorrectOption, Exam = getExamType(i.ExamId), ChapterId = Convert.ToInt32(i.ChapterId), SubjectId = Convert.ToInt32(i.SubjectId), Upvotes = Convert.ToInt32(i.UpVotes), Downvotes = Convert.ToInt32(i.DownVotes), Status = i.Status, Subject = mcqSubject(i.Id), Chapter = mcqChapter(i.Id) }; mcqview.Add(obj); } return(View(mcqview)); }
//Open Source Submission public ActionResult addOpenSpurceMcq(McqViewModel collection) { Mcq mcq = new Mcq() { ExamId = collection.ExamId, SubjectId = collection.SubjectId, ChapterId = collection.ChapterId, Question = collection.Question, OptionA = collection.OptionA, OptionB = collection.OptionB, OptionC = collection.OptionC, OptionD = collection.OptionD, CorrectOption = collection.CorrectOption, UpVotes = 5, DownVotes = 0, Status = "pending", EntryDate = DateTime.Now, }; string userId = User.Identity.GetUserId().ToString(); DBEnt db = new DBEnt(); db.Mcqs.Add(mcq); db.Submissions.Add(new Submission() { UserID = User.Identity.GetUserId(), McqId = mcq.Id }); db.SaveChanges(); Alerts.openSubmit = true; return(RedirectToAction("Index", "Front")); }
public ActionResult startSubjectExam(long?id) { DBEnt db = new DBEnt(); List <Mcq> subjectMcq = db.Mcqs.Where(x => x.ChapterId == id).ToList <Mcq>(); List <McqViewModel> m = new List <McqViewModel>(); foreach (Mcq i in subjectMcq) { McqViewModel obj = new McqViewModel() { Id = i.Id, Question = i.Question, OptionA = i.OptionA, OptionB = i.OptionB, OptionC = i.OptionC, OptionD = i.OptionD, CorrectOption = i.CorrectOption, Exam = getExamType(i.ExamId), Subject = mcqSubject(i.Id), Chapter = mcqChapter(i.Id) }; m.Add(obj); } ViewData["mcq"] = m; return(View()); }
public ActionResult mcqApi() { DBEnt db = new DBEnt(); var mcqs = db.Mcqs.ToList <Mcq>(); List <McqViewModel> m = new List <McqViewModel>(); foreach (Mcq i in mcqs) { McqViewModel obj = new McqViewModel() { Id = i.Id, Question = i.Question, OptionA = i.OptionA, OptionB = i.OptionB, OptionC = i.OptionC, OptionD = i.OptionD, CorrectOption = i.CorrectOption, Exam = getExamType(i.ExamId), Subject = mcqSubject(i.Id), Chapter = mcqChapter(i.Id) }; m.Add(obj); } return(Json(m, JsonRequestBehavior.AllowGet)); }
public ActionResult startExam(long id) { DBEnt db = new DBEnt(); List <ExamSubject> subjectList = db.ExamSubjects.Where(x => x.ExamId == id).ToList <ExamSubject>(); List <Mcq> mcqs = db.Mcqs.Where(x => x.ExamId == id).Where(x => x.Status == "approve").ToList <Mcq>(); List <McqViewModel> m = new List <McqViewModel>(); int mcqCount = 0; Random ran = new Random(); List <Mcq> mcq_1 = new List <Mcq>(); List <int> innn = new List <int>(); foreach (ExamSubject i in subjectList) { mcqCount = 0; while (mcqCount < i.NoOfMcq && mcqCount < mcqs.Count) { List <Mcq> mcq = mcqs.Where(x => x.SubjectId == i.SubjectId).ToList <Mcq>(); int index = ran.Next(0, mcq.Count); innn.Add(index); if (!mcq_1.Contains(mcq[index])) { mcq_1.Add(mcq[index]); mcqCount++; } } } foreach (Mcq i in mcq_1) { McqViewModel obj = new McqViewModel() { Id = i.Id, Question = i.Question, OptionA = i.OptionA, OptionB = i.OptionB, OptionC = i.OptionC, OptionD = i.OptionD, CorrectOption = i.CorrectOption, Exam = getExamType(i.ExamId), Subject = mcqSubject(i.Id), Chapter = mcqChapter(i.Id) }; m.Add(obj); } List <McqViewModel> sortedMCQ = m.OrderBy(x => x.Subject).ToList <McqViewModel>(); ViewData["mcqs"] = m; return(View()); }
public ActionResult editMcq(long id, McqViewModel collection) { DBEnt db = new DBEnt(); var mcq = db.Mcqs.Where(x => x.Id == id).FirstOrDefault(); mcq.Question = collection.Question; mcq.OptionA = collection.OptionA; mcq.OptionB = collection.OptionB; mcq.OptionC = collection.OptionC; mcq.OptionD = collection.OptionD; mcq.CorrectOption = collection.CorrectOption; db.SaveChanges(); Alerts.mcqupdated = true; return(RedirectToAction("allMcq", "Admin")); }