/// <summary> /// Initialises recepients from entity <paramref name="value"/> and <paramref name="oldValue"/>. /// </summary> /// <param name="value">Recepients value.</param> /// <param name="oldValue">Old recepients value.</param> /// <returns>Recepients list.</returns> protected virtual List <string> InitializeRecepients(object value, object oldValue) { NewRecepientsEmails.Clear(); OldRecepientsEmails.Clear(); if (value != null) { List <string> emails = GetEmailsByFormatedEmails((string)value); NewRecepientsEmails = emails; NewEmails = NewEmails.Union(emails).Where(e => !e.IsNullOrEmpty()).ToList(); } if (oldValue != null) { List <string> emails = GetEmailsByFormatedEmails((string)oldValue); OldRecepientsEmails = emails; OldEmails = OldEmails.Union(emails).Where(e => !e.IsNullOrEmpty()).ToList(); } return(NewRecepientsEmails.Where(res => !OldRecepientsEmails.Contains(res)).ToList()); }
/// <summary> /// Adds previous and current sender email value to <see cref="NewEmails"/> and <see cref="OldEmails"/> lists. /// </summary> /// <param name="value"><see cref="Activity.Sender"/> column current value.</param> /// <param name="oldValue"><see cref="Activity.Sender"/> column previous value.</param> protected void SaveSenderEmailDiff(object value, object oldValue) { if (value != null) { string email = GetSenderEmail((string)value); if (email.IsNotEmpty()) { NewEmails.AddIfNotExists(email); } } if (oldValue != null) { string email = GetSenderEmail((string)oldValue); if (email.IsNotEmpty()) { OldEmails.AddIfNotExists(email); } } }
/// <summary> /// Gets all emails from email message. /// </summary> /// <returns>List all emails from email message</returns> protected virtual List <string> GetUsedEmails() { return(NewEmails.Where(res => !OldEmails.Contains(res)).ToList()); }