Example #1
0
        public async Task <LoginResult> Login(CxIdentityUser user)
        {
            await signInManager.SignInAsync(user, true);

            return(new LoginResult()
            {
                Success = true
            });
        }
Example #2
0
        /// <summary>
        /// Creates a user in identity and main DB, adds to a role. Name goes to main DB only
        /// </summary>
        /// <param name="email"></param>
        /// <param name="password"></param>
        /// <param name="name"></param>
        /// <param name="role"></param>
        /// <returns></returns>
        public async Task <SignUpResult> SignUp(string email, string password, string name,
                                                IdentityRole role = IdentityRole.User)
        {
            var user = new CxIdentityUser()
            {
                Email = email, UserName = email
            };
            var userExists = await this.userManager.FindByNameAsync(user.UserName);

            if (userExists != null)
            {
                return new SignUpResult()
                       {
                           Success = true
                       }
            }
            ;

            var result = await this.userManager.CreateAsync(user, password);

            if (!result.Succeeded)
            {
                return(new SignUpResult(result));
            }

            result = await this.userManager.AddToRoleAsync(user, role.ToString());

            user = await this.userManager.FindByEmailAsync(user.Email);

            await this.userBop.Create(new CxUserModel()
            {
                Name = name, Email = user.Email, IdentityId = user.Id, CanCreateMeetings = false
            });

            return(new SignUpResult(result));
        }