Exemple #1
0
        public IHttpActionResult PostRecoveryPassword([FromUri] string email)
        {
            var user = db.Users.FirstOrDefault(x => x.Email == email);

            if (user == null)
            {
                return(NotFound());
            }

            var newpass = System.Web.Security.Membership.GeneratePassword(6, 0);


            var emailInput = new EmailInputDto();

            //var pat = db.Patients.Find(emailPostDto.appointment.PatientId);
            emailInput.UserName = user.FirstName + " " + user.LastName;
            emailInput.Email    = user.Email;
            emailInput.Subject  = "Відновлення пароля!";

            emailInput.Body =
                "Ваш парольно змінено\nНовий пароль:\n" + newpass +
                "\nБудь ласка змініть свій пароль при входженні в систему";
            try
            {
                EMailHelper.SendNotification(emailInput);
                user.Password        = HashHelper.sha256_hash(newpass);
                db.Entry(user).State = EntityState.Modified;
                db.SaveChanges();
                return(Ok());
            }
            catch (Exception)
            {
                return(BadRequest());
            }
        }
Exemple #2
0
        public static void SendConfirmRegisterNotification(EmailInputDto emailInput, int idUser)
        {
            var fromAddress = new MailAddress(Email, "Extra Air");
            var toAddress   = new MailAddress(emailInput.Email, emailInput.UserName);
            var html        = "Будь ласка підтвердіть реєстрацію свого акаунта перейшовши за посиланням: <a href=\"" + Path.WebClientPath
                              + "#/confirmRegistration/" + idUser + "\">link</a><br/>";

            var smtp = new SmtpClient
            {
                Host                  = "smtp.gmail.com",
                Port                  = 587,
                EnableSsl             = true,
                DeliveryMethod        = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials           = new NetworkCredential(fromAddress.Address, fromPassword)
            };

            var message = new MailMessage(fromAddress, toAddress);

            message.Subject = emailInput.Subject;
            message.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html));

            smtp.Send(message);
            smtp.Dispose();
            message.Dispose();
        }
        public IHttpActionResult SendConfirmRegisterEmail(int id)
        {
            var emailInput = new EmailInputDto();
            var client     = db.Clients.Find(id);

            emailInput.UserName = client.FirstName + client.LastName;
            emailInput.Email    = client.Email;
            emailInput.Subject  = "Підтвердження реєстрації!";

            try
            {
                EMailHelper.SendConfirmRegisterNotification(emailInput, id);
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }

            return(Ok());
        }
Exemple #4
0
        public static void SendNotification(EmailInputDto emailInput)
        {
            var fromAddress = new MailAddress(Email, "Extra Air");
            var toAddress   = new MailAddress(emailInput.Email, emailInput.UserName);
            var message     = new MailMessage(fromAddress, toAddress);

            var smtp = new SmtpClient
            {
                Host                  = "smtp.gmail.com",
                Port                  = 587,
                EnableSsl             = true,
                DeliveryMethod        = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials           = new NetworkCredential(fromAddress.Address, fromPassword)
            };

            message.Subject = emailInput.Subject;
            message.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(emailInput.Body, null, MediaTypeNames.Text.Html));

            smtp.Send(message);
            smtp.Dispose();
            message.Dispose();
        }