diff --git a/app/assets/javascripts/admin/models/report.js.es6 b/app/assets/javascripts/admin/models/report.js.es6 index 5fa9ffa39e..2bd9485d37 100644 --- a/app/assets/javascripts/admin/models/report.js.es6 +++ b/app/assets/javascripts/admin/models/report.js.es6 @@ -304,7 +304,7 @@ const Report = Discourse.Model.extend({ avatar_template: row[properties.avatar] }); - const href = `/admin/users/${userId}/${username}`; + const href = Discourse.getURL(`/admin/users/${userId}/${username}`); const avatarImg = renderAvatar(user, { imageSize: "tiny", @@ -327,7 +327,7 @@ const Report = Discourse.Model.extend({ const formatedValue = () => { const topicId = row[properties.id]; - const href = `/t/-/${topicId}`; + const href = Discourse.getURL(`/t/-/${topicId}`); return `${topicTitle}`; }; @@ -341,7 +341,7 @@ const Report = Discourse.Model.extend({ const postTitle = row[properties.truncated_raw]; const postNumber = row[properties.number]; const topicId = row[properties.topic_id]; - const href = `/t/-/${topicId}/${postNumber}`; + const href = Discourse.getURL(`/t/-/${topicId}/${postNumber}`); return { property: properties.title, @@ -395,7 +395,7 @@ const Report = Discourse.Model.extend({ _linkLabel(properties, row) { const property = properties[0]; - const value = row[property]; + const value = Discourse.getURL(row[property]); const formatedValue = (href, anchor) => { return `${escapeExpression( anchor diff --git a/test/javascripts/models/report-test.js.es6 b/test/javascripts/models/report-test.js.es6 index 702017fe36..888b9fef14 100644 --- a/test/javascripts/models/report-test.js.es6 +++ b/test/javascripts/models/report-test.js.es6 @@ -515,4 +515,22 @@ QUnit.test("computed labels", assert => { "This is the beginning of" ); assert.equal(computedPostLabel.value, "This is the beginning of"); + + // subfolder support + Discourse.BaseUri = "/forum"; + + const postLink = computedLabels[5].compute(row).formatedValue; + assert.equal( + postLink, + "This is the beginning of" + ); + + const topicLink = computedLabels[4].compute(row).formatedValue; + assert.equal(topicLink, "Test topic"); + + const userLink = computedLabels[0].compute(row).formatedValue; + assert.equal( + userLink, + "joffrey" + ); });