diff --git a/public/language/en-GB/pages.json b/public/language/en-GB/pages.json index 70f6cc24a3..607eac0f2c 100644 --- a/public/language/en-GB/pages.json +++ b/public/language/en-GB/pages.json @@ -55,6 +55,7 @@ "account/upvoted": "Posts upvoted by %1", "account/downvoted": "Posts downvoted by %1", "account/best": "Best posts made by %1", + "account/blocks": "Blocked users for %1", "confirm": "Email Confirmed", diff --git a/public/language/en-GB/user.json b/public/language/en-GB/user.json index 3dcf2521b4..7d6bbb63a1 100644 --- a/public/language/en-GB/user.json +++ b/public/language/en-GB/user.json @@ -31,6 +31,7 @@ "ignored": "Ignored", "followers": "Followers", "following": "Following", + "blocks": "Blocks", "aboutme": "About me", "signature": "Signature", "birthday": "Birthday", diff --git a/src/controllers/accounts.js b/src/controllers/accounts.js index a7aa1716b4..63ff87a10b 100644 --- a/src/controllers/accounts.js +++ b/src/controllers/accounts.js @@ -11,6 +11,7 @@ var accountsController = { notifications: require('./accounts/notifications'), chats: require('./accounts/chats'), session: require('./accounts/session'), + blocks: require('./accounts/blocks'), }; module.exports = accountsController; diff --git a/src/controllers/accounts/blocks.js b/src/controllers/accounts/blocks.js new file mode 100644 index 0000000000..c97ecca6ca --- /dev/null +++ b/src/controllers/accounts/blocks.js @@ -0,0 +1,33 @@ +'use strict'; + +var async = require('async'); + +var accountHelpers = require('./helpers'); + +var blocksController = {}; + +blocksController.getBlocks = function (req, res, callback) { + var userData; + + async.waterfall([ + function (next) { + accountHelpers.getUserDataByUserSlug(req.params.userslug, req.uid, next); + }, + function (_userData, next) { + userData = _userData; + if (!userData) { + return callback(); + } + + next(); + }, + ], function (err) { + if (err) { + return callback(err); + } + + res.render('account/blocks', userData); + }); +}; + +module.exports = blocksController; diff --git a/src/routes/accounts.js b/src/routes/accounts.js index f636a3a66e..e0a3acb6c8 100644 --- a/src/routes/accounts.js +++ b/src/routes/accounts.js @@ -13,6 +13,7 @@ module.exports = function (app, middleware, controllers) { setupPageRoute(app, '/user/:userslug', middleware, middlewares, controllers.accounts.profile.get); setupPageRoute(app, '/user/:userslug/following', middleware, middlewares, controllers.accounts.follow.getFollowing); setupPageRoute(app, '/user/:userslug/followers', middleware, middlewares, controllers.accounts.follow.getFollowers); + setupPageRoute(app, '/user/:userslug/blocks', middleware, middlewares, controllers.accounts.blocks.getBlocks); setupPageRoute(app, '/user/:userslug/posts', middleware, middlewares, controllers.accounts.posts.getPosts); setupPageRoute(app, '/user/:userslug/topics', middleware, middlewares, controllers.accounts.posts.getTopics); setupPageRoute(app, '/user/:userslug/best', middleware, middlewares, controllers.accounts.posts.getBestPosts);