summaryrefslogtreecommitdiffstats
path: root/models/users.js
diff options
context:
space:
mode:
authorMaxime Quandalle <maxime@quandalle.com>2015-10-22 04:02:12 +0200
committerMaxime Quandalle <maxime@quandalle.com>2015-10-22 18:13:12 +0200
commitaa974aa54ab6e5b7db7450206d12b44ffb3a0306 (patch)
treeb501ee16fa630e19b95d99ffc3984e30301e096a /models/users.js
parentc6b12dc5ada1b37d759796fefe0dbc5b327f130c (diff)
downloadwekan-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.js16
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,