protected override void LoadViewState(object savedState)
        {
            Pair p = (Pair)savedState;

            base.LoadViewState(p.First);
            filt = (SubmissionsFilter)p.Second;
        }
Example #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Page.User.IsInRole("Anonymous"))
            {
                throw new NeJudgeSecurityException("User, Administrator, Judge");
            }
            if (!IsPostBack)
            {
                //Page.Response.AddHeader("Refresh", "90");
                RequirementsProcessor rp = new RequirementsProcessor(GetType());
                rp.ProcessRequirements();

                /*SubmissionsFilter*/ f = new SubmissionsFilter(0);
                if (rp.OutcomeDefined)
                {
                    f.Outcome = rp.Outcome;
                }
                f.UserID = (rp.UserIDDefined && User.IsInRole("Judge")) ? rp.UserID : User.Identity.Name;

                if (rp.ContestIDDefined)
                {
                    if (Contest.GetContest(rp.ContestID).Time == ContestTime.Forthcoming && !Page.User.IsInRole("Judge"))
                    {
                        throw new NeJudgeSecurityException("Ќевозможно просмотреть submissions будущего соревновани¤");
                    }

                    f.ContestID = rp.ContestID;
                    f.ProblemID = (rp.ProblemIDDefined) ? rp.ProblemID : 0;
                    int page;
                    int.TryParse(Request.QueryString["page"], out page);
                    statusGV.PageIndex = (page >= 1) ? page - 1 : 0;
                }
                else
                {
                    statusGV.Visible = false;
                }

                filter.Filter = f;
                //Context.Items["filter"] = f;
            }
        }