protected void Page_Load(object sender, EventArgs e)
        {
            if (Session[State.AuthUser] == null || !((ADUser)Session[State.AuthUser]).Authenticated)
            {
                Response.Redirect("~/Login.aspx");
            }

            else
            {
                ADUser user = (ADUser)Session[State.AuthUser];
                WebPagePermissionsEditor1.Visible = user.Permissions.Contains(PermissionControl.GetPermissionByName("Administrator").id);
                username_label.Text = String.Format("Logged in as:  {0} ({1}@dublinschool.org)", user.Name, user.UserName);
                using (WebhostEntities db = new WebhostEntities())
                {
                    int  termid = DateRange.GetCurrentOrLastTerm();
                    Term term   = db.Terms.Where(t => t.id == termid).Single();

                    ActiveTermLabel.Text = String.Format("{0} {1} ({2})", term.Name, term.StartDate.Year, term.AcademicYearID);
                }
            }
        }
Beispiel #2
0
        protected void SetPermissionsBtn_Click(object sender, EventArgs e)
        {
            using (WebhostEntities db = new WebhostEntities())
            {
                if (db.WebPages.Where(p => p.RawURL.Equals(Request.RawUrl)).Count() <= 0)
                {
                    WebPage newPage = new WebPage()
                    {
                        id     = db.WebPages.Count() > 0 ? db.WebPages.OrderBy(p => p.id).ToList().Last().id + 1 : 0,
                        RawURL = Request.RawUrl,
                        Name   = TitleInput.Text
                    };
                    db.WebPages.Add(newPage);
                    db.SaveChanges();
                }

                if (PagePermissionSelector.GroupIds.Count > 0)
                {
                    int AdminId = PermissionControl.GetPermissionByName("Administrator").id;
                    if (!PagePermissionSelector.GroupIds.Contains(AdminId))
                    {
                        PagePermissionSelector.AddPermission(AdminId);
                    }
                }

                WebPage page = db.WebPages.Where(p => p.RawURL.Equals(Request.RawUrl)).Single();
                page.Name = TitleInput.Text;
                page.Permissions.Clear();

                foreach (int id in PagePermissionSelector.GroupIds)
                {
                    Permission permission = db.Permissions.Where(p => p.id == id).Single();
                    page.Permissions.Add(permission);
                }

                db.SaveChanges();
            }
        }