Esempio n. 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Request.QueryString["kithilophocsinhvien"] == null)
                {
                    Response.Redirect("/thi/DanhSachKiThi");
                    return;
                }
                int iKiThiLopHocSinhVienID = -1;
                if (!int.TryParse(Request.QueryString["kithilophocsinhvien"], out iKiThiLopHocSinhVienID))
                {
                    Response.Redirect("/thi/DanhSachKiThi");
                    return;
                }
                if (!m_KiThiLopHocSinhViens.ContainsKey(iKiThiLopHocSinhVienID))
                {
                    Response.Redirect("/thi/DanhSachKiThi");
                    return;
                }
                web.model.KiThiLopHocSinhVien KiThiLopHocSinhVien = m_KiThiLopHocSinhViens[iKiThiLopHocSinhVienID];
                string strMoTa = "<div style='padding-left:20%;width: 80%;text-align: center;font-weight: bold;font-size: 12px;color: red;padding-top: 20px;'>";
                strMoTa += string.Format("<table style='border-collapse: separate; margin:10px;'>");

                strMoTa += string.Format("<tr><td style='color:red;font-weight: bold;'>Mã SV: </td><td>{0}</td>", Request.QueryString["ma"]);
                strMoTa += string.Format("<td style='color:red;font-weight: bold;'>Tên sinh viên: </td><td>{0}</td></tr>", Request.QueryString["ten"]);
                if (KiThiLopHocSinhVien.Status.Equals(3) || KiThiLopHocSinhVien.Status.Equals(4) || KiThiLopHocSinhVien.Status.Equals(5))
                {
                    strMoTa += string.Format("<tr><td style='color:red;font-weight: bold;'>Mã đề: </td><td>{0}</td>", KiThiLopHocSinhVien.MaDe);
                    strMoTa += string.Format("<td style='color:red;font-weight: bold;'>Ngày nộp bài: </td><td>{0:dd/MM/yyyy - hh:mm:ss}</td></tr>", KiThiLopHocSinhVien.NgayGioBatDau);
                    strMoTa += string.Format("<tr><td style='color:red;font-weight: bold;'>Tổng thời gian thi: </td><td>{0} phút</td>", KiThiLopHocSinhVien.TongThoiGianThi);
                    strMoTa += string.Format("<td style='color:red;font-weight: bold;'>Tổng thời gian còn lại: </td><td>{0} phút {1} giây</td></tr>", KiThiLopHocSinhVien.TongThoiGianConLai / 60, KiThiLopHocSinhVien.TongThoiGianConLai % 60);
                    strMoTa += string.Format("<tr><td style='color:red;font-weight: bold;'>Điểm: </td><td>{0:N2}</td>", KiThiLopHocSinhVien.Diem);
                    strMoTa += string.Format("<td style='color:red;font-weight: bold;'>Địa chỉ nộp bài: </td><td>{0}</td></tr>", "");
                }
                strMoTa += string.Format("<tr><td style='color:red;font-weight: bold;'>Ghi chú: </td><td colspan='3'>{0}</td></tr>", KiThiLopHocSinhVien.Mota);
                strMoTa += "</table></div>";

                KiThiLopHocSinhVien.Mota = strMoTa;
                //KiThiLopHocSinhVien.Mota = string.Format("Bài thi được {0:N2} điểm", float.Parse(dtKiThiLopHocSinhVien.Rows[i]["Diem"].ToString()));

                string strScript = "<script>";

                if (KiThiLopHocSinhVien.Status.Equals(1) || KiThiLopHocSinhVien.Status.Equals(2) || KiThiLopHocSinhVien.Status.Equals(8) ||
                    KiThiLopHocSinhVien.Status.Equals(6) || KiThiLopHocSinhVien.Status.Equals(9))
                {
                    divMenu.Visible = false;
                    writeLog("Canh Bao", "Ket qua thi voi ma de " + KiThiLopHocSinhVien.MaDe + " là: " + KiThiLopHocSinhVien.Mota);
                    //divContent.InnerHtml = string.Format("<div style='width: 80%;text-align: center;font-weight: bold;font-size: 20px;color: red;padding-top: 20px;'>{0}</div>", KiThiLopHocSinhVien.Mota);
                    divContent.InnerHtml = KiThiLopHocSinhVien.Mota;
                }
                else
                {
                    divMenu.Visible = true;

                    // status=2: Chuan bi thi
                    // status=3: Dang thi
                    // status=4: Da thi xong
                    // status=5: Thi tiep
                    // status=6: thi lai
                    if (KiThiLopHocSinhVien.Status.Equals(3))
                    {
                        // Co the la truong hop refresh
                        TimeSpan ts = DateTime.Now.Subtract(KiThiLopHocSinhVien.NgayGioBatDau);
                        int      iTongThoiGianConLai = KiThiLopHocSinhVien.TongThoiGianConLai - (ts.Hours * 60 * 60 + ts.Minutes * 60 + ts.Seconds);
                        KiThiLopHocSinhVien.TongThoiGianConLai = iTongThoiGianConLai;
                    }
                    strScript += string.Format("var iIDKiThiLopHocSinhVien={0};", KiThiLopHocSinhVien.KiThi_LopHoc_SinhVien);

                    List <web.model.CauHoi> lsCauHois = JsonConvert.DeserializeObject <List <web.model.CauHoi> >(KiThiLopHocSinhVien.NoiDungDeThi);
                    int    iSoCauHoi         = lsCauHois.Count;
                    string strHtmlMenuCauHoi = "<table style='width:90%; margin: 0 auto;' border='1px'>";
                    int    iSoCauHoi6        = iSoCauHoi / 6;
                    if (iSoCauHoi > 0)
                    {
                        for (int i = 0; i < iSoCauHoi / 6; i++)
                        {
                            strHtmlMenuCauHoi += "<tr>";
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", (i * 6) + 1);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", (i * 6) + 2);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", (i * 6) + 3);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", (i * 6) + 4);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", (i * 6) + 5);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", (i * 6) + 6);
                            strHtmlMenuCauHoi += "</tr>";
                        }
                    }
                    if (iSoCauHoi - iSoCauHoi6 * 6 > 0)
                    {
                        strHtmlMenuCauHoi += "<tr>";
                        for (int i = iSoCauHoi6 * 6 + 1; i <= iSoCauHoi; i++)
                        {
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;'>{0}</td>", i);
                        }
                        for (int i = iSoCauHoi + 1; i <= iSoCauHoi6 * 6 + 6; i++)
                        {
                            strHtmlMenuCauHoi += string.Format("<td></td>");
                        }
                        strHtmlMenuCauHoi += "</tr>";
                    }
                    strHtmlMenuCauHoi += "</table>";

                    divMenuCauHoi.InnerHtml = strHtmlMenuCauHoi;
                    string strOutScript = "";
                    divContent.InnerHtml = getHtmlDeThi(KiThiLopHocSinhVien, out strOutScript);
                    //strScript += strOutScript;
                    divProcessData.InnerHtml = string.Format("<script>{0}</script>", strOutScript);
                    m_KiThiLopHocSinhVien    = KiThiLopHocSinhVien;
                    //divContent.InnerHtml = KiThiLopHocSinhVien.MaDe + "---" + KiThiLopHocSinhVien.NoiDungDeThi + "---" + KiThiLopHocSinhVien.DapAn;
                }
                strScript            += "</script>";
                divInitData.InnerHtml = strScript;
            }
        }
Esempio n. 2
0
        public string getHtmlDeThi(web.model.KiThiLopHocSinhVien KiThiLopHocSinhVien, out string strScript)
        {
            List <web.model.DapAn> dapAn;

            web.model.DapAn dapAn1;
            strScript = "function InitData() {";
            string strScriptTemp = "";
            string strHtml       = string.Format("<div style='width: 100%; text-align:center; padding-bottom: 10px; padding-top: 10px; font-weight: bold; color:red;'>{0}</div>", KiThiLopHocSinhVien.Mota);
            List <web.model.CauHoi> lsCauHois = JsonConvert.DeserializeObject <List <web.model.CauHoi> >(KiThiLopHocSinhVien.NoiDungDeThi);
            //List<web.model.DapAn> lsDapAns = JsonConvert.DeserializeObject<List<web.model.DapAn>>(KiThiLopHocSinhVien.DapAn);
            string strAnswares = KiThiLopHocSinhVien.BaiLam;
            List <web.model.DapAn> lsAnswares = Utils.convertListDapAnFromAnswares(strAnswares);
            List <web.model.DapAn> lsDapAns   = JsonConvert.DeserializeObject <List <web.model.DapAn> >(KiThiLopHocSinhVien.DapAn);
            int l  = 0;
            int l1 = 0;

            strHtml += string.Format("<div style='width: 100%; text-align:left; padding-bottom: 2px; padding-top: 2px;padding-left: 10px;padding-right: 10px;'>");
            foreach (web.model.CauHoi cauhoi in lsCauHois)
            {
                l++;
                dapAn = lsAnswares.FindAll(x => x.CauHoiID.Equals(cauhoi.CauHoiID));
                //string strMatch = dapAn != null ? dapAn.Match : "";
                //strMatch = ";" + strMatch + ";";

                dapAn1 = lsDapAns.Find(x => x.CauHoiID.Equals(cauhoi.CauHoiID));
                //string strMatchDapAn = dapAn1 != null ? dapAn1.Match : "";
                //strMatchDapAn = ";" + strMatchDapAn + ";";

                string strType = cauhoi.Type;
                switch (strType)
                {
                case "SC":
                case "MC":
                case "TQ":
                case "FQ":
                    strHtml   += getDivRowHtmlNormal(cauhoi, dapAn, dapAn1, l, l * 20, l.ToString(), "blue", out strScriptTemp);
                    strScript += strScriptTemp;
                    #region loai binh thuong
                    #endregion
                    break;

                case "TL":
                    strHtml += string.Format("<div id='divCauHoi_{0}' style='width: 100%;color:blue; text-align:left; padding-bottom: 2px; padding-top: 2px;'><span style='font-weight: bold;'>Câu {0}: </span><span>{1}</span></div>", l, HttpUtility.HtmlDecode(cauhoi.Content));
                    if (!(cauhoi.Image.ToUpper().Equals("") || cauhoi.Image.ToUpper().Equals("NULL")))
                    {
                        strHtml += string.Format("<div style='width: 100%;text-align:center; padding-bottom: 2px; padding-top: 2px;'><image src='/Portals/{0}/{1}' hight='100px;'></image></div>", this.PortalId, cauhoi.Image);
                    }
                    if (cauhoi.ChildCauHois != null && cauhoi.ChildCauHois.Count > 0)
                    {
                        l1 = 0;
                        foreach (web.model.CauHoi cauhoi1 in cauhoi.ChildCauHois)
                        {
                            l1++;
                            strHtml += "<div style='padding-left:10px;'>";
                            dapAn    = lsAnswares.FindAll(x => x.CauHoiID.Equals(cauhoi1.CauHoiID));

                            dapAn1     = lsDapAns.Find(x => x.CauHoiID.Equals(cauhoi1.CauHoiID));
                            strHtml   += getDivRowHtmlNormal(cauhoi1, dapAn, dapAn1, l, l * 20 + l1, string.Format("{0}.{1}", l, l1), "green", out strScriptTemp);
                            strHtml   += "</div>";
                            strScript += strScriptTemp;
                        }
                    }
                    break;
                }
            }
            strHtml += "</div>";
            // strScript += " alert (' hi hi');};";
            strScript += " };";
            return(strHtml);
        }
Esempio n. 3
0
        public string getHtmlDeThi(web.model.KiThiLopHocSinhVien KiThiLopHocSinhVien, out string strScript)
        {
            List <web.model.DapAn> dapAn;

            web.model.DapAn dapAn1;
            strScript = "function InitData() {";
            string strScriptTemp = "";
            string strHtml       = string.Format("<div style='width: 100%; text-align:center; padding-bottom: 10px; padding-top: 10px; font-weight: bold; color:red;'>{0}</div>", KiThiLopHocSinhVien.Mota);
            List <web.model.CauHoi> lsCauHois = JsonConvert.DeserializeObject <List <web.model.CauHoi> >(KiThiLopHocSinhVien.NoiDungDeThi);
            //List<web.model.DapAn> lsDapAns = JsonConvert.DeserializeObject<List<web.model.DapAn>>(KiThiLopHocSinhVien.DapAn);
            string strAnswares = KiThiLopHocSinhVien.BaiLam;
            List <web.model.DapAn> lsAnswares = Utils.convertListDapAnFromAnswares(strAnswares);
            List <web.model.DapAn> lsDapAns   = JsonConvert.DeserializeObject <List <web.model.DapAn> >(KiThiLopHocSinhVien.DapAn);
            int l  = 0;
            int l1 = 0;

            strHtml += string.Format("<div style='width: 100%; text-align:left; padding-bottom: 2px; padding-top: 2px;padding-left: 10px;padding-right: 10px;'>");
            foreach (web.model.CauHoi cauhoi in lsCauHois)
            {
                l++;
                dapAn = lsAnswares.FindAll(x => x.CauHoiID.Equals(cauhoi.CauHoiID));
                //string strMatch = dapAn != null ? dapAn.Match : "";
                //strMatch = ";" + strMatch + ";";

                dapAn1 = lsDapAns.Find(x => x.CauHoiID.Equals(cauhoi.CauHoiID));
                //string strMatchDapAn = dapAn1 != null ? dapAn1.Match : "";
                //strMatchDapAn = ";" + strMatchDapAn + ";";

                string strType = cauhoi.Type;
                switch (strType)
                {
                case "SC":
                case "MC":
                case "TQ":
                case "FQ":
                    strHtml   += getDivRowHtmlNormal(cauhoi, dapAn, dapAn1, l, l * 20, l.ToString(), "blue", out strScriptTemp);
                    strScript += strScriptTemp;
                    #region loai binh thuong

                    /*
                     * strHtml += string.Format("<div id='divCauHoi_{0}' style='width: 100%;color:blue; text-align:left; padding-bottom: 2px; padding-top: 2px;'><span style='font-weight: bold;'>Câu {0} (<span style='color:red;'>{1} điểm</span>): </span><span>{2}</span></div>", l, cauhoi.Mark, cauhoi.Content);
                     * int iCount = cauhoi.SoCauTraLoi;
                     * int i = 1;
                     * while (i < (iCount + 1))
                     * {
                     *  switch (i)
                     *  {
                     *      case 1:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M1)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M1 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M1)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M1, cauhoi.A1, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M1, cauhoi.A1, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 2:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M2)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M2 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M2)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M2, cauhoi.A2, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M2, cauhoi.A2, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 3:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M3)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M3 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M3)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M3, cauhoi.A3, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M3, cauhoi.A3, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 4:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M4)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M4 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M4)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M4, cauhoi.A4, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M4, cauhoi.A4, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 5:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M5)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M5 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M5)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M5, cauhoi.A5, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M5, cauhoi.A5, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 6:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M6)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M6 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M6)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M6, cauhoi.A6, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M6, cauhoi.A6, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 7:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M7)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M7 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M7)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M7, cauhoi.A7, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M7, cauhoi.A7, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 8:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M8)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M8 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M8)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M8, cauhoi.A8, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M8, cauhoi.A8, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 9:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M9)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M9 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M9)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M9, cauhoi.A9, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M9, cauhoi.A9, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *      case 10:
                     *          if (strMatch.Contains(string.Format(";{0};", cauhoi.M10)))
                     *          {
                     *              strScript += "$('#tdMenuCauHoi_" + l + "').css({ \"color\": \"blue\" });$('#id_" + cauhoi.CauHoiID + "_" + cauhoi.M10 + "').prop(\"checked\", true);";
                     *          }
                     *          if (strMatchDapAn.Contains(string.Format(";{0};", cauhoi.M10)))
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;color:red;'>{2} (Là đáp án)</span></div>", l, cauhoi.M10, cauhoi.A10, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          else
                     *          {
                     *              strHtml += string.Format("<div style='width: 100%; text-align:left; padding-top: 1px;'><span><input type='checkbox' name='nCauHoi_{4}' value='vcauhoi_{0}' id='id_{3}_{1}'></span><span style='padding-left: 5px;padding-right: 5px;'>{2}</span></div>", l, cauhoi.M10, cauhoi.A10, cauhoi.CauHoiID, strType.Equals("MC") ? l * 20 + i : l * 20);
                     *          }
                     *          break;
                     *  }
                     *  i++;
                     * }*/
                    #endregion
                    break;

                case "TL":
                    strHtml += string.Format("<div id='divCauHoi_{0}' style='width: 100%;color:blue; text-align:left; padding-bottom: 2px; padding-top: 2px;'><span style='font-weight: bold;'>Câu {0}: </span><span>{1}</span></div>", l, HttpUtility.HtmlDecode(cauhoi.Content));
                    if (!(cauhoi.Image.ToUpper().Equals("") || cauhoi.Image.ToUpper().Equals("NULL")))
                    {
                        strHtml += string.Format("<div style='width: 100%;text-align:center; padding-bottom: 2px; padding-top: 2px;'><image src='/Portals/{0}/{1}' hight='100px;'></image></div>", this.PortalId, cauhoi.Image);
                    }
                    if (cauhoi.ChildCauHois != null && cauhoi.ChildCauHois.Count > 0)
                    {
                        l1 = 0;
                        foreach (web.model.CauHoi cauhoi1 in cauhoi.ChildCauHois)
                        {
                            l1++;
                            strHtml += "<div style='padding-left:10px;'>";
                            dapAn    = lsAnswares.FindAll(x => x.CauHoiID.Equals(cauhoi1.CauHoiID));

                            dapAn1     = lsDapAns.Find(x => x.CauHoiID.Equals(cauhoi1.CauHoiID));
                            strHtml   += getDivRowHtmlNormal(cauhoi1, dapAn, dapAn1, l, l * 20 + l1, string.Format("{0}.{1}", l, l1), "green", out strScriptTemp);
                            strHtml   += "</div>";
                            strScript += strScriptTemp;
                        }
                    }
                    break;
                }
            }
            strHtml += "</div>";
            // strScript += " alert (' hi hi');};";
            strScript += " };";
            return(strHtml);
        }
Esempio n. 4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Request.QueryString["kithilophocsinhvien"] == null)
                {
                    Response.Redirect("/thi/DanhSachKiThi");
                    return;
                }
                int iKiThiLopHocSinhVienID = -1;
                if (!int.TryParse(Request.QueryString["kithilophocsinhvien"], out iKiThiLopHocSinhVienID))
                {
                    Response.Redirect("/thi/DanhSachKiThi");
                    return;
                }
                if (!m_KiThiLopHocSinhViens.ContainsKey(iKiThiLopHocSinhVienID))
                {
                    Response.Redirect("/thi/DanhSachKiThi");
                    return;
                }
                web.model.KiThiLopHocSinhVien KiThiLopHocSinhVien = m_KiThiLopHocSinhViens[iKiThiLopHocSinhVienID];
                //Da thong tin chung
                divTenKiThi.InnerHtml   = KiThiLopHocSinhVien.TenKiThi;
                divThoiGian.InnerHtml   = string.Format("{0} phút", KiThiLopHocSinhVien.TongThoiGianThi);
                divPhongThi.InnerHtml   = KiThiLopHocSinhVien.TenBlockHoc;
                divMaThiSinh.InnerHtml  = m_SinhVien.MaSV;
                divTenThiSinh.InnerHtml = m_SinhVien.Ho + " " + m_SinhVien.Ten;
                divCMT.InnerHtml        = m_SinhVien.CMT;

                string strJsThamSo = string.Format(@"var strCtl='{0}';", txtAnswares.ClientID.Replace("txtAnswares", ""));
                string strScript   = "<script>";
                strScript += strJsThamSo;

                /*
                 * 1. Mơi
                 * 2. Đang thi
                 * 3. Tam dung thi
                 * 4. Thi xong
                 * 5. Huy thi
                 * 6. Thi lai
                 */
                strScript += string.Format("var checkOnbeforeunload={0};", 0);
                switch (KiThiLopHocSinhVien.Status)
                {
                case 1:
                case 6:
                    //Tao moi bo de
                    DataTable dtDeThi = web.data.dnn_NuceThi_DeThi.getRandomDeByBoDe(KiThiLopHocSinhVien.BoDeID);
                    if (dtDeThi.Rows.Count > 0)
                    {
                        int    iDeThi          = int.Parse(dtDeThi.Rows[0]["DeThiID"].ToString());
                        string strMa           = dtDeThi.Rows[0]["Ma"].ToString();
                        string strNoiDungDeThi = dtDeThi.Rows[0]["NoiDungDeThi"].ToString();
                        string strDapAn        = dtDeThi.Rows[0]["DapAn"].ToString();
                        // cap nhat vao csdl
                        web.data.dnn_NuceThi_KiThi_LopHoc_SinhVien.update_dethi(KiThiLopHocSinhVien.KiThi_LopHoc_SinhVien, iDeThi, strNoiDungDeThi, strDapAn, KiThiLopHocSinhVien.TongThoiGianThi, KiThiLopHocSinhVien.TongThoiGianThi * 60, strMa, Utils.GetIPAddress(), 2);
                        // cap nhat vao session
                        KiThiLopHocSinhVien.DeThiID            = iDeThi;
                        KiThiLopHocSinhVien.MaDe               = strMa;
                        KiThiLopHocSinhVien.NoiDungDeThi       = strNoiDungDeThi;
                        KiThiLopHocSinhVien.DapAn              = strDapAn;
                        KiThiLopHocSinhVien.Status             = 2;
                        KiThiLopHocSinhVien.TongThoiGianConLai = KiThiLopHocSinhVien.TongThoiGianThi * 60;
                    }
                    else
                    {
                        writeLog("Canh Bao", "Khong lay duoc de random cho bo de" + KiThiLopHocSinhVien.BoDeID);
                    }
                    break;

                case 2:
                case 3:
                    KiThiLopHocSinhVien.Status = 2;
                    break;

                default:
                    break;
                }
                if (KiThiLopHocSinhVien.Status < 3)
                {
                    KiThiLopHocSinhVien.NgayGioBatDau = DateTime.Now;
                    m_KiThiLopHocSinhViens[iKiThiLopHocSinhVienID] = KiThiLopHocSinhVien;
                    Session[Utils.session_kithi_lophoc_sinhvien]   = m_KiThiLopHocSinhViens;
                    List <web.model.CauHoi> lsCauHois = JsonConvert.DeserializeObject <List <web.model.CauHoi> >(KiThiLopHocSinhVien.NoiDungDeThi);
                    int iSoCauHoi = lsCauHois.Count;

                    strScript += string.Format("var totalTime={0};", KiThiLopHocSinhVien.TongThoiGianConLai);
                    strScript += string.Format("var iIDKiThiLopHocSinhVien={0};", KiThiLopHocSinhVien.KiThi_LopHoc_SinhVien);

                    spMaDe.InnerText       = KiThiLopHocSinhVien.MaDe;
                    divTongSoCau.InnerText = iSoCauHoi.ToString();
                    //
                    string strHtmlMenuCauHoi = "<table style='width:100%; margin: 0 auto; border-color:cornflowerblue;' border='1px'>";
                    int    iSoCauHoi6        = iSoCauHoi / 5;
                    if (iSoCauHoi6 > 0)
                    {
                        for (int i = 0; i < iSoCauHoi6; i++)
                        {
                            strHtmlMenuCauHoi += "<tr>";
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;width:20%; background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i * 5].CauHoiID, i * 5 + 1);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;width:20%;background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i * 5 + 1].CauHoiID, i * 5 + 2);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;width:20%;background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i * 5 + 2].CauHoiID, i * 5 + 3);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;width:20%;background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i * 5 + 3].CauHoiID, i * 5 + 4);
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;width:20%;background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i * 5 + 4].CauHoiID, i * 5 + 5);
                            //strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i * 6 + 5].CauHoiID, i * 6 + 6);
                            strHtmlMenuCauHoi += "</tr>";
                        }
                    }
                    if (iSoCauHoi - iSoCauHoi6 * 5 > 0)
                    {
                        strHtmlMenuCauHoi += "<tr>";
                        for (int i = iSoCauHoi6 * 5 + 1; i <= iSoCauHoi; i++)
                        {
                            strHtmlMenuCauHoi += string.Format("<td id='tdMenuCauHoi_{0}' onclick='gotocauhoi({0});' style='height: 26px;width:20%;background: rgb(230, 230, 230) none repeat scroll 0% 0%; text-align: center; font-weight: bold; padding: 3px; color: red; cursor: pointer;border-color:cornflowerblue;'><span id='sp_cauhoi_{0}'>{1}</span></td>", lsCauHois[i - 1].CauHoiID, i);
                        }
                        for (int i = iSoCauHoi + 1; i <= iSoCauHoi6 * 5 + 4; i++)
                        {
                            strHtmlMenuCauHoi += string.Format("<td style='border-color:cornflowerblue;'></td>");
                        }
                        strHtmlMenuCauHoi += "</tr>";
                    }
                    strHtmlMenuCauHoi      += "</table>";
                    divMenuCauHoi.InnerHtml = strHtmlMenuCauHoi;
                    strScript            += "</script>";
                    divInitData.InnerHtml = strScript;
                    List <web.model.DapAn> lsDapAns = Utils.convertListDapAnFromAnswares(KiThiLopHocSinhVien.BaiLam);
                    string strDanhSachCauHoi        = "";
                    string strDanhSachDapAn         = "";
                    string strCheckBoxDapAn         = "";
                    strScript = "<script>";
                    int l = 0;
                    foreach (web.model.CauHoi cauhoi in lsCauHois)
                    {
                        l++;
                        List <web.model.DapAn> dapAn = lsDapAns.FindAll(x => x.CauHoiID.Equals(cauhoi.CauHoiID));
                        string strType = cauhoi.Type;
                        switch (strType)
                        {
                        case "SC":
                        case "TQ":
                            string strOutScript = "";
                            string strOutHtml   = "";
                            string strOutHtml1  = "";
                            strDanhSachCauHoi += getItemHtmlNormal(cauhoi, dapAn, l, l * 20, l.ToString(), "blue", out strOutScript, out strOutHtml, out strOutHtml1);
                            strDanhSachDapAn  += strOutHtml;
                            strCheckBoxDapAn  += strOutHtml1;
                            strScript         += strOutScript;
                            break;

                        default: break;
                        }
                    }
                    strScript                  += "collectAnswares();</script>";
                    divRunData.InnerHtml        = strScript;
                    divDanhSachDapAn.InnerHtml  = strDanhSachDapAn;
                    divDanhSachCauHoi.InnerHtml = strDanhSachCauHoi;
                    divCheckBoxDapAn.InnerHtml  = strCheckBoxDapAn;
                }
                else
                {
                    // da thi xong hoac huy thi;
                    Response.Redirect("/Thi/DanhSachKiThi");
                }
            }
        }