public static string ValidateWorksheetHistory(string SelectedItems)
        {
            string Counter="0";
            string DocumentID = Convert.ToString(System.Web.HttpContext.Current.Session["docId"]);
            Thinkgate.Base.DataAccess.dtGeneric_Int standardids = new Base.DataAccess.dtGeneric_Int();
            string[] selitems = SelectedItems.Split(',');
            for (var i = 0; i < selitems.Length; i++)
            {
                int nodeid;
                string docEntry = selitems[i];
                if (Int32.TryParse(docEntry, out nodeid))
                {
                    standardids.Add(nodeid);
                }
            }

            DataTable dt = CompetencyWorkSheet.ValidateWorksheetHistory(DocumentID, standardids); ;

            if (dt != null) Counter = Convert.ToString(dt.Rows[0][0]);
            return Counter;
        }
        protected void cmbStandardLevel_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e)
        {
            int WorksheetId = 0;
            string StandardSet = e.Context["StandardSet"].ToString();
            if (e.Context["StandardList"] != null)
            {
                selectedlist = Convert.ToInt32(e.Context["StandardList"].ToString());
            }
            else
            {
                selectedlist = 0;
            }

            Base.DataAccess.dtGeneric_Int _standardids = new Base.DataAccess.dtGeneric_Int();
            if (selectedlist == 9)//for competency list option only
            {
                var CompetencyId = 0;
                Base.DataAccess.dtGeneric_Int _standardid = new Base.DataAccess.dtGeneric_Int();
                if (e.Context["ListSelection"] != null)
                {
                    CompetencyId = Convert.ToInt32(e.Context["ListSelection"].ToString());
                }
                else
                {
                    CompetencyId = 0;
                }
                _standardid.Add(Convert.ToInt32(CompetencyId));
                DataTable dsstandard = CompetencyWorkSheet.GetCurrStabdardsById_Kentico(_standardid, true);

                foreach (DataRow dr in dsstandard.Rows)
                {
                    _standardids.Add(Convert.ToInt32(dr[0]));
                }

            }
            else
            {
                if (e.Context["ListSelection"] != null && e.Context["ListSelection"] != string.Empty)
                {
                    WorksheetId = Convert.ToInt32(e.Context["ListSelection"].ToString());
                }
                else
                {
                    WorksheetId = 0;
                }
            }

            DataTable tmpdatatable = CriteriaHelper.GetStandardLevelbyStandardList(_standardids, StandardSet, WorksheetId);
            cmbStandardLevel.DataSource = tmpdatatable;
            cmbStandardLevel.DataBind();
        }
        private SelectedCriteria GetCriteriaControlValues()
        {
            var criteriaController = Master.CurrentCriteria();

            SelectedCriteria selectedCriteria = new SelectedCriteria();

            //ViewBy
            selectedCriteria.SelectedViewBy = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("ViewBy").Select(x => x.Text).FirstOrDefault();
            //School
            selectedCriteria.SelectedSchoolId = DataIntegrity.ConvertToInt(criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("School").Select(x => x.Value).FirstOrDefault());
            selectedCriteria.SelectedSchoolName = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("School").Select(x => x.Value).FirstOrDefault();
            //Teacher
            selectedCriteria.SelectedTeacher = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("TeacherName").Select(x => x.Value).FirstOrDefault();
            //Class
            selectedCriteria.SelectedClass = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("Class").Select(x => x.Value).FirstOrDefault();
            //Student
            selectedCriteria.SelectedStudent = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("Student").Select(x => x.Value).FirstOrDefault();
            //StandardLevel
            selectedCriteria.StandardLevel = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("StandardLevel").Select(x => x.Value).FirstOrDefault();
            //Demographics
            selectedCriteria.SelectedDemographics = criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.ACDropDownList.ValueObject>("Demographic").Select(x => x.Value).FirstOrDefault();
            //Group;
            selectedCriteria.SelectedGroup = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("Group").Select(x => x.Value).FirstOrDefault();
            //Worksheet List
            string selectedListId = "0";
            if (criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("ListSelection").Select(x => x.Value).FirstOrDefault() != null)
            {
                selectedListId = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("ListSelection").Select(x => x.Value).FirstOrDefault();
            }
            else
            {
                selectedListId = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("WorksheetSelection").Select(x => x.Value).FirstOrDefault();
            }
            selectedCriteria.SelectedWorksheet = selectedListId;
            //StandardList
            selectedCriteria.StandardList = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("StandardList").Select(x => x.Value).FirstOrDefault();

            selectedCriteria.StandardSet = criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("StandardSet").Select(x => x.StandardSet).FirstOrDefault();

            selectedCriteria.StandardId = criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("StandardSet").Select(x => x.StandardId).FirstOrDefault();
            //if (criteriaController.CriteriaNodes[2].Values[0].Value != null && criteriaController.CriteriaNodes[2].Values[0].Value.ContainsKey("Grades"))
            //{
            selectedCriteria.Grade = criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("StandardSet").Select(x => x.Grades).FirstOrDefault();//criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("Grades").Select(x => x.Grades).FirstOrDefault();
            //}

            //if (criteriaController.CriteriaNodes[2].Values[0].Value != null && criteriaController.CriteriaNodes[2].Values[0].Value.ContainsKey("Subjects"))
            //{
            selectedCriteria.Subject = criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("StandardSet").Select(x => x.Subjects).FirstOrDefault(); //criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("Subjects").Select(x => x.Subjects).FirstOrDefault();
            //}

            //if (criteriaController.CriteriaNodes[2].Values[0].Value != null && criteriaController.CriteriaNodes[2].Values[0].Value.ContainsKey("Courses"))
            //{
            selectedCriteria.Course = criteriaController.ParseCriteria<E3Criteria.AutoCompleteCriteriaControls.GetGradeSubjectCourseStandard.ValueObject>("StandardSet").Select(x => x.Courses).FirstOrDefault();
            //}


            //TODO UNCOMMENT AND VERIFY BELOW CODE ONCE STANDARD LIST IS WORKING

            //selectedCriteria.StandardList = criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("ListSelection").Select(x => x.Value).FirstOrDefault();
            selectedlist = Convert.ToInt32(criteriaController.ParseCriteria<E3Criteria.DropDownList.ValueObject>("StandardList").Select(x => x.Value).FirstOrDefault());
            if (selectedlist == 9)//for competency list option only
            {
                Base.DataAccess.dtGeneric_Int _standardids = new Base.DataAccess.dtGeneric_Int();
                _standardids.Add(Convert.ToInt32(selectedCriteria.SelectedWorksheet));
                DataTable dsstandard = CompetencyWorkSheet.GetCurrStabdardsById_Kentico(_standardids, true);
                var stdListFromCompetencyList = "";
                foreach (DataRow dr in dsstandard.Rows)
                {
                    stdListFromCompetencyList += "_" + dr[0].ToString();
                }

                if (!string.IsNullOrEmpty(stdListFromCompetencyList))
                {
                    selectedCriteria.StandardId = stdListFromCompetencyList.Substring(1);
                }
                selectedCriteria.SelectedWorksheet = null;
            }

            /* Created Date Range */
            foreach (var val in criteriaController.ParseCriteria<DateRange.ValueObject>("DateRange"))
            {
                if (val.Type == "Start")
                {
                    selectedCriteria.StartDate = val.Date;
                }
                else
                {
                    selectedCriteria.EndDate = val.Date;
                }
            }

            return selectedCriteria;
        }
        protected Thinkgate.Base.DataAccess.dtGeneric_Int GetStandardsbyNodeId(int nodeid)
        {
            var lststandards = new Thinkgate.Base.DataAccess.dtGeneric_Int();
            string expression = string.Empty;
            DataTable dsstandard;
            try
            {
                Base.DataAccess.dtGeneric_Int _standardids = new Base.DataAccess.dtGeneric_Int();
                _standardids.Add(nodeid);
                dsstandard = CompetencyWorkSheet.GetCurrStabdardsById_Kentico(_standardids, true);

            }
            catch (Exception ex)
            {

                throw new Exception(String.Format("The Query did not give any results {0}\n{1}", expression, ex.Message));

            }

            if (dsstandard != null)
            {
                foreach (DataRow row in dsstandard.Rows)
                {
                    lststandards.Add(Standpoint.Core.Utilities.DataIntegrity.ConvertToInt(row[0]));
                }

            }
            return lststandards;
        }