protected void Page_Init(object sender, EventArgs e)
        {
            SessionObject = (SessionObject)Page.Session["SessionObject"];
            subject = SessionObject.AssessmentBuildParms.ContainsKey("Subject") ? SessionObject.AssessmentBuildParms["Subject"] : "";
            courseID = SessionObject.AssessmentBuildParms.ContainsKey("Course") ? DataIntegrity.ConvertToInt(SessionObject.AssessmentBuildParms["Course"]) : 0;
            Base.Classes.Course assessmentCourse = CourseMasterList.GetCurrCourseById(courseID);
            courseName = assessmentCourse != null ? assessmentCourse.CourseName : "";
            grade = SessionObject.AssessmentBuildParms.ContainsKey("Grade") ? SessionObject.AssessmentBuildParms["Grade"] : "";
            type = SessionObject.AssessmentBuildParms.ContainsKey("Type") ? SessionObject.AssessmentBuildParms["Type"] : "";
            term = SessionObject.AssessmentBuildParms.ContainsKey("Term") ? DataIntegrity.ConvertToInt(SessionObject.AssessmentBuildParms["Term"]) : 0;
            description = SessionObject.AssessmentBuildParms.ContainsKey("Description") ? SessionObject.AssessmentBuildParms["Description"] : "";
            currUserID = SessionObject.LoggedInUser != null ? (SessionObject.LoggedInUser.Page > 0 ? SessionObject.LoggedInUser.Page : AppSettings.Demo_TeacherID) : AppSettings.Demo_TeacherID;
            testCategory = SessionObject.AssessmentBuildParms.ContainsKey("TestCategory") ? SessionObject.AssessmentBuildParms["TestCategory"] : "";

            bool hasPermission = SessionObject.LoggedInUser.HasPermission(Permission.Access_SecureTesting);
            Dictionary<string, bool> dictionaryItem;
            dictionaryItem = Base.Classes.TestTypes.TypeWithSecureFlag(testCategory);
            bool isSecuredFlag = dictionaryItem != null && dictionaryItem.Where(x => Boolean.Parse(x.Value.ToString())).Select(y => y.Key).ToList().Distinct().Any();

            hiddenAccessSecureTesting.Value = hasPermission.ToString();
            hiddenIsSecuredFlag.Value = isSecuredFlag.ToString();
            hiddenSecureType.Value = SecureType.ToString();

            rigorLevels = SessionObject.Standards_RigorLevels_ItemCounts;
        }
		protected void Page_Init(object sender, EventArgs e)
		{
						SessionObject = (Thinkgate.Classes.SessionObject)Page.Session["SessionObject"];
						teacherID = DataIntegrity.ConvertToInt(SessionObject.TeacherTileParms.GetParm("userID"));
						classID = DataIntegrity.ConvertToInt(SessionObject.TeacherTileParms.GetParm("levelID"));
						classObj = (Class)SessionObject.TeacherTileParms.GetParm("class");
						classSubject = SessionObject.AssessmentBuildParms.ContainsKey("Subject") ? SessionObject.AssessmentBuildParms["Subject"] : (classObj != null ? classObj.Subject.DisplayText : "");
						classCourse = SessionObject.AssessmentBuildParms.ContainsKey("Course") ? SessionObject.AssessmentBuildParms["Course"] : (classObj != null ? classObj.Course.CourseName : "");
						classGrade = SessionObject.AssessmentBuildParms.ContainsKey("Grade") ? SessionObject.AssessmentBuildParms["Grade"] : (classObj != null ? classObj.Grade.DisplayText : "");
						classType = SessionObject.AssessmentBuildParms.ContainsKey("Type") ? SessionObject.AssessmentBuildParms["Type"] : "";
						classTerm = SessionObject.AssessmentBuildParms.ContainsKey("Term") ? DataIntegrity.ConvertToInt(SessionObject.AssessmentBuildParms["Term"]) : 0;
						classContent = SessionObject.AssessmentBuildParms.ContainsKey("Content") ? SessionObject.AssessmentBuildParms["Content"] : "";
						classDescription = SessionObject.AssessmentBuildParms.ContainsKey("Description") ? SessionObject.AssessmentBuildParms["Description"] : "";
						rigorLevels = SessionObject.Standards_RigorLevels_ItemCounts;
		}
        protected void CheckSelectedStandards()
        {
            _sessionObject = (SessionObject)Page.Session["SessionObject"];
            rigorLevels = _sessionObject.Standards_RigorLevels_ItemCounts;

            blankItemCounts.Value = rigorLevels.BlankItemCounts.Count.ToString();

            List<int> standardIds = rigorLevels.StandardItemNames.ToList().Select(st => st.Key).ToList();
            DataSet addendumsDataSet = Base.Classes.Addendum.GetAddendumsByStandards(standardIds);

            if (addendumsDataSet != null && addendumsDataSet.Tables.Count > 0)
            {
                CountAddendums = addendumsDataSet.Tables[0].Rows.Count;
                btnAddendumType.Attributes["CountAddendums"] = CountAddendums.ToString();
            }
        }
        protected void Page_Init(object sender, EventArgs e)
        {
            SessionObject = (SessionObject)Page.Session["SessionObject"];
            subject = SessionObject.AssessmentBuildParms.ContainsKey("Subject") ? SessionObject.AssessmentBuildParms["Subject"] : "";
            courseID = SessionObject.AssessmentBuildParms.ContainsKey("Course") ? DataIntegrity.ConvertToInt(SessionObject.AssessmentBuildParms["Course"]) : 0;
            Base.Classes.Course assessmentCourse = CourseMasterList.GetCurrCourseById(courseID);
            courseName = assessmentCourse != null ? assessmentCourse.CourseName : "";
            grade = SessionObject.AssessmentBuildParms.ContainsKey("Grade") ? SessionObject.AssessmentBuildParms["Grade"] : "";
            type = SessionObject.AssessmentBuildParms.ContainsKey("Type") ? SessionObject.AssessmentBuildParms["Type"] : "";
            term = SessionObject.AssessmentBuildParms.ContainsKey("Term") ? DataIntegrity.ConvertToInt(SessionObject.AssessmentBuildParms["Term"]) : 0;
            description = SessionObject.AssessmentBuildParms.ContainsKey("Description") ? SessionObject.AssessmentBuildParms["Description"] : "";
            currUserID = SessionObject.LoggedInUser != null ? (SessionObject.LoggedInUser.Page > 0 ? SessionObject.LoggedInUser.Page : AppSettings.Demo_TeacherID) : AppSettings.Demo_TeacherID;

            testCategory = SessionObject.AssessmentBuildParms.ContainsKey("TestCategory") ? SessionObject.AssessmentBuildParms["TestCategory"] : "Classroom";
            rigorLevels = SessionObject.Standards_RigorLevels_ItemCounts;

            //Selected Item Banks table
            selectedItemBanksTable = new dtItemBank();       
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                switch (Request.QueryString["headerImg"])
                {
                    case "lightningbolt":
                        headerImg.Src = "../../Images/lightningbolt.png";
                        headerImg.Attributes["headerImgName"] = "lightningbolt";
                        break;
                    case "magicwand":
                        headerImg.Src = "../../Images/magicwand.png";
                        headerImg.Attributes["headerImgName"] = "magicwand";
                        break;
                    case "repairtool":
                        headerImg.Src = "../../Images/repairtool.png";
                        headerImg.Attributes["headerImgName"] = "repairtool";
                        break;
                    default:
                        headerImg.Visible = false;
                        break;
                }

               
                addendumDistributionContainerDiv.Visible = false;
                lblAddendum.Visible = false;

                if (!string.IsNullOrEmpty(Request.QueryString["page"]))
                {
                    hdnCallBackPage.Value = Request.QueryString["page"].ToString();
                    if (hdnCallBackPage.Value == "rigor")
                    {
                        rigorLevels = new StandardRigorLevels();
                        List<AssessmentWCFVariables> lstAssessmentWCFVariables = (List<AssessmentWCFVariables>)Session["ItemRigorSummary"];
                        #region CODE BLOCK-Update session values
                       
                        foreach (AssessmentWCFVariables assessmentVars in lstAssessmentWCFVariables)
                        {

                            int itemCount = 0;

                            //Loop through all rigor levels and add item counts to the rigorLevels
                            if (assessmentVars.RigorLevels != null)
                            {
                                for (int i = 0; i < assessmentVars.RigorLevels.Count; i++)
                                {
                                    string rigorLevelName = assessmentVars.RigorLevels[i].ToString();
                                    int multipleChoice3Count = DataIntegrity.ConvertToInt(assessmentVars.MultipleChoice3Counts[i]);
                                    int multipleChoice4Count = DataIntegrity.ConvertToInt(assessmentVars.MultipleChoice4Counts[i]);
                                    int multipleChoice5Count = DataIntegrity.ConvertToInt(assessmentVars.MultipleChoice5Counts[i]);
                                    int shortAnswerCount = DataIntegrity.ConvertToInt(assessmentVars.ShortAnswerCounts[i]);
                                    int essayCount = DataIntegrity.ConvertToInt(assessmentVars.EssayCounts[i]);
                                    int trueFalseCount = DataIntegrity.ConvertToInt(assessmentVars.TrueFalseCounts[i]);
                                    int blueprintCount = DataIntegrity.ConvertToInt(assessmentVars.BlueprintCounts[i]);

                                    rigorLevels.RemoveLevel(assessmentVars.StandardID, rigorLevelName);

                                    if (multipleChoice3Count > 0 || multipleChoice4Count > 0 || multipleChoice5Count > 0 || shortAnswerCount > 0 || essayCount > 0 || trueFalseCount > 0 || blueprintCount > 0)
                                    {
                                        itemCount += multipleChoice3Count + multipleChoice4Count + multipleChoice5Count + shortAnswerCount + essayCount + trueFalseCount + blueprintCount;
                                        rigorLevels.AddLevel(assessmentVars.StandardID, rigorLevelName, multipleChoice3Count, multipleChoice4Count, multipleChoice5Count, shortAnswerCount, essayCount, trueFalseCount, blueprintCount);
                                    }
                                }
                            }

                            //Store total item count for standard
                            rigorLevels.AddStandardItemTotal(assessmentVars.StandardID, assessmentVars.StandardSet, assessmentVars.TotalItemCount);


                            rigorLevels.ClearStandardItemName(DataIntegrity.ConvertToInt(assessmentVars.StandardID));

                            //Set new name value for the selected standard
                            rigorLevels.AddStandardItemName(DataIntegrity.ConvertToInt(assessmentVars.StandardID), assessmentVars.StandardName.ToString());
                        }
                        #endregion
                    }
                    else if (hdnCallBackPage.Value == "addendum")
                    {
                        lblRigor.Visible = false;
                        rigorTable.Visible = false;
                        addendumDistributionContainerDiv.Visible = true;
                        lblAddendum.Visible = true;
                        StandardAddendumList assessmentAddendumVars = (StandardAddendumList)Session["AddendumSummary"];
                        addendumLevels = new StandardAddendumLevels();

                        foreach (StandardAddendum item in assessmentAddendumVars.AddendumLevels)
                        {
                            addendumLevels.ClearStandardItemTotal(item.StandardID);

                            addendumLevels.RemoveLevel(item.StandardID, item.AddendumID);
                            if (item.ItemCount > 0)
                            {
                                addendumLevels.AddLevel(item.StandardID, item.AddendumID, item.ItemCount);
                            }
                        }

                        //Store total item count for standard
                        addendumLevels.AddStandardItemTotal(assessmentAddendumVars.StandardCounts);

                        foreach (StandardCountList item in assessmentAddendumVars.StandardCounts)
                        {
                            addendumLevels.ClearStandardItemName(item.StandardID);
                            addendumLevels.AddStandardItemName(DataIntegrity.ConvertToInt(item.StandardID), item.StandardName.ToString());
                        }

                        foreach (AddendumCount item in assessmentAddendumVars.AddendumCounts)
                        {
                            addendumLevels.ClearAddendumCount(item.AddendumID);
                            addendumLevels.AddAddendumCount(DataIntegrity.ConvertToInt(item.AddendumID), HttpUtility.UrlDecode(item.AddendumName.ToString()), item.Count);
                        }

                        addendumItemCountCell.Text = "Item Count (" + addendumLevels.AddendumCounts.Select(x => Convert.ToInt32(x.Value[1])).ToArray().Sum().ToString() + ")";
                    }
                }

                 assessmentTitle.InnerHtml = "Term " + term.ToString() + " " + type + " - " + grade + " Grade " + subject + " " + (courseName == subject ? string.Empty : courseName) + " - " + description;
                              
                contentType.InnerHtml = content;
                includeFieldTestValue.InnerHtml = includeFieldTest;
                if (content == "External")
                {
                    generateButton.Text = "  Create External Assessment  ";
                }

                if (_assessment == null)
                {
                    if (hdnCallBackPage.Value == "addendum")
                    {
                        LoadAddendumDistributionTable();
                    }
                    else
                    {
                        LoadRigorDistributionTable();
                    }
                    LoadStandardDistributionTable();
                    printButton.Visible = false;

                    if(testCategory == "Classroom")
                    {
                        includeFieldTestLabel.Visible = false;
                        includeFieldTestValue.Visible = false;
                        numberOfAddendumsLabel_dup.Visible = true;
                        addendumCount_dup.Visible = true;
                        numberOfAddendumsLabel_orig.Visible = false;
                        addendumCount.Visible = false;
                    }
                }
                else
                {
                    generateButton.Visible = false;
                    cancelButton.Visible = false;
                    backButton.OnClientClick = "closeSummary(); return false;";
                    backButton.Text = " Close ";
                    printButton.Visible = SessionObject.LoggedInUser.HasPermission(Base.Enums.Permission.Icon_Print_AssessmentContentSummary);
                    rubricCount.InnerHtml = _assessment.RubricCount > 0 ?
                        "<a href=\"javascript:void();\" onclick=\"parent.customDialog({ name: 'RadWindowAddAssessment', url: '../ControlHost/PreviewRubrics.aspx?xID=" + Encryption.EncryptInt(_assessmentID) +
                        "', maximize: true, maxwidth: 500, maxheight: 400 }); return false;\">" + _assessment.RubricCount.ToString() + "</a>" : "0";
                    addendumCount.InnerHtml = _assessment.AddendumCount > 0 ?
                        "<a href=\"javascript:void();\" onclick=\"parent.customDialog({ name: 'RadWindowAddAssessment', url: '../ControlHost/PreviewAddendums.aspx?xID=" + Encryption.EncryptInt(_assessmentID) +
                        "', maximize: true, maxwidth: 500, maxheight:400 }); return false;\">" + _assessment.AddendumCount.ToString() + "</a>" : "0";
                    addendumCount_dup.InnerHtml = _assessment.AddendumCount > 0 ?
                        "<a href=\"javascript:void();\" onclick=\"parent.customDialog({ name: 'RadWindowAddAssessment', url: '../ControlHost/PreviewAddendums.aspx?xID=" + Encryption.EncryptInt(_assessmentID) +
                        "', maximize: true, maxwidth: 500, maxheight: 400 }); return false;\">" + _assessment.AddendumCount.ToString() + "</a>" : "0";

                    LoadStandardDistributionTable_AssessmentObjectScreen();
                    LoadItemBankDistributionTable();
                    LoadRigorDistributionTable_AssessmentObjectScreen();

                    if (_assessment.Category == AssessmentCategories.Classroom)
                    {
                        includeFieldTestLabel.Visible = false;
                        includeFieldTestValue.Visible = false;
                        numberOfAddendumsLabel_dup.Visible = true;
                        addendumCount_dup.Visible = true;
                        numberOfAddendumsLabel_orig.Visible = false;
                        addendumCount.Visible = false;
                    }
                }
            }
        }