Пример #1
0
        public Role Save(Role role)
        {
            oxite_Role roleToSave = null;

            if (role.ID != Guid.Empty)
            {
                roleToSave = context.oxite_Roles.FirstOrDefault(r => r.RoleID == role.ID);
            }

            if (roleToSave == null)
            {
                roleToSave = new oxite_Role();

                roleToSave.RoleID = role.ID != Guid.Empty ? role.ID : Guid.NewGuid();

                context.oxite_Roles.InsertOnSubmit(roleToSave);
            }

            roleToSave.GroupRoleID = role.Group != null && role.Group.ID != Guid.Empty ? role.Group.ID : roleToSave.RoleID;
            roleToSave.RoleName    = role.Name;
            roleToSave.RoleType    = (byte)role.Type;

            context.SubmitChanges();

            return(GetRole(roleToSave.RoleName));
        }
Пример #2
0
        private void projectRoleRecursive(Role group, oxite_Role role)
        {
            Role newRole = group.AddRole((RoleType)role.RoleType, role.RoleID, role.RoleName);

            foreach (oxite_Role childRole in context.oxite_Roles.Where(r => r.GroupRoleID == role.RoleID))
            {
                projectRoleRecursive(newRole, childRole);
            }
        }
Пример #3
0
        private Role projectRoleRecursive(oxite_Role role)
        {
            Role newRole = new Role(null, (RoleType)role.RoleType, role.RoleID, role.RoleName);

            foreach (oxite_Role childRole in context.oxite_Roles.Where(r => r.GroupRoleID == role.RoleID))
            {
                projectRoleRecursive(newRole, childRole);
            }

            return(newRole);
        }
        public bool Remove(string roleName)
        {
            bool       roleRemoved = false;
            oxite_Role role        = context.oxite_Roles.FirstOrDefault(r => r.RoleName == roleName);

            if (role != null)
            {
                context.oxite_SiteRoleUserRelationships.DeleteAllOnSubmit(from sru in context.oxite_SiteRoleUserRelationships where sru.RoleID == role.RoleID select sru);
                //context.oxite_BlogRoleUserRelationships.DeleteAllOnSubmit(from aru in context.oxite_BlogRoleUserRelationships where aru.RoleID == role.RoleID select aru);
                context.oxite_PostRoleUserRelationships.DeleteAllOnSubmit(from pru in context.oxite_PostRoleUserRelationships where pru.RoleID == role.RoleID select pru);
                context.oxite_PageRoleUserRelationships.DeleteAllOnSubmit(from pru in context.oxite_PageRoleUserRelationships where pru.RoleID == role.RoleID select pru);
                context.oxite_Roles.DeleteOnSubmit(role);

                context.SubmitChanges();

                roleRemoved = true;
            }

            return(roleRemoved);
        }
Пример #5
0
        public bool Remove(Role role)
        {
            oxite_Role roleToRemove = context.oxite_Roles.FirstOrDefault(r => r.RoleID == role.ID);

            if (roleToRemove != null)
            {
                //TODO: (erikpo) The removal of role relationships should be the responsibility of the modules that store them and moved out of this module
                context.oxite_SiteRoleUserRelationships.DeleteAllOnSubmit(from sru in context.oxite_SiteRoleUserRelationships where sru.RoleID == role.ID select sru);
                //context.oxite_BlogRoleUserRelationships.DeleteAllOnSubmit(from aru in context.oxite_BlogRoleUserRelationships where aru.RoleID == role.ID select aru);
                context.oxite_PostRoleUserRelationships.DeleteAllOnSubmit(from pru in context.oxite_PostRoleUserRelationships where pru.RoleID == role.ID select pru);
                context.oxite_PageRoleUserRelationships.DeleteAllOnSubmit(from pru in context.oxite_PageRoleUserRelationships where pru.RoleID == role.ID select pru);

                context.oxite_Roles.DeleteOnSubmit(roleToRemove);

                context.SubmitChanges();

                return(true);
            }

            return(false);
        }
Пример #6
0
 private static Role projectRole(oxite_Role role)
 {
     return(new Role(role.GroupRoleID != role.RoleID ? new Role(role.GroupRoleID) : null, (RoleType)role.RoleType, role.RoleID, role.RoleName));
 }