Ejemplo n.º 1
0
        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"));
        }
Ejemplo n.º 2
0
        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));
        }
Ejemplo n.º 3
0
        //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"));
        }
Ejemplo n.º 4
0
        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());
        }
Ejemplo n.º 5
0
        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));
        }
Ejemplo n.º 6
0
        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());
        }
Ejemplo n.º 7
0
        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"));
        }