From 5a137a0dd680d866a385d0aa3f448f7a68b0ac43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Sun, 29 Nov 2020 15:38:02 -0500 Subject: [PATCH] fix: guest handles to user displayname as well --- src/topics/index.js | 6 ++++-- src/topics/posts.js | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/topics/index.js b/src/topics/index.js index 99adfc9df2..ff864d19a4 100644 --- a/src/topics/index.js +++ b/src/topics/index.js @@ -1,6 +1,7 @@ 'use strict'; var _ = require('lodash'); +const validator = require('validator'); var db = require('../database'); var posts = require('../posts'); @@ -111,9 +112,10 @@ Topics.getTopicsByTids = async function (tids, options) { result.topics.forEach(function (topic, i) { if (topic) { topic.category = result.categoriesMap[topic.cid]; - topic.user = result.usersMap[topic.uid]; + topic.user = topic.uid ? result.usersMap[topic.uid] : { ...result.usersMap[topic.uid] }; if (result.tidToGuestHandle[topic.tid]) { - topic.user.username = result.tidToGuestHandle[topic.tid]; + topic.user.username = validator.escape(result.tidToGuestHandle[topic.tid]); + topic.user.displayname = topic.user.username; } topic.teaser = result.teasers[i] || null; topic.tags = tags[i]; diff --git a/src/topics/posts.js b/src/topics/posts.js index ae631be1ae..9ebf29a315 100644 --- a/src/topics/posts.js +++ b/src/topics/posts.js @@ -68,6 +68,7 @@ module.exports = function (Topics) { // Username override for guests, if enabled if (meta.config.allowGuestHandles && postObj.uid === 0 && postObj.handle) { postObj.user.username = validator.escape(String(postObj.handle)); + postObj.user.displayname = postObj.user.username; } } });