protected override void LoadViewState(object savedState) { Pair p = (Pair)savedState; base.LoadViewState(p.First); filt = (SubmissionsFilter)p.Second; }
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; } }