diff --git a/src/controllers/accounts/info.js b/src/controllers/accounts/info.js index 7f9edb2462..cb3b6f1abf 100644 --- a/src/controllers/accounts/info.js +++ b/src/controllers/accounts/info.js @@ -47,24 +47,21 @@ infoController.get = function (req, res, callback) { }, }, next); }, - ], function (err, data) { - if (err) { - return callback(err); - } + function (data) { + userData.history = data.history; + userData.sessions = data.sessions; + userData.usernames = data.usernames; + userData.emails = data.emails; - userData.history = data.history; - userData.sessions = data.sessions; - userData.usernames = data.usernames; - userData.emails = data.emails; - - if (userData.isAdminOrGlobalModeratorOrModerator) { - userData.moderationNotes = data.notes.notes; - var pageCount = Math.ceil(data.notes.count / itemsPerPage); - userData.pagination = pagination.create(page, pageCount, req.query); - } - userData.title = '[[pages:account/info]]'; - userData.breadcrumbs = helpers.buildBreadcrumbs([{ text: userData.username, url: '/user/' + userData.userslug }, { text: '[[user:account_info]]' }]); + if (userData.isAdminOrGlobalModeratorOrModerator) { + userData.moderationNotes = data.notes.notes; + var pageCount = Math.ceil(data.notes.count / itemsPerPage); + userData.pagination = pagination.create(page, pageCount, req.query); + } + userData.title = '[[pages:account/info]]'; + userData.breadcrumbs = helpers.buildBreadcrumbs([{ text: userData.username, url: '/user/' + userData.userslug }, { text: '[[user:account_info]]' }]); - res.render('account/info', userData); - }); + res.render('account/info', userData); + }, + ], callback); }; diff --git a/src/user/info.js b/src/user/info.js index e8642989a1..5e91c6cf08 100644 --- a/src/user/info.js +++ b/src/user/info.js @@ -166,6 +166,7 @@ module.exports = function (User) { var data = JSON.parse(note); uids.push(data.uid); data.timestampISO = utils.toISOString(data.timestamp); + data.note = validator.escape(String(data.note)); return data; } catch (err) { return next(err); diff --git a/test/user.js b/test/user.js index a5f92a1744..77144ea9c7 100644 --- a/test/user.js +++ b/test/user.js @@ -1236,15 +1236,16 @@ describe('User', function () { setTimeout(next, 50); }, function (next) { - socketUser.setModerationNote({ uid: adminUid }, { uid: testUid, note: 'second moderation note' }, next); + socketUser.setModerationNote({ uid: adminUid }, { uid: testUid, note: '