Exemple #1
0
        ObservableCollection <Email> emails;           // коллекция email-ов адресатов

        /// <summary>
        //// Непосредственно отправка писем
        /// </summary>
        /// <param name="dtSend"></param>
        /// <param name="emailSender"></param>
        /// <param name="emails"></param>
        public void SendEmails(DateTime dtSend, EmailSendServiceClass emailSender, ObservableCollection <Email> emails)
        {
            this.emailSender = emailSender; // Экземпляр класса, отвечающего за отправку писем, присваиваем
            this.dtSend      = dtSend;
            this.emails      = emails;
            timer.Tick      += Timer_Tick;
            timer.Interval   = new TimeSpan(0, 0, 1);
            timer.Start();
        }
        private void BtnSendLater_Click(object sender, RoutedEventArgs e)
        {
            SchedulerClass sc             = new SchedulerClass();
            TimeSpan       tsSendTime     = timePickerBox.TimeInterval;
            DateTime       dtSendDateTime = (cldSchedulDateTimes.SelectedDate ?? DateTime.Today).Add(tsSendTime);

            if (dtSendDateTime < DateTime.Now)
            {
                MessageBox.Show("Дата и время отправки писем не могут быть раньше, чем настоящее время");
                return;
            }
            EmailSendServiceClass emailSender = new EmailSendServiceClass(cbSenderSelect.Text,
                                                                          EncrypterDll.EncrypterLite.Deencrypt(cbSenderSelect.SelectedValue.ToString(), 10));

            var locator = (ViewModel.ViewModelLocator)FindResource("Locator");

            //sc.SendEmails(dtSendDateTime, emailSender, (IQueryable<Email>)dgEmails.ItemsSource);
            sc.SendEmails(dtSendDateTime, emailSender, locator.Main.ChosedEmails);
        }
        private void BtnSendNow_Click(object sender, RoutedEventArgs e)
        {
            string strLogin = cbSenderSelect.Text;

            if (string.IsNullOrEmpty(strLogin))
            {
                MessageBox.Show("Выберите отправителя");
                return;
            }

            string strPassword = cbSenderSelect.SelectedValue.ToString();

            if (string.IsNullOrEmpty(strPassword))
            {
                MessageBox.Show("Укажите пароль отправителя");
                return;
            }
            EmailSendServiceClass emailSender = new EmailSendServiceClass(strLogin,
                                                                          EncrypterDll.EncrypterLite.Deencrypt(strPassword, 10));

            emailSender.StrSmtp = cbSmtp.Text;
            if (string.IsNullOrEmpty(emailSender.StrSmtp))
            {
                MessageBox.Show("Укажите SMTP сервер для отправителя");
                return;
            }
            emailSender.MailBody = new TextRange(LetterBody.Document.ContentStart, LetterBody.Document.ContentEnd).Text;
            if (string.IsNullOrEmpty(emailSender.MailBody))
            {
                emailSender.MailBody = "Empty message";
            }
            emailSender.MailSubject = new TextRange(LetterSubject.Document.ContentStart, LetterSubject.Document.ContentEnd).Text;
            if (string.IsNullOrEmpty(emailSender.MailSubject))
            {
                emailSender.MailBody = "No name";
            }

            var locator = (ViewModel.ViewModelLocator)FindResource("Locator");

            //emailSender.SendMails((IQueryable<Email>)dgEmails.ItemsSource);
            emailSender.SendMails(locator.Main.ChosedEmails);
        }
Exemple #4
0
 private void SendMessageButton_Click(object sender, RoutedEventArgs e)
 {
     using (var letter = new EmailSendServiceClass())
     {
         try
         {
             //var letter = new EmailSendServiceClass();
             if (UserNameTextBox.Text != "")
             {
                 letter.DefineMailFromTo(UserNameTextBox.Text, "*****@*****.**");
             }
             letter.CreateMailText();
             letter.SendMail(PasswordEdit.Password.ToString());
         }
         catch (Exception exception)
         {
             MessageBox.Show(exception.Message, "При отправке сообщения возникла ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
             //var dlg = new MessageSendCompletedDlg(exception.Message);
             //dlg.ShowDialog();
         }
     }
 }