public static void OnEmailWeek(DateTime date) { new Thread(() => { try { var startEndWeek = TimeServer.StartEndWeek(date); DateTime start = startEndWeek[0]; DateTime end = startEndWeek[1]; var days = DataBaseManager.Instance.DaysInRange(start, end); using (MailMessage msg = new MailMessage(AppSettings.Instance.FromAddress, AppSettings.Instance.ToAddress)) { SmtpClient smtp = new SmtpClient(); NetworkCredential basicCredential = new NetworkCredential(AppSettings.Instance.FromUser, AppSettings.Instance.FromPass); smtp.EnableSsl = AppSettings.Instance.SslEmail == "true"; smtp.Port = Convert.ToInt32(AppSettings.Instance.FromPort); smtp.DeliveryMethod = SmtpDeliveryMethod.Network; smtp.UseDefaultCredentials = false; smtp.Credentials = basicCredential; smtp.Host = AppSettings.Instance.EmailHost; msg.Subject = "Time"; msg.Attachments.Add(new Attachment(SaveReport(DaysToHtml(days), start, end))); msg.Body = "Auto generated time report."; smtp.Send(msg); MessageBox.Show("Mail sent!"); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }).Start(); }
public static void OnPreviewWeek(DateTime date) { try { var startEndWeek = TimeServer.StartEndWeek(date); DateTime start = startEndWeek[0]; DateTime end = startEndWeek[1]; var days = DataBaseManager.Instance.DaysInRange(start, end); Process.Start(SaveReport(DaysToHtml(days), start, end)); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }