public async Task SendSurveyEmailToUnregisteredUsersAsync(int surveyId)
        {
            var unregisteredUsers = await _unregisteredUserRepository.GetAllAsync();

            List <UnregisteredUser> unregisteredUsersToIdentify = new List <UnregisteredUser> ();

            foreach (var unregisteredUser in unregisteredUsers)
            {
                if (unregisteredUser.Role != "careerOffice")
                {
                    unregisteredUsersToIdentify.Add(unregisteredUser);
                    var message = new MimeMessage();
                    message.From.Add(new MailboxAddress(_emailConfiguration.Name, _emailConfiguration.SmtpUsername));
                    message.To.Add(new MailboxAddress(unregisteredUser.Name, unregisteredUser.Email));
                    message.Subject = "Monitorowanie karier - ankieta";
                    message.Body    = new TextPart("html")
                    {
                        Text = _emailContent.SurveyEmail(surveyId, CalculateEmailHash(unregisteredUser.Email))
                    };
                    await _emailFactory.SendEmailAsync(message);
                }
            }
            foreach (var unregisteredUserToIdentify in unregisteredUsersToIdentify)
            {
                await _surveyUserIdentifierService.CreateAsync(unregisteredUserToIdentify.Email, surveyId);
            }
        }
Esempio n. 2
0
        public async Task SendEmailToAllUnregisteredAsync(string subject, string body)
        {
            var unregisteredUsers = await _unregisteredUserRepository.GetAllAsync();

            foreach (var unregisteredUser in unregisteredUsers)
            {
                if (unregisteredUser.Role != "careerOffice")
                {
                    var message = new MimeMessage();
                    message.From.Add(new MailboxAddress(_emailConfiguration.Name, _emailConfiguration.SmtpUsername));
                    message.To.Add(new MailboxAddress(unregisteredUser.Name, unregisteredUser.Email));
                    message.Subject = subject;
                    message.Body    = new TextPart("html")
                    {
                        Text = body
                    };
                    await _emailFactory.SendEmailAsync(message);
                }
            }
        }
Esempio n. 3
0
 public async Task <IEnumerable <UnregisteredUser> > GetAllAsync()
 {
     return(await _unregisteredUserRepository.GetAllAsync());
 }