From 74402df462a0efa0b015792ee8c77a16dc72bedb Mon Sep 17 00:00:00 2001 From: hmhealey Date: Thu, 22 Oct 2015 09:47:04 -0400 Subject: Fixed improperly quoted html attributes for emoticons --- web/react/utils/emoticons.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'web/react') diff --git a/web/react/utils/emoticons.jsx b/web/react/utils/emoticons.jsx index 7b43e48b4..aabddcffd 100644 --- a/web/react/utils/emoticons.jsx +++ b/web/react/utils/emoticons.jsx @@ -133,7 +133,7 @@ export function handleEmoticons(text, tokens) { const alias = `MM_EMOTICON${index}`; tokens.set(alias, { - value: `${match}`, + value: `${match}`, originalText: match }); -- cgit v1.2.3-1-g7c22 From 25e018ece082a8136024b6d0a6c9db46cb113db1 Mon Sep 17 00:00:00 2001 From: hmhealey Date: Thu, 22 Oct 2015 09:47:28 -0400 Subject: Changed markdown renderer to only parse emoticons twice --- web/react/utils/markdown.jsx | 7 ++++++- web/react/utils/text_formatting.jsx | 9 +++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'web/react') diff --git a/web/react/utils/markdown.jsx b/web/react/utils/markdown.jsx index 1b699bc98..7a4e70054 100644 --- a/web/react/utils/markdown.jsx +++ b/web/react/utils/markdown.jsx @@ -11,6 +11,7 @@ export class MattermostMarkdownRenderer extends marked.Renderer { super(options); this.heading = this.heading.bind(this); + this.paragraph = this.paragraph.bind(this); this.text = this.text.bind(this); this.formattingOptions = formattingOptions; @@ -53,7 +54,11 @@ export class MattermostMarkdownRenderer extends marked.Renderer { } paragraph(text) { - let outText = TextFormatting.doFormatText(text, this.options); + let outText = text; + + if (!('emoticons' in this.options) || this.options.emoticon) { + outText = TextFormatting.doFormatEmoticons(text); + } if (this.formattingOptions.singleline) { return `

${outText}

`; diff --git a/web/react/utils/text_formatting.jsx b/web/react/utils/text_formatting.jsx index d79aeed68..5c2e68f1e 100644 --- a/web/react/utils/text_formatting.jsx +++ b/web/react/utils/text_formatting.jsx @@ -69,6 +69,15 @@ export function doFormatText(text, options) { return output; } +export function doFormatEmoticons(text) { + const tokens = new Map(); + + let output = Emoticons.handleEmoticons(text, tokens); + output = replaceTokens(output, tokens); + + return output; +} + export function sanitizeHtml(text) { let output = text; -- cgit v1.2.3-1-g7c22