Esempio n. 1
0
 public ResponseUserAccount RegisterUser(RegisterUserAccount user)
 {
     if (!UserDB.UserAccounts.Any(u => u.Email == user.Email))
     {
         user.Password = passwordEncryption.EncryptPassword(user.Password);
         UserDB.UserAccounts.Add(
             new UserAccount {
             FirstName = user.FirstName,
             LastName  = user.LastName,
             Email     = user.Email,
             Password  = user.Password
         });
         UserDB.SaveChanges();
         return(UserDB.UserAccounts.Where(u => u.Email.Equals(user.Email)).Select(u => new ResponseUserAccount
         {
             UserID = u.UserId,
             FirstName = u.FirstName,
             LastName = u.LastName,
             Email = u.Email
         }).ToList().First());
     }
     else
     {
         throw new UserAccountException(UserAccountException.ExceptionType.EMAIL_ALREADY_EXIST, "email id already registered");
     }
 }
Esempio n. 2
0
        public async Task <IActionResult> Register(RegisterUserAccount model)
        {
            if (ModelState.IsValid)
            {
                // Copy data from RegisterViewModel to IdentityUser
                var user = new IdentityUser
                {
                    UserName = model.Email,
                    Email    = model.Email
                };

                // Store user data in AspNetUsers database table
                var result = await userManager.CreateAsync(user, model.Password);

                // If user is successfully created, sign-in the user using
                // SignInManager and redirect to index action of HomeController
                if (result.Succeeded)
                {
                    await signInManager.SignInAsync(user, isPersistent : false);

                    return(RedirectToAction("index", "home"));
                }

                // If there are any errors, add them to the ModelState object
                // which will be displayed by the validation summary tag helper
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError(string.Empty, error.Description);
                }
            }

            return(View(model));
        }
Esempio n. 3
0
 /// <summary>
 /// Registers the new user.
 /// </summary>
 /// <param name="user">The user.</param>
 /// <returns></returns>
 /// <exception cref="UserDetailException">user details are invalid</exception>
 public ResponseUserAccount RegisterNewUser(RegisterUserAccount user)
 {
     try
     {
         if (userDetailValidation.ValidateFirstName(user.FirstName) &&
             userDetailValidation.ValidateLastName(user.LastName) &&
             userDetailValidation.ValidateEmailAddress(user.Email) &&
             userDetailValidation.ValidatePassword(user.Password))
         {
             return(userAccountRL.RegisterUser(user));
         }
         else
         {
             throw new UserDetailException(UserDetailException.ExceptionType.ENTERED_INVALID_USER_DETAILS, "user details are invalid");
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 4
0
 public IActionResult RegisterUser(RegisterUserAccount user)
 {
     if (user == null)
     {
         return(BadRequest("user is null."));
     }
     try
     {
         ResponseUserAccount result = userAccountBL.RegisterNewUser(user);
         if (result != null)
         {
             return(Ok(new { success = true, Message = "User Registration Successful", user = result }));
         }
         else
         {
             return(BadRequest(new { success = false, Message = "User Registration Unsuccessful" }));
         }
     }
     catch (Exception exception)
     {
         return(BadRequest(new { success = false, exception.Message }));
     }
 }