Example #1
0
        public async Task <IHttpActionResult> Create(CreateRoleModel model)
        {
            var currentRole = await AppRoleManager.FindByNameAsync(model.Name);

            if (currentRole != null)
            {
                ModelState.AddModelError("Name", "A role with this name already exists");
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var role = new IdentityRole {
                Name = model.Name
            };

            var result = await this.AppRoleManager.CreateAsync(role);

            if (!result.Succeeded)
            {
                return(GetErrorResult(result));
            }

            Uri locationHeader = new Uri(Url.Link("GetRoleById", new { id = role.Id }));

            return(Created(locationHeader, TheModelFactory.CreateViewModel(role)));
        }
Example #2
0
        public async Task <IHttpActionResult> GetRoleByName(string name)
        {
            var role = await this.AppRoleManager.FindByNameAsync(name);

            if (role != null)
            {
                return(Ok(TheModelFactory.CreateViewModel(role)));
            }
            return(NotFound());
        }
Example #3
0
        public async Task <IHttpActionResult> Register(CreateUserModel createUserModel)
        {
            // validate model
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            ApplicationUser user = null;

            try
            {
                user = new ApplicationUser()
                {
                    UserName    = createUserModel.Username,
                    Email       = createUserModel.Email,
                    Gender      = createUserModel.Gender,
                    Fitness     = createUserModel.Fitness,
                    Job         = createUserModel.Job,
                    DateOfBirth = createUserModel.DateOfBirth
                };
            }
            catch (Exception e)
            {
                throw e;
            }


            IdentityResult addUserResult = await this.AppUserManager.CreateAsync(user, createUserModel.Password);

            if (!addUserResult.Succeeded)
            {
                return(GetErrorResult(addUserResult));
            }

            Uri locationHeader = new Uri(Url.Link("GetUserById", new { id = user.Id }));

            return(Created(locationHeader, TheModelFactory.CreateViewModel(user)));
        }
Example #4
0
 public IQueryable <RoleModel> GetAllRoles()
 {
     return(this.AppRoleManager.Roles.ToList().Select(role => TheModelFactory.CreateViewModel(role)).AsQueryable());
 }