public void loadArchiveSelectedUserDate(string selectedUser, string search, string date) { String HTMLResult = "<p></p>"; if (this.InvokeRequired) { BeginInvoke(new loadArchiveSelectedUserDateDelegate(loadArchiveSelectedUserDate), new object[] { selectedUser, search }); return; } ResetHTML(); Emoticons myEmoticons = new Emoticons(Directory.GetCurrentDirectory() + "\\Emoticons\\"); List<Remwave.Client.Storage.StorageMessage> list = mStorage.GetMessageFromArchiveByDate(selectedUser, search, 2048,date); for (int i = list.Count - 1; i >= 0; i--) { JabberUser jabberUser = null; MessageStyle incomingStyle = new MessageStyle(Color.White, new System.Drawing.Font("Trebuchet MS", 8.5F, System.Drawing.FontStyle.Regular), Color.Black, Color.Red); MessageStyle outgoingStyle = new MessageStyle(Color.White, new System.Drawing.Font("Trebuchet MS", 8.5F, System.Drawing.FontStyle.Regular), Color.Black, Color.Blue); MessageTemplateType template = MessageTemplateType.Notification; MessageStyle style = new MessageStyle(Color.White, new System.Drawing.Font("Trebuchet MS", 8.5F, System.Drawing.FontStyle.Regular), Color.Gray, Color.Gray); String messageHTML = ""; if (list[i].ContentHTML != "") { messageHTML = list[i].ContentHTML; } else { messageHTML = list[i].ContentText; } //Compatibility with legacy text only messages if (list[i].Direction == StorageItemDirection.In) { style = incomingStyle; template = MessageTemplateType.In; jabberUser = new JabberUser(list[i].JID); } else { style = outgoingStyle; template = MessageTemplateType.Out; jabberUser = new JabberUser(mStorage.Username); } IMMessage message = new IMMessage(jabberUser.Nick, messageHTML, list[i].GUID, list[i].Created, style, template, myEmoticons); HTMLResult += message.HTML; } wbConversation.Document.Body.InnerHtml += HTMLResult; }
public void loadArchiveSelectedUserDate(string selectedUser, string search, string date) { String HTMLResult = "<p></p>"; if (this.InvokeRequired) { BeginInvoke(new loadArchiveSelectedUserDateDelegate(loadArchiveSelectedUserDate), new object[] { selectedUser, search }); return; } ResetHTML(); Emoticons myEmoticons = new Emoticons(Directory.GetCurrentDirectory() + "\\Emoticons\\"); List <Remwave.Client.Storage.StorageMessage> list = mStorage.GetMessageFromArchiveByDate(selectedUser, search, 2048, date); for (int i = list.Count - 1; i >= 0; i--) { JabberUser jabberUser = null; MessageStyle incomingStyle = new MessageStyle(Color.White, new System.Drawing.Font("Trebuchet MS", 8.5F, System.Drawing.FontStyle.Regular), Color.Black, Color.Red); MessageStyle outgoingStyle = new MessageStyle(Color.White, new System.Drawing.Font("Trebuchet MS", 8.5F, System.Drawing.FontStyle.Regular), Color.Black, Color.Blue); MessageTemplateType template = MessageTemplateType.Notification; MessageStyle style = new MessageStyle(Color.White, new System.Drawing.Font("Trebuchet MS", 8.5F, System.Drawing.FontStyle.Regular), Color.Gray, Color.Gray); String messageHTML = ""; if (list[i].ContentHTML != "") { messageHTML = list[i].ContentHTML; } else { messageHTML = list[i].ContentText; } //Compatibility with legacy text only messages if (list[i].Direction == StorageItemDirection.In) { style = incomingStyle; template = MessageTemplateType.In; jabberUser = new JabberUser(list[i].JID); } else { style = outgoingStyle; template = MessageTemplateType.Out; jabberUser = new JabberUser(mStorage.Username); } IMMessage message = new IMMessage(jabberUser.Nick, messageHTML, list[i].GUID, list[i].Created, style, template, myEmoticons); HTMLResult += message.HTML; } wbConversation.Document.Body.InnerHtml += HTMLResult; }
public IMMessage(String senderName, String messageText, String messageGUID, DateTime messageDateTime, MessageStyle style, MessageTemplateType template, Emoticons emoticons) { if (messageDateTime == null || messageDateTime == DateTime.MinValue) messageDateTime = DateTime.Now; this.Time = messageDateTime; if (messageGUID == null) messageGUID = Guid.NewGuid().ToString(); this.ID = NormalizeGUID(messageGUID); MessageTemplate tmplMessageTemplate = new MessageTemplate(template); tmplMessageTemplate.Message = tmplMessageTemplate.Message .Replace("<HEADER_ROW_STYLE>", tmplMessageTemplate.BuildStyle(style.Font, style.ForeColor, Color.White)) .Replace("<DATETIME_STYLE>", tmplMessageTemplate.BuildStyle(style.Font, Color.Gray, Color.White)) .Replace("<HEADER_STYLE>", tmplMessageTemplate.BuildStyle(style.Font, style.HeaderColor, Color.White)) .Replace("<ROW_STYLE>", tmplMessageTemplate.BuildStyle(style.Font, style.ForeColor, style.BackColor)) .Replace("<MESSAGE_STYLE>", tmplMessageTemplate.BuildStyle(style.Font, style.ForeColor, style.BackColor)) .Replace("<HEADER_TEXT>", senderName != "" ? senderName : "") .Replace("<DATETIME_TEXT>", messageDateTime.ToShortDateString() + " " + messageDateTime.ToShortTimeString()) .Replace("<GUID>", this.ID) .Replace("<MESSAGE_TEXT>", messageText.Replace("\r\n", "<BR />").Replace("\n", "<BR />")); tmplMessageTemplate.ProcessEmoticons(emoticons); this.HTML = tmplMessageTemplate.Message; this.Text = messageText; this.Style = style; }
public string ProcessEmoticons(Emoticons emoticons) { if (_Message != null && emoticons != null) { try { foreach (Emoticon myEmoticon in emoticons.List) { _Message = _Message //upper case .Replace(myEmoticon.Tag.ToUpper(), this.EmoticonTemplate .Replace("<FILENAME>", myEmoticon.Filename) .Replace("<WIDTH>", myEmoticon.Width.ToString()) .Replace("<HEIGHT>", myEmoticon.Height.ToString())) //lower case .Replace(myEmoticon.Tag.ToLower(), this.EmoticonTemplate .Replace("<FILENAME>", myEmoticon.Filename) .Replace("<WIDTH>", myEmoticon.Width.ToString()) .Replace("<HEIGHT>", myEmoticon.Height.ToString())) ; } } catch (Exception) { //throw; } } return _Message; }