Exemple #1
0
 public LoginController(Login log, Logup logup, RequestOtp otp, ResetUser resetUser)
 {
     this.log       = log;
     this.logup     = logup;
     this.otp       = otp;
     this.resetUser = resetUser;
 }
Exemple #2
0
 public bool Put([FromBody] ResetUser user)
 {
     if (UserHelper.RetrieveUserByUserName(new GenericIdentity(user.UserName)) == null)
     {
         return(true);
     }
     return(UserHelper.ForgotPassword(user));
 }
Exemple #3
0
        public async void Put_Ok()
        {
            var user = new ResetUser()
            {
                DisplayName = "UnitTest", UserName = "******", Reason = "UnitTest"
            };
            var resp = await Client.PutAsJsonAsync <ResetUser, bool>(user);

            Assert.True(resp);
        }
        public async Task <User> GetUserForReset(ResetUser ruser)
        {
            User user = await _context.Users.Include(x => x.role).Where(s => s.status == (int)Status.Active && s.email == ruser.email &&
                                                                        s.role._id == s.role_id).FirstOrDefaultAsync();

            if (user != null)
            {
                user.status   = 0;
                user.password = ruser.newpass;
                await _context.SaveChangesAsync();
            }
            return(user);
        }
        public async Task <IActionResult> resetuser([FromBody] ResetUser resetUser)
        {
            User      _user = null;
            UserError e     = new UserError();

            //validate request
            if (!ModelState.IsValid)
            {
                var modelErrors = new List <UserError>();
                var eD          = new List <string>();
                foreach (var modelState in ModelState.Values)
                {
                    foreach (var modelError in modelState.Errors)
                    {
                        eD.Add(modelError.ErrorMessage);
                    }
                }
                e.error        = ((int)HttpStatusCode.BadRequest).ToString();
                e.errorDetails = eD;

                return(BadRequest(e));
            }

            try
            {
                string pass = Utility.RandomString(settings.Value.pLength);
                resetUser.newpass = pass;
                _user             = await userSqlRepo.GetUserForReset(resetUser);

                if (_user == null || string.IsNullOrEmpty(_user.username))
                {
                    var eD = new List <string>();

                    eD.Add("Email not found");
                    e.error        = ((int)HttpStatusCode.NotFound).ToString();
                    e.errorDetails = eD;
                    return(NotFound(e));
                }
                Utility utility    = new Utility();
                bool    isMailSent = await utility.sendMail(_user, pass, settings);
            }
            catch (Exception ex)
            {
                Console.Write(ex.ToString());
            }

            return(CreatedAtAction("resetuser", _user));
        }