Ejemplo n.º 1
0
        public async Task <IActionResult> ForgotPassword(ForgotPasswordViewModel model)
        {
            //find the user by email
            var user = await userManager.FindByEmailAsync(model.Email);

            if (user != null)
            {
                //generate password reset token
                var token = await userManager.GeneratePasswordResetTokenAsync(user);

                var encodedToken = Encoding.UTF8.GetBytes(token);
                var validToken   = WebEncoders.Base64UrlEncode(encodedToken);

                //build the url
                var url = Url.Action("ResetPassword", "Account", new { email = user.Email, token = validToken }, Request.Scheme);

                //send email to the user
                var mail = new MailMessageObject()
                {
                    SenderAddress   = "*****@*****.**",
                    RecieverAddress = user.Email,
                    Subject         = "Passeord Reset",
                    Body            = url
                };
                emailSender.SendMail(mail);
                return(Ok(new { messge = "Password Reset Link sent to specified email address", link = url }));
            }
            return(BadRequest(new { message = "Sorry User not found" }));
        }
Ejemplo n.º 2
0
        public bool SendMail(MailMessageObject mailMessage)
        {
            MyMail emailService = null;

            if (mailMessage.Attachments != null)
            {
                emailService = new MyMail(mailMessage.SenderAddress, mailMessage.Password, mailMessage.RecieverAddress, mailMessage.Subject, mailMessage.Body, mailMessage.Attachments);
            }
            else
            {
                emailService = new MyMail(mailMessage.SenderAddress, mailMessage.Password, mailMessage.RecieverAddress, mailMessage.Subject, mailMessage.Body);
            }

            if (emailService.Send())
            {
                return(true);
            }
            return(false);
        }