public static Quiz_FillInTheBlanksDetails GetQuiz_FillInTheBlanksDetailsByFillInTheBlanksDetailsID(int FillInTheBlanksDetailsID)
 {
     Quiz_FillInTheBlanksDetails quiz_FillInTheBlanksDetails = new Quiz_FillInTheBlanksDetails();
     SqlQuiz_FillInTheBlanksDetailsProvider sqlQuiz_FillInTheBlanksDetailsProvider = new SqlQuiz_FillInTheBlanksDetailsProvider();
     quiz_FillInTheBlanksDetails = sqlQuiz_FillInTheBlanksDetailsProvider.GetQuiz_FillInTheBlanksDetailsByFillInTheBlanksDetailsID(FillInTheBlanksDetailsID);
     return quiz_FillInTheBlanksDetails;
 }
 private void showQuiz_FillInTheBlanksDetailsData()
 {
     Quiz_FillInTheBlanksDetails quiz_FillInTheBlanksDetails  = new Quiz_FillInTheBlanksDetails ();
      	quiz_FillInTheBlanksDetails = Quiz_FillInTheBlanksDetailsManager.GetQuiz_FillInTheBlanksDetailsByFillInTheBlanksDetailsID(Int32.Parse(Request.QueryString["ID"]));
      	ddlFillInTheBlanksID.SelectedValue  =quiz_FillInTheBlanksDetails.FillInTheBlanksID.ToString();
      	txtQuestionSl.Text =quiz_FillInTheBlanksDetails.QuestionSl.ToString();
      	txtAnswer.Text =quiz_FillInTheBlanksDetails.Answer.ToString();
 }
    protected void btnDeleteFillInTheBlankDetails_Click(object sender, EventArgs e)
    {
        try
        {
            List<Quiz_FillInTheBlanksDetails> fillInTheBlanksDetails = new List<Quiz_FillInTheBlanksDetails>();
            List<int> delFillInTheBlankDetailsIDs = new List<int>();

            ImageButton btnDelete = new ImageButton();
            btnDelete = (ImageButton)sender;

            GridView gvQuiz_FillInTheBlanksDetails =(GridView) ((GridViewRow)btnDelete.NamingContainer).NamingContainer;

            fillInTheBlanksDetails.Clear();
            foreach (GridViewRow dtlRow in gvQuiz_FillInTheBlanksDetails.Rows)
            {
                HiddenField hfFillInTheBlankDtlID =(HiddenField) dtlRow.FindControl("hfFillInTheBlankDtlID");
                TextBox txtAnswer = (TextBox)dtlRow.FindControl("txtAnswer");
                Quiz_FillInTheBlanksDetails fillInTheBlanksDetail = new Quiz_FillInTheBlanksDetails();
                fillInTheBlanksDetail.FillInTheBlanksID = 0;
                fillInTheBlanksDetail.FillInTheBlanksDetailsID = Convert.ToInt32(hfFillInTheBlankDtlID.Value);
                fillInTheBlanksDetail.Answer = txtAnswer.Text;

                fillInTheBlanksDetails.Add(fillInTheBlanksDetail);
            }

            int index = Convert.ToInt32(btnDelete.CommandArgument);
            fillInTheBlanksDetails.RemoveAt(index);

            GridViewRow row = (GridViewRow)btnDelete.NamingContainer;
            int fillInTheBlankDtlID = Convert.ToInt32(((HiddenField)row.FindControl("hfFillInTheBlankDtlID")).Value);
            if (fillInTheBlankDtlID > 0)
            {
                if (Session["delFillInTheBlankDetailsIDs"] == null)
                {
                    delFillInTheBlankDetailsIDs.Add(fillInTheBlankDtlID);

                    Session["delFillInTheBlankDetailsIDs"] = delFillInTheBlankDetailsIDs;
                }
                else
                    ((List<int>)Session["delFillInTheBlankDetailsIDs"]).Add(fillInTheBlankDtlID);
            }

            Session["fillInTheBlanksDetails"] = fillInTheBlanksDetails;

            gvQuiz_FillInTheBlanksDetails.DataSource = Session["fillInTheBlanksDetails"];
            gvQuiz_FillInTheBlanksDetails.DataBind();
        }
        catch (Exception ex)
        {
        }
    }
 protected void btnUpdate_Click(object sender, EventArgs e)
 {
     Quiz_FillInTheBlanksDetails quiz_FillInTheBlanksDetails = new Quiz_FillInTheBlanksDetails ();
     quiz_FillInTheBlanksDetails.FillInTheBlanksDetailsID=  int.Parse(Request.QueryString["ID"].ToString());
     quiz_FillInTheBlanksDetails.FillInTheBlanksID=  int.Parse(ddlFillInTheBlanksID.SelectedValue);
     quiz_FillInTheBlanksDetails.QuestionSl=  int.Parse(txtQuestionSl.Text);
     quiz_FillInTheBlanksDetails.Answer=  txtAnswer.Text;
     quiz_FillInTheBlanksDetails.AddedBy=  Profile.card_id;
     quiz_FillInTheBlanksDetails.AddedDate=  DateTime.Now;
     quiz_FillInTheBlanksDetails.ModifiedBy=  Profile.card_id;
     quiz_FillInTheBlanksDetails.ModifiedDate=  DateTime.Now;
     bool  resutl =Quiz_FillInTheBlanksDetailsManager.UpdateQuiz_FillInTheBlanksDetails(quiz_FillInTheBlanksDetails);
     Response.Redirect("AdminDisplayQuiz_FillInTheBlanksDetails.aspx");
 }
    protected void btnAddMore_Click(object sender, EventArgs e)
    {
        try
        {
            if (Session["fillInTheBlanksDetails"] == null)
            {
                List<Quiz_FillInTheBlanksDetails> fillInTheBlanksDetails = new List<Quiz_FillInTheBlanksDetails>();

                Quiz_FillInTheBlanksDetails fillInTheBlanksDetail = new Quiz_FillInTheBlanksDetails();

                fillInTheBlanksDetail.FillInTheBlanksDetailsID = 0;
                fillInTheBlanksDetail.Answer = txtAnswer.Text;

                fillInTheBlanksDetails.Add(fillInTheBlanksDetail);

                Session["fillInTheBlanksDetails"] = fillInTheBlanksDetails;

                gvQuiz_FillInTheBlanksQuestionDetails.DataSource = Session["fillInTheBlanksDetails"];
                gvQuiz_FillInTheBlanksQuestionDetails.DataBind();

                txtAnswer.Text = "";
            }
            else
            {

                Quiz_FillInTheBlanksDetails fillInTheBlanksDetail = new Quiz_FillInTheBlanksDetails();

                fillInTheBlanksDetail.FillInTheBlanksDetailsID = 0;
                fillInTheBlanksDetail.Answer = txtAnswer.Text;

                ((List<Quiz_FillInTheBlanksDetails>)Session["fillInTheBlanksDetails"]).Add(fillInTheBlanksDetail);

                gvQuiz_FillInTheBlanksQuestionDetails.DataSource = Session["fillInTheBlanksDetails"];
                gvQuiz_FillInTheBlanksQuestionDetails.DataBind();

                txtAnswer.Text ="";
            }
        }
        catch (Exception ex)
        {
        }
    }
 public static int InsertQuiz_FillInTheBlanksDetails(Quiz_FillInTheBlanksDetails quiz_FillInTheBlanksDetails)
 {
     SqlQuiz_FillInTheBlanksDetailsProvider sqlQuiz_FillInTheBlanksDetailsProvider = new SqlQuiz_FillInTheBlanksDetailsProvider();
     return sqlQuiz_FillInTheBlanksDetailsProvider.InsertQuiz_FillInTheBlanksDetails(quiz_FillInTheBlanksDetails);
 }
 public static bool UpdateQuiz_FillInTheBlanksDetails(Quiz_FillInTheBlanksDetails quiz_FillInTheBlanksDetails)
 {
     SqlQuiz_FillInTheBlanksDetailsProvider sqlQuiz_FillInTheBlanksDetailsProvider = new SqlQuiz_FillInTheBlanksDetailsProvider();
     return sqlQuiz_FillInTheBlanksDetailsProvider.UpdateQuiz_FillInTheBlanksDetails(quiz_FillInTheBlanksDetails);
 }
    protected void btnSaveComprehention_Click(object sender, EventArgs e)
    {
        try
        {
            string userID = Profile.card_id ;

            int comprehensionID = 0;
            Quiz_Comprehension quiz_Comprehension = new Quiz_Comprehension();
            #region "Save Comprehention Basic Data"
            if (Request.QueryString["ID"] != null)
            {
                comprehensionID = Convert.ToInt32(Request.QueryString["ID"].ToString());
                quiz_Comprehension = Quiz_ComprehensionManager.GetQuiz_ComprehensionByComprehensionID(comprehensionID);
                quiz_Comprehension.CourseID = int.Parse(ddlCourseID.SelectedValue);
                quiz_Comprehension.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
                quiz_Comprehension.ChapterID = int.Parse(ddlChapterID.SelectedValue);
                quiz_Comprehension.Comprehension = fckDesc.Value;
                quiz_Comprehension.ModifiedBy = userID;
                quiz_Comprehension.ModifiedDate = DateTime.Now;

                Quiz_ComprehensionManager.UpdateQuiz_Comprehension(quiz_Comprehension);
            }
            else
            {
                quiz_Comprehension.ComprehensionID = 0;
                quiz_Comprehension.CourseID = int.Parse(ddlCourseID.SelectedValue);
                quiz_Comprehension.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
                quiz_Comprehension.ChapterID = int.Parse(ddlChapterID.SelectedValue);
                quiz_Comprehension.Comprehension = fckDesc.Value;
                quiz_Comprehension.AddedBy = userID;
                quiz_Comprehension.AddedDate = DateTime.Now;
                quiz_Comprehension.ModifiedBy = userID;
                quiz_Comprehension.ModifiedDate = DateTime.Now;

                comprehensionID = Quiz_ComprehensionManager.InsertQuiz_Comprehension(quiz_Comprehension);
            }
            #endregion

            #region "Save true and falsess"

            for (int tI = 0; tI < gvQuiz_TrueFalse.Rows.Count; tI++)
            {
                Quiz_TrueFalse quiz_TrueFalse = new Quiz_TrueFalse();
                HiddenField hfTureFalseID = (HiddenField)gvQuiz_TrueFalse.Rows[tI].FindControl("hfTureFalseID");
                int trueFalseID = Convert.ToInt32(hfTureFalseID.Value);
                TextBox txtQuestionTitle = (TextBox)gvQuiz_TrueFalse.Rows[tI].FindControl("txtQuestionTitle");
                RadioButtonList radIsAnswer = (RadioButtonList)gvQuiz_TrueFalse.Rows[tI].FindControl("radIsAnswer");

                if (txtQuestionTitle.Text != "")
                {
                    quiz_TrueFalse.TrueFalseID = trueFalseID;
                    quiz_TrueFalse.ComprehensionID = comprehensionID;
                    quiz_TrueFalse.CourseID = int.Parse(ddlCourseID.SelectedValue);
                    quiz_TrueFalse.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
                    quiz_TrueFalse.ChapterID = int.Parse(ddlChapterID.SelectedValue);
                    quiz_TrueFalse.QuestionTitle = txtQuestionTitle.Text;
                    quiz_TrueFalse.IsDrCr = false;
                    quiz_TrueFalse.IsTrue = radIsAnswer.SelectedValue == "True" ? true : false;
                    quiz_TrueFalse.AddedBy = userID;
                    quiz_TrueFalse.AddedDate = DateTime.Now;
                    quiz_TrueFalse.ModifiedBy = userID;
                    quiz_TrueFalse.ModifiedDate = DateTime.Now;

                    if (trueFalseID > 0)
                        Quiz_TrueFalseManager.UpdateQuiz_TrueFalse(quiz_TrueFalse);
                    else
                        trueFalseID = Quiz_TrueFalseManager.InsertQuiz_TrueFalse(quiz_TrueFalse);
                }
            }

            gvQuiz_TrueFalse.DataSource = string.Empty.ToList();
            gvQuiz_TrueFalse.DataBind();

            #endregion

            #region "Save dr cr "
            for (int dI = 0; dI < gvQuiz_gvDrCr.Rows.Count; dI++)
            {
                Quiz_TrueFalse quiz_TrueFalse = new Quiz_TrueFalse();
                HiddenField hfDrCrID = (HiddenField)gvQuiz_gvDrCr.Rows[dI].FindControl("hfDrCrID");
                int trueFalseID = Convert.ToInt32(hfDrCrID.Value);
                TextBox txtQuestionTitle = (TextBox)gvQuiz_gvDrCr.Rows[dI].FindControl("txtQuestionTitle");
                RadioButtonList radIsAnswer = (RadioButtonList)gvQuiz_gvDrCr.Rows[dI].FindControl("radIsAnswer");

                if (txtQuestionTitle.Text != "")
                {
                    quiz_TrueFalse.TrueFalseID = trueFalseID;
                    quiz_TrueFalse.ComprehensionID = comprehensionID;
                    quiz_TrueFalse.CourseID = int.Parse(ddlCourseID.SelectedValue);
                    quiz_TrueFalse.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
                    quiz_TrueFalse.ChapterID = int.Parse(ddlChapterID.SelectedValue);
                    quiz_TrueFalse.QuestionTitle = txtQuestionTitle.Text;
                    quiz_TrueFalse.IsDrCr = true;
                    quiz_TrueFalse.IsTrue = radIsAnswer.SelectedValue == "True" ? true : false;
                    quiz_TrueFalse.AddedBy = userID;
                    quiz_TrueFalse.AddedDate = DateTime.Now;
                    quiz_TrueFalse.ModifiedBy = userID;
                    quiz_TrueFalse.ModifiedDate = DateTime.Now;

                    if (trueFalseID > 0)
                        Quiz_TrueFalseManager.UpdateQuiz_TrueFalse(quiz_TrueFalse);
                    else
                        trueFalseID = Quiz_TrueFalseManager.InsertQuiz_TrueFalse(quiz_TrueFalse);
                }

            }

            gvQuiz_gvDrCr.DataSource = string.Empty.ToList();
            gvQuiz_gvDrCr.DataBind();

            #endregion

            #region Delete True/False and Dr/Cr Questions

            List<int> delTrueFalseIDs = new List<int>();
            if (Session["delTrueFalseIDs"] != null)
            {
                delTrueFalseIDs = (List<int>)Session["delTrueFalseIDs"];

                foreach (int id in delTrueFalseIDs)
                {
                    Quiz_TrueFalseManager.DeleteQuiz_TrueFalse(id);
                }

            }

            #endregion

            #region "Save fill in the blanks"
            for (int i = 0; i < gvQuiz_FillInTheBlanks.Rows.Count; i++)
            {
                Quiz_FillInTheBlanks fillInTheBlanks = new Quiz_FillInTheBlanks();
                HiddenField hfFillInTheBlankID = (HiddenField)gvQuiz_FillInTheBlanks.Rows[i].FindControl("hfFillInTheBlankID");
                int fillInTheBlankID = Convert.ToInt32(hfFillInTheBlankID.Value);
                TextBox txtFilInTheBlanksQuestion = (TextBox)gvQuiz_FillInTheBlanks.Rows[i].FindControl("txtFilInTheBlanksQuestion");

                if (txtFilInTheBlanksQuestion.Text != "")
                {
                    fillInTheBlanks.FillInTheBlanksID = fillInTheBlankID;
                    fillInTheBlanks.Question = txtFilInTheBlanksQuestion.Text;
                    fillInTheBlanks.ChapterID = int.Parse(ddlChapterID.SelectedValue);
                    fillInTheBlanks.CourseID = int.Parse(ddlCourseID.SelectedValue);
                    fillInTheBlanks.ComprehensionID = comprehensionID;
                    fillInTheBlanks.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
                    fillInTheBlanks.AddedBy = userID;
                    fillInTheBlanks.AddedDate = DateTime.Now;
                    fillInTheBlanks.ModifiedBy = userID;
                    fillInTheBlanks.ModifiedDate = DateTime.Now;

                    if (fillInTheBlankID > 0)
                        Quiz_FillInTheBlanksManager.UpdateQuiz_FillInTheBlanks(fillInTheBlanks);
                    else
                        fillInTheBlankID = Quiz_FillInTheBlanksManager.InsertQuiz_FillInTheBlanks(fillInTheBlanks);
                    #region Fill In The Blanks Details
                    if (fillInTheBlankID > 0)
                    {
                        GridView gvQuiz_FillInTheBlanksDetails = (GridView)gvQuiz_FillInTheBlanks.Rows[i].FindControl("gvQuiz_FillInTheBlanksDetails");

                        for (int j = 0; j < gvQuiz_FillInTheBlanksDetails.Rows.Count; j++)
                        {
                            HiddenField hfFillInTheBlankDtlID = (HiddenField)gvQuiz_FillInTheBlanksDetails.Rows[j].FindControl("hfFillInTheBlankDtlID");
                            int fillInTheBlanksDetailsID = Convert.ToInt32(hfFillInTheBlankDtlID.Value);
                            Label lblSerial = (Label)gvQuiz_FillInTheBlanksDetails.Rows[j].FindControl("lblSerial");
                            TextBox txtAnswer = ((TextBox)gvQuiz_FillInTheBlanksDetails.Rows[j].FindControl("txtAnswer"));

                            if (txtAnswer.Text != "")
                            {
                                Quiz_FillInTheBlanksDetails fillInTheBlanksDtl = new Quiz_FillInTheBlanksDetails();

                                fillInTheBlanksDtl.FillInTheBlanksDetailsID = fillInTheBlanksDetailsID;
                                fillInTheBlanksDtl.FillInTheBlanksID = fillInTheBlankID;
                                fillInTheBlanksDtl.QuestionSl = int.Parse(lblSerial.Text);
                                fillInTheBlanksDtl.Answer = txtAnswer.Text;
                                fillInTheBlanksDtl.AddedBy = userID;
                                fillInTheBlanksDtl.AddedDate = DateTime.Now;
                                fillInTheBlanksDtl.ModifiedBy = userID;
                                fillInTheBlanksDtl.ModifiedDate = DateTime.Now;

                                if (fillInTheBlanksDetailsID > 0)
                                    Quiz_FillInTheBlanksDetailsManager.UpdateQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
                                else
                                    fillInTheBlanksDetailsID = Quiz_FillInTheBlanksDetailsManager.InsertQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
                            }
                        }

                        gvQuiz_FillInTheBlanksDetails.DataSource = string.Empty.ToList();
                        gvQuiz_FillInTheBlanksDetails.DataBind();
                    }
                }

            }

            gvQuiz_FillInTheBlanks.DataSource = string.Empty.ToList();
            gvQuiz_FillInTheBlanks.DataBind();
                    #endregion
            List<int> delFillInTheBlankIDs = new List<int>();
            if (Session["delFillInTheBlankIDs"] != null)
            {
                delFillInTheBlankIDs = (List<int>)Session["delFillInTheBlankIDs"];

                foreach (int id in delFillInTheBlankIDs)
                {
                    Quiz_FillInTheBlanksManager.DeleteQuiz_FillInTheBlanks(id);
                }

            }

            List<int> delFillInTheBlankDetailsIDs = new List<int>();
            if (Session["delFillInTheBlankDetailsIDs"] != null)
            {
                delFillInTheBlankDetailsIDs = (List<int>)Session["delFillInTheBlankDetailsIDs"];

                foreach (int id in delFillInTheBlankDetailsIDs)
                {
                    Quiz_FillInTheBlanksDetailsManager.DeleteQuiz_FillInTheBlanksDetails(id);
                }

            }

            #endregion

            #region "Save multiple questions"
            for (int mI = 0; mI < gvQuiz_MultipleQuestion.Rows.Count; mI++)
            {

                TextBox txtMultipleQuestionName = (TextBox)gvQuiz_MultipleQuestion.Rows[mI].FindControl("txtMultipleQuestionName");
                HiddenField hfMultipleQuestionID = (HiddenField)gvQuiz_MultipleQuestion.Rows[mI].FindControl("hfMultipleQuestionID");
                int multipleQuestionID = Convert.ToInt32(hfMultipleQuestionID.Value);

                if (txtMultipleQuestionName.Text != "")
                {
                    Quiz_MultipleQuestion quiz_MultipleQuestion = new Quiz_MultipleQuestion();
                    quiz_MultipleQuestion.MultipleQustionID = multipleQuestionID;
                    quiz_MultipleQuestion.ComprehensionID = comprehensionID;
                    quiz_MultipleQuestion.CourseID = int.Parse(ddlCourseID.SelectedValue);
                    quiz_MultipleQuestion.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
                    quiz_MultipleQuestion.ChapterID = int.Parse(ddlChapterID.SelectedValue);
                    quiz_MultipleQuestion.MultipleQuestionName = txtMultipleQuestionName.Text;
                    quiz_MultipleQuestion.AddedBy = userID;
                    quiz_MultipleQuestion.AddedDate = DateTime.Now;
                    quiz_MultipleQuestion.ModifiedBy = userID;
                    quiz_MultipleQuestion.ModifiedDate = DateTime.Now;

                    if (multipleQuestionID > 0)
                        Quiz_MultipleQuestionManager.UpdateQuiz_MultipleQuestion(quiz_MultipleQuestion);
                    else
                        multipleQuestionID = Quiz_MultipleQuestionManager.InsertQuiz_MultipleQuestion(quiz_MultipleQuestion);

                    GridView gvQuiz_MultipleQuestionDetails = (GridView)gvQuiz_MultipleQuestion.Rows[mI].FindControl("gvQuiz_MultipleQuestionDetails");

                    for (int mDi = 0; mDi < gvQuiz_MultipleQuestionDetails.Rows.Count; mDi++)
                    {
                        Label lblSerial = ((Label)gvQuiz_MultipleQuestionDetails.Rows[mDi].FindControl("lblSerial"));
                        HiddenField hfMultipleQuestionDetailsID = (HiddenField)gvQuiz_MultipleQuestionDetails.Rows[mDi].FindControl("hfMultipleQuestionDetailsID");
                        int multipleQuestionDetailsID = Convert.ToInt32(hfMultipleQuestionDetailsID.Value);
                        TextBox txtQuestionTitle = (TextBox)gvQuiz_MultipleQuestionDetails.Rows[mDi].FindControl("txtQuestionTitle");
                        Label lblAnswer = (Label)gvQuiz_MultipleQuestionDetails.Rows[mDi].FindControl("lblAnswer");
                        RadioButtonList chkAnswer = (RadioButtonList)gvQuiz_MultipleQuestionDetails.Rows[mDi].FindControl("radIsAnswer");

                        if (txtQuestionTitle.Text != "")
                        {
                            Quiz_MultipleQuestionDetails quiz_MultipleQuestionDetails = new Quiz_MultipleQuestionDetails();
                            quiz_MultipleQuestionDetails.MultipleQuestionDetailsID = multipleQuestionDetailsID;
                            quiz_MultipleQuestionDetails.MultipleQustionID = multipleQuestionID;
                            quiz_MultipleQuestionDetails.QuestionTitle = txtQuestionTitle.Text;
                            quiz_MultipleQuestionDetails.IsAnswer = chkAnswer.SelectedValue == "True" ? true : false;
                            quiz_MultipleQuestionDetails.AddedBy = userID;
                            quiz_MultipleQuestionDetails.AddedDate = DateTime.Now;
                            quiz_MultipleQuestionDetails.ModifiedBy = userID;
                            quiz_MultipleQuestionDetails.ModifiedDate = DateTime.Now;

                            if (multipleQuestionDetailsID > 0)
                                Quiz_MultipleQuestionDetailsManager.UpdateQuiz_MultipleQuestionDetails(quiz_MultipleQuestionDetails);
                            else
                                multipleQuestionDetailsID = Quiz_MultipleQuestionDetailsManager.InsertQuiz_MultipleQuestionDetails(quiz_MultipleQuestionDetails);
                        }
                    }

                    gvQuiz_MultipleQuestionDetails.DataSource = string.Empty.ToList();
                    gvQuiz_MultipleQuestionDetails.DataBind();
                }
            }

            gvQuiz_MultipleQuestion.DataSource = string.Empty.ToList();
            gvQuiz_MultipleQuestion.DataBind();

            List<int> delMultipleQuestionIDs = new List<int>();
            if (Session["delMultipleQuestionIDs"] != null)
            {
                delMultipleQuestionIDs = (List<int>)Session["delMultipleQuestionIDs"];

                foreach (int id in delMultipleQuestionIDs)
                {
                    Quiz_MultipleQuestionManager.DeleteQuiz_MultipleQuestion(id);
                }

            }

            List<int> delMultipleQuestionDetailsIDs = new List<int>();
            if (Session["delMultipleQuestionDetailsIDs"] != null)
            {
                delMultipleQuestionDetailsIDs = (List<int>)Session["delMultipleQuestionDetailsIDs"];

                foreach (int id in delMultipleQuestionDetailsIDs)
                {
                    Quiz_MultipleQuestionDetailsManager.DeleteQuiz_MultipleQuestionDetails(id);
                }

            }

            #endregion

            Response.Redirect("~/quiz/AdminDisplayQuiz_Comprehension.aspx", false);
        }
        catch (Exception ex)
        {
        }
    }
    protected void btnMoreFillInTheBlanksDetails_Click(object sender, EventArgs e)
    {
        try
        {
            List<Quiz_FillInTheBlanksDetails> fillInTheBlanksDetails = new List<Quiz_FillInTheBlanksDetails>();

            Button btnMoreFillInTheBlanksDetails = (Button)sender;
            GridViewRow row = (GridViewRow)btnMoreFillInTheBlanksDetails.NamingContainer;

            GridView gvQuiz_FillInTheBlanksDetails = (GridView)row.FindControl("gvQuiz_FillInTheBlanksDetails");

            foreach (GridViewRow dtlRow in gvQuiz_FillInTheBlanksDetails.Rows)
            {
                TextBox txtAnswer = (TextBox)dtlRow.FindControl("txtAnswer");
                Quiz_FillInTheBlanksDetails fillInTheBlanksDetail = new Quiz_FillInTheBlanksDetails();
                fillInTheBlanksDetail.FillInTheBlanksID = 0;
                fillInTheBlanksDetail.FillInTheBlanksDetailsID = 0;
                fillInTheBlanksDetail.Answer = txtAnswer.Text;

                fillInTheBlanksDetails.Add(fillInTheBlanksDetail);
            }

            //Session["fillInTheBlanksDetails"] = fillInTheBlanksDetails;

            fillInTheBlanksDetails.Add(new Quiz_FillInTheBlanksDetails(0, 0, 0, "", "", DateTime.Now, "", DateTime.Now));
            gvQuiz_FillInTheBlanksDetails.DataSource = fillInTheBlanksDetails;
            gvQuiz_FillInTheBlanksDetails.DataBind();

        }
        catch (Exception ex)
        {
        }
    }
    protected void btnSave_Click(object sender, EventArgs e)
    {
        try
        {
            List<Quiz_FillInTheBlanksDetails> fillInTheBlanksDetails = new List<Quiz_FillInTheBlanksDetails>();
            fillInTheBlanksDetails = (List<Quiz_FillInTheBlanksDetails>)Session["fillInTheBlanksDetails"];

            string userID = Profile.card_id;
            Quiz_FillInTheBlanks fillInTheBlanks = new Quiz_FillInTheBlanks();
            fillInTheBlanks.Question = fckDesc.Value;
            fillInTheBlanks.ChapterID = int.Parse(ddlChapterID.SelectedValue);
            fillInTheBlanks.CourseID = int.Parse(ddlCourseID.SelectedValue);
            fillInTheBlanks.ComprehensionID = 0;
            fillInTheBlanks.SubjectID = int.Parse(ddlSubjectID.SelectedValue);

            fillInTheBlanks.AddedBy = userID;
            fillInTheBlanks.AddedDate = DateTime.Now;
            fillInTheBlanks.ModifiedBy = userID;
            fillInTheBlanks.ModifiedDate = DateTime.Now;
            int FillInTheBlanksID = Quiz_FillInTheBlanksManager.InsertQuiz_FillInTheBlanks(fillInTheBlanks);

            if (fillInTheBlanksDetails != null)
            {
                for (int i = 0; i < fillInTheBlanksDetails.Count; i++)
                {

                    Label lblSerial = ((Label)gvQuiz_FillInTheBlanksQuestionDetails.Rows[i].FindControl("lblSerial"));
                    TextBox txtanswer = ((TextBox)gvQuiz_FillInTheBlanksQuestionDetails.Rows[i].FindControl("txtAnswer"));

                    Quiz_FillInTheBlanksDetails fillInTheBlanksDtl = new Quiz_FillInTheBlanksDetails();
                    //	quiz_MultipleQuestionDetails.MultipleQuestionDetailsID=  int.Parse(ddlMultipleQuestionDetailsID.SelectedValue);
                    fillInTheBlanksDtl.FillInTheBlanksID = FillInTheBlanksID;
                    fillInTheBlanksDtl.QuestionSl = int.Parse(lblSerial.Text);
                    fillInTheBlanksDtl.Answer = txtanswer.Text;

                    fillInTheBlanksDtl.AddedBy = userID;
                    fillInTheBlanksDtl.AddedDate = DateTime.Now;
                    fillInTheBlanksDtl.ModifiedBy = userID;
                    fillInTheBlanksDtl.ModifiedDate = DateTime.Now;
                    int resutl = Quiz_FillInTheBlanksDetailsManager.InsertQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
                }
            }

            if (txtAnswer.Text != "")
            {
                Quiz_FillInTheBlanksDetails fillInTheBlanksDtl = new Quiz_FillInTheBlanksDetails();
                //	quiz_MultipleQuestionDetails.MultipleQuestionDetailsID=  int.Parse(ddlMultipleQuestionDetailsID.SelectedValue);
                fillInTheBlanksDtl.FillInTheBlanksID = FillInTheBlanksID;
                fillInTheBlanksDtl.QuestionSl = 1;
                fillInTheBlanksDtl.Answer = txtAnswer.Text;

                fillInTheBlanksDtl.AddedBy = userID;
                fillInTheBlanksDtl.AddedDate = DateTime.Now;
                fillInTheBlanksDtl.ModifiedBy = userID;
                fillInTheBlanksDtl.ModifiedDate = DateTime.Now;
                int resutl = Quiz_FillInTheBlanksDetailsManager.InsertQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
            }

            fckDesc.Value = string.Empty;
            txtAnswer.Text = string.Empty;

            fillInTheBlanksDetails.Clear();
            Session["fillInTheBlanksDetails"] = null;

            gvQuiz_FillInTheBlanksQuestionDetails.DataSource = fillInTheBlanksDetails;
            gvQuiz_FillInTheBlanksQuestionDetails.DataBind();

            if (ddlExamID.SelectedValue != "0")
            {
                Quiz_ExamQuestionDetails qe_Details = new Quiz_ExamQuestionDetails(0, int.Parse(ddlExamID.SelectedValue), (int)Enums.QuestionTypes.FillInTheBlanks,
                        FillInTheBlanksID,  Profile.card_id, DateTime.Now,  Profile.card_id, DateTime.Now);
                Quiz_ExamQuestionDetailsManager.InsertQuiz_ExamQuestionDetails(qe_Details);
            }
        }
        catch (Exception ex)
        {
        }
    }
    private void showQuiz_FillInTheBlanksData()
    {
        try
        {
            List<Quiz_FillInTheBlanksDetails> fillInTheBlanksDetails = new List<Quiz_FillInTheBlanksDetails>();

            Quiz_FillInTheBlanks quiz_FillInTheBlanks = new Quiz_FillInTheBlanks();
            quiz_FillInTheBlanks = Quiz_FillInTheBlanksManager.GetQuiz_FillInTheBlanksByFillInTheBlanksID(Int32.Parse(Request.QueryString["ID"]));

            _loadSubject(quiz_FillInTheBlanks.CourseID);

            ChapterIDLoad(quiz_FillInTheBlanks.CourseID, quiz_FillInTheBlanks.SubjectID);

            fckDesc.Value= quiz_FillInTheBlanks.Question.ToString();
            ddlCourseID.SelectedValue = quiz_FillInTheBlanks.CourseID.ToString();
            ddlSubjectID.SelectedValue = quiz_FillInTheBlanks.SubjectID.ToString();
            ddlSubjectID_SelectedIndexChanged(this, new EventArgs());
            ddlChapterID.SelectedValue = quiz_FillInTheBlanks.ChapterID.ToString();

            DataSet ds = Quiz_FillInTheBlanksDetailsManager.GetQuiz_FillInTheBlanksByFillInTheBlanksID(quiz_FillInTheBlanks.FillInTheBlanksID);

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                Quiz_FillInTheBlanksDetails fitbDetails = new Quiz_FillInTheBlanksDetails();
                fitbDetails.FillInTheBlanksDetailsID = Convert.ToInt32(dr["FillInTheBlanksDetailsID"].ToString());
                fitbDetails.FillInTheBlanksID = Convert.ToInt32(dr["FillInTheBlanksID"].ToString());
                fitbDetails.QuestionSl = Convert.ToInt32(dr["QuestionSl"].ToString());
                fitbDetails.Answer = dr["Answer"].ToString();
                fitbDetails.AddedBy = dr["AddedBy"].ToString();
                fitbDetails.AddedDate =Convert.ToDateTime(dr["AddedDate"].ToString());
                fitbDetails.ModifiedBy = dr["ModifiedBy"].ToString();
                fitbDetails.ModifiedDate = Convert.ToDateTime(dr["ModifiedDate"].ToString());

                fillInTheBlanksDetails.Add(fitbDetails);
            }

            Session["fillInTheBlanksDetails"] = fillInTheBlanksDetails;

            gvQuiz_FillInTheBlanksQuestionDetails.DataSource = Session["fillInTheBlanksDetails"];
            gvQuiz_FillInTheBlanksQuestionDetails.DataBind();
        }
        catch (Exception ex)
        {
        }
    }
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        List<Quiz_FillInTheBlanksDetails> fillInTheBlanksDetails = new List<Quiz_FillInTheBlanksDetails>();
        fillInTheBlanksDetails = (List<Quiz_FillInTheBlanksDetails>)Session["fillInTheBlanksDetails"];

        string userID = Profile.card_id;

        int fillInTheBlankID = int.Parse(Request.QueryString["ID"].ToString());
        Quiz_FillInTheBlanks quiz_FillInTheBlanks = Quiz_FillInTheBlanksManager.GetQuiz_FillInTheBlanksByFillInTheBlanksID(fillInTheBlankID);

        quiz_FillInTheBlanks.Question = fckDesc.Value;
        quiz_FillInTheBlanks.CourseID = int.Parse(ddlCourseID.SelectedValue);
        quiz_FillInTheBlanks.SubjectID = int.Parse(ddlSubjectID.SelectedValue);
        quiz_FillInTheBlanks.ChapterID = int.Parse(ddlChapterID.SelectedValue);

        quiz_FillInTheBlanks.ModifiedBy = userID;
        quiz_FillInTheBlanks.ModifiedDate = DateTime.Now;
        bool resutl = Quiz_FillInTheBlanksManager.UpdateQuiz_FillInTheBlanks(quiz_FillInTheBlanks);
        if (resutl)
        {
            #region Fill In The BlankDetails Insert/Update
            foreach (GridViewRow row in gvQuiz_FillInTheBlanksQuestionDetails.Rows)
            {
                int fitbDtlID = Convert.ToInt32(((HiddenField)row.FindControl("hfFitbDtlID")).Value);
                Label lblSerial = ((Label)row.FindControl("lblSerial"));
                TextBox txtanswer = ((TextBox)row.FindControl("txtAnswer"));

                Quiz_FillInTheBlanksDetails fillInTheBlanksDtl = new Quiz_FillInTheBlanksDetails();

                if (fitbDtlID > 0)
                {
                    //quiz_MultipleQuestionDetails.MultipleQuestionDetailsID=  int.Parse(ddlMultipleQuestionDetailsID.SelectedValue);
                    //fillInTheBlanksDtl.FillInTheBlanksID = FillInTheBlanksID;
                    fillInTheBlanksDtl = fillInTheBlanksDetails.Find(X => X.FillInTheBlanksDetailsID == fitbDtlID);

                    fillInTheBlanksDtl.QuestionSl = int.Parse(lblSerial.Text);
                    fillInTheBlanksDtl.Answer = txtanswer.Text;
                    fillInTheBlanksDtl.ModifiedBy = userID;
                    fillInTheBlanksDtl.ModifiedDate = DateTime.Now;
                    Quiz_FillInTheBlanksDetailsManager.UpdateQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
                }
                else
                {
                    fillInTheBlanksDtl.FillInTheBlanksDetailsID = 0;
                    fillInTheBlanksDtl.FillInTheBlanksID = fillInTheBlankID;
                    fillInTheBlanksDtl.QuestionSl = int.Parse(lblSerial.Text);
                    fillInTheBlanksDtl.Answer = txtanswer.Text;
                    fillInTheBlanksDtl.AddedBy = userID;
                    fillInTheBlanksDtl.AddedDate = DateTime.Now;
                    fillInTheBlanksDtl.ModifiedBy = userID;
                    fillInTheBlanksDtl.ModifiedDate = DateTime.Now;
                    Quiz_FillInTheBlanksDetailsManager.InsertQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
                }

            }

            if (txtAnswer.Text != "")
            {
                Quiz_FillInTheBlanksDetails fillInTheBlanksDtl = new Quiz_FillInTheBlanksDetails();
                fillInTheBlanksDtl.FillInTheBlanksDetailsID = 0;
                fillInTheBlanksDtl.FillInTheBlanksID = fillInTheBlankID;
                fillInTheBlanksDtl.QuestionSl = 1;
                fillInTheBlanksDtl.Answer = txtAnswer.Text;
                fillInTheBlanksDtl.AddedBy = userID;
                fillInTheBlanksDtl.AddedDate = DateTime.Now;
                fillInTheBlanksDtl.ModifiedBy = userID;
                fillInTheBlanksDtl.ModifiedDate = DateTime.Now;
                Quiz_FillInTheBlanksDetailsManager.InsertQuiz_FillInTheBlanksDetails(fillInTheBlanksDtl);
            }
            #endregion

            #region Remove Deleted Answer from DB
            List<int> deletedDtlID = new List<int>();
            if (Session["deletedDtlID"] != null)
            {
                deletedDtlID = (List<int>)Session["deletedDtlID"];

                foreach (int fitbDtlID in deletedDtlID)
                {
                    Quiz_FillInTheBlanksDetailsManager.DeleteQuiz_FillInTheBlanksDetails(fitbDtlID);
                }

            }
            #endregion
        }

        fillInTheBlanksDetails.Clear();
        Session["deletedDtlID"] = null;
        Session["fillInTheBlanksDetails"] = null;

        //Response.Redirect("AdminDisplayQuiz_FillInTheBlanks.aspx");
        Response.Redirect("ExamOrSetBuilder.aspx");
    }