private void AppendMediumData(Model.Communication communication, StringBuilder sb, string key) { string value = communication.GetMediumDataValue(key); if (!string.IsNullOrWhiteSpace(value)) { AppendMediumData(sb, key, value); } }
/// <summary> /// Gets the read-only message details. /// </summary> /// <param name="communication">The communication.</param> /// <returns></returns> public override string GetMessageDetails(Model.Communication communication) { StringBuilder sb = new StringBuilder(); sb.AppendLine("<div class='row'>"); sb.AppendLine("<div class='col-md-6'>"); AppendMediumData(communication, sb, "FromName"); AppendMediumData(communication, sb, "FromAddress"); AppendMediumData(communication, sb, "ReplyTo"); AppendMediumData(communication, sb, "Subject"); sb.AppendLine("</div>"); sb.AppendLine("<div class='col-md-6'>"); AppendAttachmentData(sb, communication.GetMediumDataValue("Attachments")); sb.AppendLine("</div>"); sb.AppendLine("</div>"); string value = communication.GetMediumDataValue("HtmlMessage"); if (!string.IsNullOrWhiteSpace(value)) { AppendMediumData(sb, "HtmlMessage", string.Format(@" <iframe id='js-email-body-iframe' class='email-body'></iframe> <script id='email-body' type='text/template'>{0}</script> <script type='text/javascript'> var doc = document.getElementById('js-email-body-iframe').contentWindow.document; doc.open(); doc.write('<html><head><title></title></head><body>' + $('#email-body').html() + '</body></html>'); doc.close(); </script> ", value)); } AppendMediumData(communication, sb, "TextMessage"); return(sb.ToString()); }