示例#1
0
        public ActionResult Navigation(Guid quizId, Guid testId)
        {
            bl_QuestionGroup       bl_group = new bl_QuestionGroup();
            List <ps_PartViewItem> model    = new List <ps_PartViewItem>();

            for (byte i = 1; i <= 8; i++)
            {
                model.Add(new ps_PartViewItem
                {
                    PartName = String.Format("Part{0}", i),
                    TestId   = testId,
                    Groups   = bl_group.GetByPartId(quizId, i)
                });
            }

            bl_Answer blAnswer = new bl_Answer();

            ViewBag.Done   = blAnswer.GetNumberOfDone(testId);
            ViewBag.TestId = testId;

            //get the rest time
            bl_Test blTest   = new bl_Test();
            var     test     = blTest.GetById(testId);
            double  restTime = (test.StartTime.AddHours(2) - DateTime.Now).TotalSeconds;

            ViewBag.Minute = Math.Round(restTime / 60, 0) - 1;
            ViewBag.Second = Math.Round(restTime % 60, 0);
            return(View("_Navigation", model));
        }
示例#2
0
        public ActionResult History()
        {
            bl_Test bl_test = new bl_Test();
            var     model   = bl_test.GetByUserId(ps_Membership.GetUser().UserId);

            return(View(model));
        }
示例#3
0
        public ActionResult View(Guid groupId, Guid testId)
        {
            bl_Test          bl_test     = new bl_Test();
            bl_QuestionGroup bl_group    = new bl_QuestionGroup();
            bl_Question      bl_question = new bl_Question();
            bl_Answer        bl_answer   = new bl_Answer();

            var test  = bl_test.GetById(testId);
            var time  = test.StartTime.AddHours(2) - DateTime.Now;
            var group = new ps_Group();

            group.Group           = bl_group.GetById(groupId);
            group.Group.Paragraph = HttpUtility.HtmlDecode(group.Group.Paragraph);
            group.QuestionList    = bl_question.GetByGroupId(groupId);

            ViewBag.QuizId       = group.Group.QuizId;
            ViewBag.GroupId      = group.Group.QuestionGroupId;
            ViewBag.TestId       = testId;
            ViewBag.TimeLeft     = String.Format("{0}h{1}m{2}s", time.Hours, time.Minutes, time.Seconds);
            ViewBag.QuestionDone = bl_answer.GetQuestionDone(testId).Count;
            double Timeab = time.TotalSeconds;

            ViewBag.Time = Timeab;

            return(View(group));
        }
示例#4
0
        //[HttpGet]
        //public JsonResult Change(Guid testID, Guid questionID, byte answer = 0)
        //{
        //    bl_Test bl_test = new bl_Test();
        //    bl_Answer bl_answer = new bl_Answer();
        //    var test = bl_test.GetById(testID);

        //    var time = test.StartTime.AddHours(2) - DateTime.Now;
        //    double timedb = time.TotalSeconds;
        //    if (timedb > 0)
        //    {
        //        bl_answer.Modify(testID, questionID, answer);

        //        return Json(
        //            new { timedb },
        //            JsonRequestBehavior.AllowGet);
        //    }
        //    else
        //    {
        //        return Json(
        //            new { timedb },
        //            JsonRequestBehavior.AllowGet);
        //    }
        //}

        public ActionResult _ViewTop10(Guid quizId)
        {
            bl_Test bl_test = new bl_Test();
            var     top10   = bl_test.GetTop10(quizId);

            return(View(top10));
        }
示例#5
0
        public ActionResult Submit(Guid testId)
        {
            bl_Test blTest = new bl_Test();
            var     mark   = ps_PageHelpers.GetMark(testId);

            blTest.UpdateMark(testId, mark);

            return(RedirectToAction("result", new { testId = testId }));
        }
示例#6
0
        public ActionResult RunNav(Guid testId)
        {
            bl_Test          bl_test  = new bl_Test();
            bl_QuestionGroup bl_group = new bl_QuestionGroup();

            Guid quizId  = bl_test.GetById(testId).QuizId;
            Guid groupId = bl_group
                           .GetByPartId(quizId, 1).OrderBy(m => m.Order)
                           .First().QuestionGroupId;

            return(RedirectToAction("Run", new { groupId = groupId, testId = testId }));
        }
示例#7
0
        public static int GetMark(Guid testId)
        {
            int mark = 0;

            mark += Helpers.ps_PageHelpers.GetMark_Listen(testId);
            mark += Helpers.ps_PageHelpers.GetMark_Read(testId);

            bl_Test blTest = new bl_Test();

            blTest.UpdateMark(testId, mark);

            return(mark);
        }
示例#8
0
        public ActionResult Result(Guid testId)
        {
            bl_Test   blTest   = new bl_Test();
            bl_Quiz   blQuiz   = new bl_Quiz();
            bl_Answer blAnswer = new bl_Answer();
            ps_Result model    = new ps_Result();

            model.AnswerList = blAnswer
                               .GetByTestId(testId)
                               .OrderBy(m => m.bq_Question.Order)
                               .ToList();

            var test = blTest.GetById(testId);
            var quiz = blQuiz.GetById(test.QuizId);

            model.TestModel = test;
            model.QuizModel = quiz;
            return(View(model));
        }
示例#9
0
        public ActionResult Start(Guid quizId)
        {
            bl_Test     bl_test     = new bl_Test();
            bl_Question bl_question = new bl_Question();
            bl_Answer   bl_answer   = new bl_Answer();

            var testId       = bl_test.Create(ps_Membership.GetUser().UserId, quizId);
            var questionList = bl_question.GetByQuizId(quizId);

            foreach (var item in questionList)
            {
                bl_answer.Modify(
                    testId,
                    item.QuestionId,
                    0);
            }

            return(RedirectToAction("Publishing", "Quiz", new { quizId = quizId, testId = testId }));
        }
示例#10
0
        public ActionResult Run(Guid groupId, Guid testId)
        {
            bl_Test          bl_test     = new bl_Test();
            bl_QuestionGroup bl_group    = new bl_QuestionGroup();
            bl_Question      bl_question = new bl_Question();
            bl_Answer        bl_answer   = new bl_Answer();

            var test  = bl_test.GetById(testId);
            var time  = test.StartTime.AddHours(2) - DateTime.Now;
            var group = new ps_Group();

            group.Group  = bl_group.GetById(groupId);
            group.QuizId = group.Group.QuizId;
            group.TestId = testId;

            group.Group.Paragraph = HttpUtility.HtmlDecode(group.Group.Paragraph);
            group.QuestionList    = bl_question.GetByGroupId(groupId);
            group.AnswerList      = bl_answer.GetByGroupId(groupId, testId);
            return(View(group));
        }