From f0936fcafb84e0cc366c40bb17ea1dc14a7248c7 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 21 Nov 2016 11:07:20 -0500 Subject: [PATCH] fixes #5225 --- src/posts/parse.js | 20 ++++++++++++++++++-- src/posts/user.js | 18 +----------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/posts/parse.js b/src/posts/parse.js index 28af97c5e6..e4b4cc7d3c 100644 --- a/src/posts/parse.js +++ b/src/posts/parse.js @@ -3,7 +3,9 @@ var nconf = require('nconf'); var url = require('url'); var winston = require('winston'); +var S = require('string'); +var meta = require('../meta'); var cache = require('./cache'); var plugins = require('../plugins'); var translator = require('../../public/src/modules/translator'); @@ -41,8 +43,7 @@ module.exports = function (Posts) { }; Posts.parseSignature = function (userData, uid, callback) { - userData.signature = userData.signature || ''; - + userData.signature = sanitizeSignature(userData.signature || ''); plugins.fireHook('filter:parse.signature', {userData: userData, uid: uid}, callback); }; @@ -73,4 +74,19 @@ module.exports = function (Posts) { return content; }; + + function sanitizeSignature(signature) { + var string = S(signature), + tagsToStrip = []; + + if (parseInt(meta.config['signatures:disableLinks'], 10) === 1) { + tagsToStrip.push('a'); + } + + if (parseInt(meta.config['signatures:disableImages'], 10) === 1) { + tagsToStrip.push('img'); + } + + return tagsToStrip.length ? string.stripTags.apply(string, tagsToStrip).s : signature; + } }; diff --git a/src/posts/user.js b/src/posts/user.js index 9a7fe38893..7f387ef894 100644 --- a/src/posts/user.js +++ b/src/posts/user.js @@ -84,7 +84,6 @@ module.exports = function (Posts) { } userData.custom_profile_info = results.customProfileInfo.profile; - userData.signature = sanitizeSignature(userData.signature); plugins.fireHook('filter:posts.modifyUserInfo', userData, next); }); @@ -128,19 +127,4 @@ module.exports = function (Posts) { user.isModerator(uid, cids, callback); }); }; -}; - -function sanitizeSignature(signature) { - var string = require('string')(signature), - tagsToStrip = []; - - if (parseInt(meta.config['signatures:disableLinks'], 10) === 1) { - tagsToStrip.push('a'); - } - - if (parseInt(meta.config['signatures:disableImages'], 10) === 1) { - tagsToStrip.push('img'); - } - - return tagsToStrip.length ? string.stripTags.apply(string, tagsToStrip).s : signature; -} \ No newline at end of file +}; \ No newline at end of file