diff --git a/.eslintrc b/.eslintrc index 6bb90758a6..70abc88e1e 100644 --- a/.eslintrc +++ b/.eslintrc @@ -43,7 +43,7 @@ }], "no-else-return": [ "error", { "allowElseIf": true } ], "operator-linebreak": [ "error", "after" ], - "arrow-parens": ["error", "as-needed"], + "arrow-parens": ["error", "as-needed", { "requireForBlockBody": true }], // ES6 "prefer-rest-params": "off", diff --git a/src/categories/index.js b/src/categories/index.js index 395e0f1f56..7f2410efb5 100644 --- a/src/categories/index.js +++ b/src/categories/index.js @@ -146,7 +146,7 @@ Categories.getCategories = async function (cids, uid) { Categories.getTagWhitelist = async function (cids) { const cachedData = {}; - const nonCachedCids = cids.filter(cid => { + const nonCachedCids = cids.filter((cid) => { const data = cache.get('cid:' + cid + ':tag:whitelist'); const isInCache = data !== undefined; if (isInCache) { diff --git a/src/categories/recentreplies.js b/src/categories/recentreplies.js index 0c08c50b92..3e94cbf834 100644 --- a/src/categories/recentreplies.js +++ b/src/categories/recentreplies.js @@ -157,7 +157,7 @@ module.exports = function (Categories) { const bulkRemove = []; const bulkAdd = []; - postData.forEach(post => { + postData.forEach((post) => { bulkRemove.push(['cid:' + oldCid + ':uid:' + post.uid + ':pids', post.pid]); bulkRemove.push(['cid:' + oldCid + ':uid:' + post.uid + ':pids:votes', post.pid]); bulkAdd.push(['cid:' + cid + ':uid:' + post.uid + ':pids', post.timestamp, post.pid]); diff --git a/src/controllers/authentication.js b/src/controllers/authentication.js index 1840b372f8..968209f7d0 100644 --- a/src/controllers/authentication.js +++ b/src/controllers/authentication.js @@ -202,7 +202,7 @@ authenticationController.registerComplete = function (req, res, next) { delete payload.uid; delete payload.returnTo; - Object.keys(payload).forEach(prop => { + Object.keys(payload).forEach((prop) => { if (typeof payload[prop] === 'boolean') { payload[prop] = payload[prop] ? 1 : 0; } diff --git a/src/controllers/topics.js b/src/controllers/topics.js index 71a62d7bfd..155c4d14f4 100644 --- a/src/controllers/topics.js +++ b/src/controllers/topics.js @@ -238,7 +238,7 @@ async function addTags(topicData, req, res) { async function addOGImageTags(res, topicData, postAtIndex) { const uploads = postAtIndex ? await posts.uploads.listWithSizes(postAtIndex.pid) : []; - const images = uploads.map(upload => { + const images = uploads.map((upload) => { upload.name = nconf.get('url') + nconf.get('upload_url') + '/files/' + upload.name; return upload; }); diff --git a/src/database/index.js b/src/database/index.js index ae1f0e5446..818efb4fe0 100644 --- a/src/database/index.js +++ b/src/database/index.js @@ -12,7 +12,7 @@ if (!databaseName) { var primaryDB = require('./' + databaseName); primaryDB.parseIntFields = function (data, intFields, requestedFields) { - intFields.forEach(field => { + intFields.forEach((field) => { if (!requestedFields.length || requestedFields.includes(field)) { data[field] = parseInt(data[field], 10) || 0; } diff --git a/src/database/mongo/hash.js b/src/database/mongo/hash.js index 9ffacbef31..f9416d8206 100644 --- a/src/database/mongo/hash.js +++ b/src/database/mongo/hash.js @@ -86,7 +86,7 @@ module.exports = function (module) { const item = cachedData[key] || {}; const result = {}; - fields.forEach(field => { + fields.forEach((field) => { result[field] = item[field] !== undefined ? item[field] : null; }); return result; diff --git a/src/database/redis/hash.js b/src/database/redis/hash.js index 8cb00b156f..6dc2444283 100644 --- a/src/database/redis/hash.js +++ b/src/database/redis/hash.js @@ -117,7 +117,7 @@ module.exports = function (module) { const item = cachedData[key] || {}; const result = {}; - fields.forEach(field => { + fields.forEach((field) => { result[field] = item[field] !== undefined ? item[field] : null; }); return result; diff --git a/src/database/redis/sorted.js b/src/database/redis/sorted.js index 78077e1151..884d966df7 100644 --- a/src/database/redis/sorted.js +++ b/src/database/redis/sorted.js @@ -32,7 +32,7 @@ module.exports = function (module) { return []; } const batch = module.client.batch(); - key.forEach(key => { + key.forEach((key) => { batch[method]([key, start, stop, 'WITHSCORES']); }); let data = await helpers.execBatch(batch); diff --git a/src/messaging/create.js b/src/messaging/create.js index 6b83bee17e..7a126e1e60 100644 --- a/src/messaging/create.js +++ b/src/messaging/create.js @@ -6,7 +6,7 @@ var db = require('../database'); var user = require('../user'); module.exports = function (Messaging) { - Messaging.sendMessage = async data => { + Messaging.sendMessage = async (data) => { await Messaging.checkContent(data.content); const inRoom = await Messaging.isUserInRoom(data.uid, data.roomId); if (!inRoom) { @@ -16,7 +16,7 @@ module.exports = function (Messaging) { return await Messaging.addMessage(data); }; - Messaging.checkContent = async content => { + Messaging.checkContent = async (content) => { if (!content) { throw new Error('[[error:invalid-chat-message]]'); } @@ -32,7 +32,7 @@ module.exports = function (Messaging) { } }; - Messaging.addMessage = async data => { + Messaging.addMessage = async (data) => { const mid = await db.incrObjectField('global', 'nextMid'); const timestamp = data.timestamp || new Date().getTime(); let message = { diff --git a/src/messaging/data.js b/src/messaging/data.js index 54b891727f..982e51b746 100644 --- a/src/messaging/data.js +++ b/src/messaging/data.js @@ -77,7 +77,7 @@ module.exports = function (Messaging) { message.system = !!message.system; }); - messages = await Promise.all(messages.map(async message => { + messages = await Promise.all(messages.map(async (message) => { if (message.system) { return message; } diff --git a/src/messaging/index.js b/src/messaging/index.js index 1f1686de9b..2bcad1445b 100644 --- a/src/messaging/index.js +++ b/src/messaging/index.js @@ -20,7 +20,7 @@ require('./unread')(Messaging); require('./notifications')(Messaging); -Messaging.getMessages = async params => { +Messaging.getMessages = async (params) => { const isNew = params.isNew || false; const start = params.hasOwnProperty('start') ? params.start : 0; const stop = parseInt(start, 10) + ((params.count || 50) - 1); @@ -98,7 +98,7 @@ Messaging.getRecentChats = async (callerUid, uid, start, stop) => { const results = await utils.promiseParallel({ roomData: Messaging.getRoomsData(roomIds), unread: db.isSortedSetMembers('uid:' + uid + ':chat:rooms:unread', roomIds), - users: Promise.all(roomIds.map(async roomId => { + users: Promise.all(roomIds.map(async (roomId) => { let uids = await db.getSortedSetRevRange('chat:room:' + roomId + ':uids', 0, 9); uids = uids.filter(function (value) { return value && parseInt(value, 10) !== parseInt(uid, 10); diff --git a/src/messaging/rooms.js b/src/messaging/rooms.js index 6d8cce1870..ed5ae4ec6b 100644 --- a/src/messaging/rooms.js +++ b/src/messaging/rooms.js @@ -9,7 +9,7 @@ var privileges = require('../privileges'); var meta = require('../meta'); module.exports = function (Messaging) { - Messaging.getRoomData = async roomId => { + Messaging.getRoomData = async (roomId) => { const data = await db.getObject('chat:room:' + roomId); if (!data) { throw new Error('[[error:no-chat-room]]'); @@ -19,7 +19,7 @@ module.exports = function (Messaging) { return data; }; - Messaging.getRoomsData = async roomIds => { + Messaging.getRoomsData = async (roomIds) => { const roomData = await db.getObjects(roomIds.map(function (roomId) { return 'chat:room:' + roomId; })); diff --git a/src/messaging/unread.js b/src/messaging/unread.js index 7c202bddc6..436b88d24c 100644 --- a/src/messaging/unread.js +++ b/src/messaging/unread.js @@ -4,7 +4,7 @@ var db = require('../database'); var sockets = require('../socket.io'); module.exports = function (Messaging) { - Messaging.getUnreadCount = async uid => { + Messaging.getUnreadCount = async (uid) => { if (parseInt(uid, 10) <= 0) { return 0; } @@ -12,7 +12,7 @@ module.exports = function (Messaging) { return await db.sortedSetCard('uid:' + uid + ':chat:rooms:unread'); }; - Messaging.pushUnreadCount = async uid => { + Messaging.pushUnreadCount = async (uid) => { if (parseInt(uid, 10) <= 0) { return; } diff --git a/src/meta/templates.js b/src/meta/templates.js index 358ffdb1bb..7397f6c9ea 100644 --- a/src/meta/templates.js +++ b/src/meta/templates.js @@ -83,7 +83,7 @@ async function getTemplateDirs(activePlugins) { } async function getTemplateFiles(dirs) { - const buckets = await Promise.all(dirs.map(async dir => { + const buckets = await Promise.all(dirs.map(async (dir) => { let files = await file.walk(dir); files = files.filter(function (path) { return path.endsWith('.tpl'); @@ -132,7 +132,7 @@ async function compile() { files = await getTemplateDirs(files); files = await getTemplateFiles(files); - await Promise.all(Object.keys(files).map(async name => { + await Promise.all(Object.keys(files).map(async (name) => { const filePath = files[name]; let imported = await fsReadFile(filePath, 'utf8'); imported = await processImports(files, name, imported); diff --git a/src/meta/themes.js b/src/meta/themes.js index 41ccdd333a..9308b3d7fa 100644 --- a/src/meta/themes.js +++ b/src/meta/themes.js @@ -30,7 +30,7 @@ Themes.get = async () => { let themes = await getThemes(themePath); themes = _.flatten(themes).filter(Boolean); - themes = await Promise.all(themes.map(async theme => { + themes = await Promise.all(themes.map(async (theme) => { const config = path.join(themePath, theme, 'theme.json'); try { const file = await fsReadfile(config, 'utf8'); @@ -61,7 +61,7 @@ Themes.get = async () => { async function getThemes(themePath) { let dirs = await fsReaddir(themePath); dirs = dirs.filter(dir => themeNamePattern.test(dir) || dir.startsWith('@')); - return await Promise.all(dirs.map(async dir => { + return await Promise.all(dirs.map(async (dir) => { try { const dirpath = path.join(themePath, dir); const stat = await fsStat(dirpath); @@ -85,7 +85,7 @@ async function getThemes(themePath) { })); } -Themes.set = async data => { +Themes.set = async (data) => { const themeData = { 'theme:type': data.type, 'theme:id': data.id, diff --git a/src/middleware/header.js b/src/middleware/header.js index b723b009f5..3c14793b78 100644 --- a/src/middleware/header.js +++ b/src/middleware/header.js @@ -238,7 +238,7 @@ module.exports = function (middleware) { function (data, next) { async.parallel({ scripts: async.apply(plugins.fireHook, 'filter:scripts.get', []), - timeagoLocale: next => { + timeagoLocale: (next) => { async.waterfall([ async.apply(languages.listCodes), (languageCodes, next) => { diff --git a/src/plugins/hooks.js b/src/plugins/hooks.js index 260224aff8..671588b7d2 100644 --- a/src/plugins/hooks.js +++ b/src/plugins/hooks.js @@ -157,7 +157,7 @@ module.exports = function (Plugins) { next(); }, 5000); - const onError = err => { + const onError = (err) => { winston.error('[plugins] Error executing \'' + hook + '\' in plugin \'' + hookObj.id + '\''); winston.error(err); clearTimeout(timeoutId); diff --git a/src/plugins/load.js b/src/plugins/load.js index 9648e3168d..0da37acd27 100644 --- a/src/plugins/load.js +++ b/src/plugins/load.js @@ -88,7 +88,7 @@ module.exports = function (Plugins) { const fields = _.uniq(_.flatMap(targets, target => map[target] || [])); // clear old data before build - fields.forEach(field => { + fields.forEach((field) => { switch (field) { case 'clientScripts': case 'acpScripts': diff --git a/src/posts/uploads.js b/src/posts/uploads.js index 94fa9e36b0..8142f1b992 100644 --- a/src/posts/uploads.js +++ b/src/posts/uploads.js @@ -108,7 +108,7 @@ module.exports = function (Posts) { ]); }; - Posts.uploads.saveSize = async filePaths => { + Posts.uploads.saveSize = async (filePaths) => { await Promise.all(filePaths.map(async function (fileName) { try { const size = await image.size(path.join(pathPrefix, fileName)); diff --git a/src/posts/user.js b/src/posts/user.js index 8db9c62947..9205bed2f4 100644 --- a/src/posts/user.js +++ b/src/posts/user.js @@ -207,7 +207,7 @@ module.exports = function (Posts) { const bulkAdd = []; const bulkRemove = []; const postsByUser = {}; - mainPosts.forEach(post => { + mainPosts.forEach((post) => { bulkRemove.push(['cid:' + post.cid + ':uid:' + post.uid + ':tids', post.tid]); bulkRemove.push(['uid:' + post.uid + ':topics', post.tid]); diff --git a/src/prestart.js b/src/prestart.js index 76190400c6..49f6336499 100644 --- a/src/prestart.js +++ b/src/prestart.js @@ -22,7 +22,7 @@ function setupWinston() { formats.push(winston.format.timestamp()); formats.push(winston.format.json()); } else { - const timestampFormat = winston.format(info => { + const timestampFormat = winston.format((info) => { var dateString = new Date().toISOString() + ' [' + nconf.get('port') + '/' + global.process.pid + ']'; info.level = dateString + ' - ' + info.level; return info; diff --git a/src/privileges/helpers.js b/src/privileges/helpers.js index cad087d6f5..81659d510d 100644 --- a/src/privileges/helpers.js +++ b/src/privileges/helpers.js @@ -148,8 +148,8 @@ helpers.giveOrRescind = async function (method, privileges, cids, groupNames) { cids = Array.isArray(cids) ? cids : [cids]; for (const groupName of groupNames) { const groupKeys = []; - cids.forEach(cid => { - privileges.forEach(privilege => { + cids.forEach((cid) => { + privileges.forEach((privilege) => { groupKeys.push('cid:' + cid + ':privileges:groups:' + privilege); }); }); diff --git a/src/socket.io/modules.js b/src/socket.io/modules.js index c64b31cabc..1589fe1dad 100644 --- a/src/socket.io/modules.js +++ b/src/socket.io/modules.js @@ -166,7 +166,7 @@ SocketModules.chats.getUsersInRoom = function (socket, data, callback) { return callback(err); } - payload.users = payload.users.map(user => { + payload.users = payload.users.map((user) => { user.canKick = (parseInt(user.uid, 10) !== parseInt(socket.uid, 10)) && payload.isOwner; return user; }); diff --git a/src/topics/follow.js b/src/topics/follow.js index 0c3ed1145b..957e97a6de 100644 --- a/src/topics/follow.js +++ b/src/topics/follow.js @@ -90,7 +90,7 @@ module.exports = function (Topics) { return tids.map(() => ({ following: false, ignoring: false })); } const keys = []; - tids.forEach(tid => { + tids.forEach((tid) => { keys.push('tid:' + tid + ':followers', 'tid:' + tid + ':ignorers'); }); diff --git a/src/user/blocks.js b/src/user/blocks.js index 1466610360..c8fd75ed95 100644 --- a/src/user/blocks.js +++ b/src/user/blocks.js @@ -98,7 +98,7 @@ module.exports = function (User) { property = 'uid'; } - if (!Array.isArray(set) || !set.length || !set.every(item => { + if (!Array.isArray(set) || !set.length || !set.every((item) => { if (!item) { return false; }