diff --git a/app/assets/javascripts/discourse/components/markdown.js b/app/assets/javascripts/discourse/components/markdown.js index 8f67853f53f..51ade57eb6e 100644 --- a/app/assets/javascripts/discourse/components/markdown.js +++ b/app/assets/javascripts/discourse/components/markdown.js @@ -109,7 +109,8 @@ Discourse.Markdown = { // Extract quotes so their contents are not passed through markdown. converter.hooks.chain("preConversion", function(text) { - var extracted = Discourse.BBCode.extractQuotes(text); + var formated = Discourse.BBCode.format(text, opts); + var extracted = Discourse.BBCode.extractQuotes(formated); quoteTemplate = extracted.template; return extracted.text; }); @@ -184,7 +185,7 @@ Discourse.Markdown = { text = quoteTemplate(text); } - return Discourse.BBCode.format(text, opts); + return text; }); if (opts.sanitize) { diff --git a/test/javascripts/components/markdown_test.js b/test/javascripts/components/markdown_test.js index 83d94cb6c7e..2903f95d2be 100644 --- a/test/javascripts/components/markdown_test.js +++ b/test/javascripts/components/markdown_test.js @@ -68,14 +68,14 @@ test("Links", function() { test("Quotes", function() { cookedOptions("1[quote=\"bob, post:1\"]my quote[/quote]2", { topicId: 2, lookupAvatar: function(name) { return "" + name; } }, - "
1
\n
\n2
1
2
", "handles quotes properly"); cookedOptions("1[quote=\"bob, post:1\"]my quote[/quote]2", { topicId: 2, lookupAvatar: function(name) { } }, - "1
\n
\n2
1
2
", "includes no avatar if none is found"); }); @@ -118,4 +118,10 @@ test("SanitizeHTML", function() { equal(sanitizeHtml(""), ""); equal(sanitizeHtml("hello
hello