public async Task <Result <UserCreds> > CreateAsync(UserCreds userCreds)
        {
            logger.LogInformation("Saving user credentials");
            try
            {
                var existingCreds = await userCredsContext.UsersCreds
                                    .Where(x => x.Login == userCreds.Login)
                                    .ToArrayAsync()
                                    .ConfigureAwait(false);

                if (existingCreds.Length > 0)
                {
                    logger.LogInformation("User already exists");
                    return(Result.Fail("User already exists"));
                }

                logger.LogInformation("Existing user credentials not found, so creating new one");
                await userCredsContext.UsersCreds.AddAsync(userCreds).ConfigureAwait(false);

                await userCredsContext.SaveChangesAsync().ConfigureAwait(false);

                logger.LogInformation("User credentials successfully created or updated");

                return(Result.Ok(userCreds));
            }
            catch (Exception exc)
            {
                logger.LogError($"Failed to create user credentials: {exc.Message}");
                return(Result.Fail(exc.Message));
            }
        }
Beispiel #2
0
        public IActionResult Login([FromBody] UserCreds model)
        {
            var result = signInManager.PasswordSignInAsync(model.Username, model.Password, false, false).Result;

            if (result.Succeeded)
            {
                var user = userManager.Users.SingleOrDefaultAsync(r => r.UserName == model.Username).Result;
                return(Json(GenerateJwtToken(model.Username, user)));
            }

            return(BadRequest());
        }
Beispiel #3
0
        public IActionResult Register([FromBody] UserCreds model)
        {
            var user = new IdentityUser
            {
                UserName = model.Username
            };
            var result = userManager.CreateAsync(user, model.Password).Result;

            if (result.Succeeded)
            {
                return(Json(true));
            }

            return(BadRequest());
        }
        } // End UpdateUser

        // DELETE a User
        public override bool DeleteUser(string Email)
        {
            try
            {
                NonAdmin AdminTemp = context.NonAdmin.FirstOrDefault(i => i.Email == Email);
                context.NonAdmin.Remove(AdminTemp);

                UserCreds Temp = context.UserCreds.FirstOrDefault(i => i.Email == Email);
                context.UserCreds.Remove(Temp);
                context.SaveChanges();

                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
                return(false);
            }
        } // End DeleteUser
Beispiel #5
0
        public IActionResult ChangePassword([FromBody] UserCreds model)
        {
            IdentityUser user = userManager.FindByIdAsync(User.Identity.Name).Result;

            try
            {
                var result = userManager.ChangePasswordAsync(user, model.Password, model.NewPassword).Result;
                if (result.Succeeded)
                {
                    return(Json(true));
                }

                return(BadRequest(result.Errors));
            }
            catch (Exception e)
            {
                return(BadRequest(e));
            }
        }
        } // End ListOfNonAdmins

        // UPDATE a NonAdmin
        public bool UpdateUser(string Email, string Password, string FirstName, string LastName)
        {
            try
            {
                UserCreds temp = context.UserCreds.FirstOrDefault(i => i.Email == Email);
                temp.Psswrd    = Password;
                temp.FirstName = FirstName;
                temp.LastName  = LastName;
                context.UserCreds.Add(temp);
                context.Entry(temp).State = EntityState.Modified; // Updating the selected Row

                context.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
                return(false);
            }
        } // End UpdateUser
        // CREATE a NonAdmin User
        public override bool CreateUser(string Email, string Password, string FirstName, string LastName)
        {
            try
            {
                UserCreds temp = new UserCreds();
                temp.Email     = Email;
                temp.Psswrd    = Password;
                temp.FirstName = FirstName;
                temp.LastName  = LastName;
                context.UserCreds.Add(temp);

                NonAdmin userTemp = new NonAdmin();
                userTemp.Email = Email;
                context.NonAdmin.Add(userTemp);

                context.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
                return(false);
            }
        } // End CreateUser
 public void WhenIOpenUserDetails()
 {
     _displayedData = new HomePage().OpenUserCard().GetUserData();
 }
 public GmailUserVerificationStepDefinitions(UserCreds userData)
 {
     _userData = userData;
 }
        } // End CreateUser

        // READ - Get a single NonAdmin
        public UserCreds GetAdmin(string Email)
        {
            UserCreds temp = context.UserCreds.FirstOrDefault(i => i.Email == Email);

            return(temp);
        } // End GetNonAdmin
Beispiel #11
0
 public GmailBDDTestsSteps(UserCreds userData)
 {
     _userData = userData;
 }
Beispiel #12
0
 void CredsDialogClosingHandler(object sender, DialogClosingEventArgs e)
 {
     credentials = new UserCreds(txt_Password.SecurePassword);
     e.Handled   = true;
 }