Example #1
0
        public async Task<IHttpActionResult> ResetPassword(ResetPasswordBindingModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return BadRequest(ModelState);
                }
                var user = await UserManager.FindByEmailAsync(model.Email);
                var token = await UserManager.GeneratePasswordResetTokenAsync(user.Id);
                IdentityResult result = await UserManager.ResetPasswordAsync(user.Id, token, model.Password);

                if (!result.Succeeded)
                {
                    return GetErrorResult(result);
                }
            }
            catch (Exception ex)
            {
                Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
                return BadRequest(ex.Message);
            }
            return Ok();
        }
Example #2
0
 public async Task<IHttpActionResult> ResetPassword(ResetPasswordBindingModel model)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return BadRequest(ModelState);
         }
         var user = await UserManager.FindByEmailAsync(model.Email);
         var token= model.Code.Replace('$', '/');
         //var token = await UserManager.GeneratePasswordResetTokenAsync(user.Id);
         IdentityResult result = await UserManager.ResetPasswordAsync(user.Id, token, model.Password);
        if (!result.Succeeded)
         {
             return BadRequest("{\"status\" : false, \"message\" : \"Your link has been expired please try again.\"}");
         }
        
     }
     catch (Exception ex)
     {
         Elmah.ErrorSignal.FromCurrentContext().Raise(ex);
         return BadRequest(ex.Message);
     }
     return Ok();
 }