Exemplo n.º 1
0
        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;
            }
        }
Exemplo n.º 2
0
        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 }));
        }