diff options
author | Maxime Quandalle <maxime@quandalle.com> | 2015-10-22 04:02:12 +0200 |
---|---|---|
committer | Maxime Quandalle <maxime@quandalle.com> | 2015-10-22 18:13:12 +0200 |
commit | aa974aa54ab6e5b7db7450206d12b44ffb3a0306 (patch) | |
tree | b501ee16fa630e19b95d99ffc3984e30301e096a /models/users.js | |
parent | c6b12dc5ada1b37d759796fefe0dbc5b327f130c (diff) | |
download | wekan-aa974aa54ab6e5b7db7450206d12b44ffb3a0306.tar.gz wekan-aa974aa54ab6e5b7db7450206d12b44ffb3a0306.tar.bz2 wekan-aa974aa54ab6e5b7db7450206d12b44ffb3a0306.zip |
Prefer ES5 methods over underscore utilities
Since 07cc454 (ie the switch to Meteor 1.2) we includes the `es5-shim`
polyfill to support methods like `Array.prototype.forEach` in a
consistent way across all supported browsers (IE8+).
MDG recently released a blog post recommending the use of these native
methods instead of underscore [0]. We know follow this recommendation.
This commit also favor some ES6 features (argument defaults,
destructing assignment) in places where we didn’t use them.
[0]: http://info.meteor.com/blog/es2015-get-started
Diffstat (limited to 'models/users.js')
-rw-r--r-- | models/users.js | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/models/users.js b/models/users.js index 1ea09a03..b35104ec 100644 --- a/models/users.js +++ b/models/users.js @@ -14,13 +14,13 @@ Users.helpers({ }, starredBoards() { - const starredBoardIds = this.profile.starredBoards || []; - return Boards.find({archived: false, _id: {$in: starredBoardIds}}); + const {starredBoards = []} = this.profile; + return Boards.find({archived: false, _id: {$in: starredBoards}}); }, hasStarred(boardId) { - const starredBoardIds = this.profile.starredBoards || []; - return _.contains(starredBoardIds, boardId); + const {starredBoards = []} = this.profile; + return _.contains(starredBoards, boardId); }, isBoardMember() { @@ -54,9 +54,9 @@ Users.helpers({ return profile.initials; else if (profile.fullname) { - return _.reduce(profile.fullname.split(/\s+/), (memo, word) => { + return profile.fullname.split(/\s+/).reduce((memo = '', word) => { return memo + word[0]; - }, '').toUpperCase(); + }).toUpperCase(); } else { return this.username[0].toUpperCase(); @@ -130,7 +130,7 @@ if (Meteor.isServer) { // b. We use it to find deleted and newly inserted ids by using it in one // direction and then in the other. function incrementBoards(boardsIds, inc) { - _.forEach(boardsIds, (boardId) => { + boardsIds.forEach((boardId) => { Boards.update(boardId, {$inc: {stars: inc}}); }); } @@ -149,7 +149,7 @@ if (Meteor.isServer) { // Insert the Welcome Board Boards.insert(ExampleBoard, (err, boardId) => { - _.forEach(['Basics', 'Advanced'], (title) => { + ['Basics', 'Advanced'].forEach((title) => { const list = { title, boardId, |