protected void Page_Load(object sender, EventArgs e)
        {
            // Init , check session
            MenuItemMyReviews = "active";
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            if (Session["UserId"] == null)
                Response.Redirect("Default.aspx");

            if (Request.QueryString["SRI"] != null && !IsPostBack)
            {
                string referer = Request.UrlReferrer.ToString();
                int ReviewID = Int32.Parse(Request.QueryString["SRI"].ToString());

                ERS.BAL.Reviews rev = new ERS.BAL.Reviews();
                String Type = rev.GetType(ReviewID);
                ERS.DAL.EmployeeWithLM ReviewedEmp = rev.GetEmployeeFromReview(ReviewID);
                LMName.InnerText = ReviewedEmp.CurrEmployeeLM.Name;
                EmpName.InnerText = ReviewedEmp.CurrEmployee.Name;
                EmpDesignation.InnerText = ReviewedEmp.CurrEmployee.Position.PositionName;

                bool isLMOfReview = rev.isLMOfReview(Int32.Parse(Session["UserID"].ToString()), ReviewID);
                bool isEmpOfReview = rev.isEmpOfReview(Int32.Parse(Session["UserID"].ToString()), ReviewID);
                // Is it LM's Filled Review For Employee
                bool LMSConsolidation = rev.isLMSConsolidation(ReviewID);

                // If this review is opened by someone who is not LM of this review
                // OR it is opened by employee himself or Reviewer Self OR Reviewers

                //Setting all to false;
                PeerPanel.Visible = false;
                LineManagerRating.Visible = false;
                DirectorRating.Visible = false;
                CalcRating.Visible = false;
                submit.Visible = false;
                save.Visible = false;
                Reject.Visible = false;

                 if (!(isLMOfReview || isEmpOfReview))
                        Response.Redirect("Default.aspx");

                // LM Opens for seeing And is not his own consolidation
                if (isLMOfReview && LMSConsolidation)
                    {
                        PeerPanel.Visible = true;
                        LineManagerRating.Visible = true;
                        Reject.Visible = false;
                    }
                else if ( isLMOfReview &&  Type == "Solicitation"  )
                    {
                        PeerPanel.Visible = true;
                        Reject.Visible = true;
                    }

                    else
                    {   // Review is opened by an Employee
                        PeerPanel.Visible = false;
                        LineManagerRating.Visible = false;
                        DirectorRating.Visible = false;
                        CalcRating.Visible = false;
                        submit.Visible = false;   // Disabling , will enable after querying and gettiing actual status of review
                        save.Visible = false;
                        Reject.Visible = false;
                    }

                // Save in Viewstate
                ViewState["PreviousPageUrl"] = Request.UrlReferrer.ToString();
                ViewState["ReviewID"] = ReviewID;
                ViewState["EmpID"] = ReviewedEmp.CurrEmployee.EmpID;

                // Load Cats
                Categories.DataSource = rev.GetCategories();
                Categories.DataBind();

                # region Decide To Show LM Comment Or Not

                bool toShowOrNot = true;
                String StatusOfCurrentReview = rev.GetStatus(ReviewID);
                if (StatusOfCurrentReview != null)
                {
                    if (StatusOfCurrentReview == "Complete")
                    {
                        toShowOrNot = false;
                        submit.Visible = false;
                        save.Visible = false;
                    }
                    else if (StatusOfCurrentReview != "Rejected")
                    {
                        toShowOrNot = true;
                        submit.Visible = true;
                        save.Visible = true;
                    }
                }
                #endregion

                # region Loading Saved Text

                foreach (RepeaterItem a in Categories.Items)
                    {
                         int pReviewID = Int32.Parse(Request.QueryString["SRI"].ToString());
                         int pCategoryID = Int32.Parse((a.FindControl("CatID") as HiddenField).Value);
                         String str = rev.GetStatus(ReviewID);

                             ERS.ReviewInfo RevInfo = rev.GetReviewInfo(ReviewID, pCategoryID);
                             if(RevInfo != null )
                             {
                                 TextBox RatingsTxt = (a.FindControl("RatingsTxt") as TextBox);
                                 RatingsTxt.Text = RevInfo.Rating.ToString();
                                 RatingsTxt.Enabled = toShowOrNot;

                                 TextBox CommentsTxt = (a.FindControl("CommentsTxt") as TextBox);
                                 CommentsTxt.Text = RevInfo.Comments.ToString();
                                 CommentsTxt.Enabled = toShowOrNot;

                             }

                    }

                    if (Session["isLM"].Equals(true))
                    {
                        int lCategoryID = rev.GetCategoryID("LineManager");
                         ERS.ReviewInfo RevInfo = rev.GetReviewInfo(ReviewID,lCategoryID);
                         if(RevInfo != null )
                             {
                                 LMCommentsTxt.Text = RevInfo.Comments;
                                 LMRatingsTxt.Text = RevInfo.Rating.ToString();
                                 LMCommentsTxt.Enabled = toShowOrNot;
                                 LMRatingsTxt.Enabled = toShowOrNot;
                            }
                    }

                 #endregion

             }
        }