Ejemplo n.º 1
0
        public async Task <bool> SendMailAsync(SendMailParamsDto dto)
        {
            var msg = new MailMessage {
                From = new MailAddress(_configuration["EmailSetting:UserName"], "Giza Systems Web Services")
            };

            foreach (var to in dto.ToList)
            {
                msg.To.Add(to);
            }

            foreach (var cc in dto.CcList)
            {
                msg.CC.Add(cc);
            }

            msg.Subject    = dto.MessageTitle;
            msg.IsBodyHtml = dto.IsHtml;
            msg.Body       = dto.MessageBody;

            var smtp = new SmtpClient(_configuration["EmailSetting:Smtp"])
            {
                Credentials = new System.Net.NetworkCredential(_configuration["EmailSetting:UserName"],
                                                               _configuration["EmailSetting:Password"])
            };

            await smtp.SendMailAsync(msg);

            msg.Dispose();

            return(true);
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> ForgetPassword(ForgetPasswordDto model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var user = await _userManager.FindByEmailAsync(model.EmailAddress);

            if (user == null)
            {
                TempData["clientMessage"] =
                    Helper.PrepareClientMessage("Invalid email address.", DataEnum.ClientMessageType.Error);
                return(View(model));
            }

            var token = await _userManager.GeneratePasswordResetTokenAsync(user);

            var message = "Dear: " + model.EmailAddress;

            message += "<br/>Please follow the link below to reset your password<br>";
            message += _configuration["WebsiteUrl"] + "/home/resetpassword?token=" + token + "&email=" + model.EmailAddress;

            var messageParams = new SendMailParamsDto
            {
                ToList = new List <string> {
                    model.EmailAddress
                },
                IsHtml       = true,
                MessageBody  = message,
                MessageTitle = _configuration["WebsiteName"] + ": Reset password"
            };
            var result = await _emailServices.SendMailAsync(messageParams);

            if (result)
            {
                TempData["clientMessage"] =
                    Helper.PrepareClientMessage("Reset password link sent to your email address.",
                                                DataEnum.ClientMessageType.Success);
                return(View());
            }

            TempData["clientMessage"] = Helper.PrepareClientMessage("An error occured while sending the email.",
                                                                    DataEnum.ClientMessageType.Error);

            return(View());
        }