Пример #1
0
        public async Task <ActionResult <OgmaRole> > PostRole(OgmaRole data)
        {
            if (await _roleManager.RoleExistsAsync(data.Name))
            {
                return(Conflict($"A role with name {data.Name} already exists!"));
            }

            var role = new OgmaRole
            {
                Name    = data.Name,
                IsStaff = data.IsStaff,
                Color   = data.Color,
                Order   = data.Order
            };

            try
            {
                await _roleManager.CreateAsync(role);
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
            return(CreatedAtAction("GetRoles", role));
        }
Пример #2
0
        private async Task SeedRoles()
        {
            RoleBuilder rb;

            var adminRole = new OgmaRole {
                Name = RoleNames.Admin, IsStaff = true, Color = "#ffaa00", Order = byte.MaxValue
            };

            rb = new RoleBuilder(adminRole, _roleManager);
            await rb.Build();

            var modRole = new OgmaRole {
                Name = RoleNames.Moderator, IsStaff = true, Color = "#aaff00", Order = byte.MaxValue - 5
            };

            rb = new RoleBuilder(modRole, _roleManager);
            await rb.Build();

            var helperRole = new OgmaRole {
                Name = RoleNames.Helper, IsStaff = true, Color = "#ffdd11", Order = byte.MaxValue - 10
            };

            rb = new RoleBuilder(helperRole, _roleManager);
            await rb.Build();

            var reviewerRole = new OgmaRole {
                Name = RoleNames.Reviewer, IsStaff = true, Color = "#ffdd11", Order = byte.MaxValue - 15
            };

            rb = new RoleBuilder(reviewerRole, _roleManager);
            await rb.Build();

            var supporterRole = new OgmaRole {
                Name = RoleNames.Supporter, IsStaff = false, Color = "#ffdd11", Order = byte.MaxValue - 20
            };

            rb = new RoleBuilder(supporterRole, _roleManager);
            await rb.Build();
        }
Пример #3
0
 public RoleBuilder(OgmaRole role, RoleManager <OgmaRole> roleManager)
 {
     Role         = role;
     _roleManager = roleManager;
     _claims      = new List <Claim>();
 }