Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions app/markdown/lib/parser/original/markdown.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
*/
import { Meteor } from 'meteor/meteor';
import { Random } from 'meteor/random';
import s from 'underscore.string';

import { settings } from '../../../../settings';

Expand Down Expand Up @@ -81,7 +80,7 @@ const parseNotEscaped = function(msg, message) {
return match;
}
const target = url.indexOf(Meteor.absoluteUrl()) === 0 ? '' : '_blank';
return addAsToken(message, `<a href="${ s.escapeHTML(url) }" title="${ s.escapeHTML(title) }" target="${ s.escapeHTML(target) }" rel="noopener noreferrer"><div class="inline-image" style="background-image: url(${ s.escapeHTML(url) });"></div></a>`);
return addAsToken(message, `<a href="${ url }" title="${ title }" target="${ target }" rel="noopener noreferrer"><div class="inline-image" style="background-image: url(${ url });"></div></a>`);
});

// Support [Text](http://link)
Expand All @@ -92,10 +91,10 @@ const parseNotEscaped = function(msg, message) {
const target = url.indexOf(Meteor.absoluteUrl()) === 0 ? '' : '_blank';
title = title.replace(/&amp;/g, '&');

let escapedUrl = s.escapeHTML(url);
let escapedUrl = url;
escapedUrl = escapedUrl.replace(/&amp;/g, '&');

return addAsToken(message, `<a href="${ escapedUrl }" target="${ s.escapeHTML(target) }" rel="noopener noreferrer">${ s.escapeHTML(title) }</a>`);
return addAsToken(message, `<a href="${ escapedUrl }" target="${ target }" rel="noopener noreferrer">${ title }</a>`);
});

// Support <http://link|Text>
Expand All @@ -104,7 +103,7 @@ const parseNotEscaped = function(msg, message) {
return match;
}
const target = url.indexOf(Meteor.absoluteUrl()) === 0 ? '' : '_blank';
return addAsToken(message, `<a href="${ s.escapeHTML(url) }" target="${ s.escapeHTML(target) }" rel="noopener noreferrer">${ s.escapeHTML(title) }</a>`);
return addAsToken(message, `<a href="${ url }" target="${ target }" rel="noopener noreferrer">${ title }</a>`);
});

return msg;
Expand Down
2 changes: 1 addition & 1 deletion app/markdown/tests/client.tests.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ const italicWrapper = (text) => wrapper(`<em>${ text }</em>`, '_');
const strikeWrapper = (text) => wrapper(`<strike>${ text }</strike>`, '~');
const headerWrapper = (text, level) => `<h${ level }>${ text }</h${ level }>`;
const quoteWrapper = (text) => `<blockquote class="background-transparent-darker-before"><span class="copyonly">&gt;</span>${ text }</blockquote>`;
const linkWrapped = (link, title) => `<a href="${ s.escapeHTML(link) }" target="_blank" rel="noopener noreferrer">${ s.escapeHTML(title) }</a>`;
const linkWrapped = (link, title) => `<a href="${ link }" target="_blank" rel="noopener noreferrer">${ title }</a>`;
const inlinecodeWrapper = (text) => wrapper(`<span><code class="code-colors inline">${ text }</code></span>`, '`');
const codeWrapper = (text, lang) => `<pre><code class='code-colors hljs ${ lang }'><span class='copyonly'>\`\`\`<br></span>${ text }<span class='copyonly'><br>\`\`\`</span></code></pre>`;

Expand Down