public ActionResult SendForgetPasswordCode([FromQuery] string Email) { try { var user = _eyadtakDbContext.Users.FirstOrDefault(s => s.UserEmail.ToLower().Trim() == Email.ToLower().Trim()); if (user == null) { return(Ok(new { message = "Sorry this Email Does not Exsist", ErrorHappen = true })); } int code = new Random().Next(5000, 50000); user.RecoveryCode = code; _eyadtakDbContext.SaveChanges(); string token = _jwt.GenerateToken(user.UserId); _email.SendRecoveryPasswordEmail(user.UserEmail, code, _configuration.GetSection("Frontend:Url").Value + "/account/recover-password/?token=" + token); return(Ok(new { message = "Message Sent Successfully, Please check your Email", ErrorHappen = false })); } catch (Exception e) { return(Ok(new { message = "Something went wrong", ErrorHappen = true })); throw e; } }
public ActionResult SendForgetPasswordCode([FromQuery] string Email) { var user = db.Users.Include(x => x.ProfilePhotos).Where(s => s.Email == Email).FirstOrDefault(); if (user == null) { return(Json(new { statusCode = ResponseStatus.ValidationError, responseMessage = ValidationMessages.EmailNotExsist })); } int code = new Random().Next(5000, 50000); user.RecoveryCode = code; db.SaveChanges(); userData.SetUser(HttpContext, user); string token = jwt.GenerateToken(user.Id); email.SendRecoveryPasswordEmail(user.Email, code, "https://localhost:44340/Account/RecoverPassword/?token=" + token); return(Json(new { statusCode = ResponseStatus.Success })); }