|
@@ -7,7 +7,6 @@
|
|
|
// Fix any style issues and re-enable lint.
|
|
// Fix any style issues and re-enable lint.
|
|
|
/*
|
|
/*
|
|
|
* decaffeinate suggestions:
|
|
* decaffeinate suggestions:
|
|
|
- * DS102: Remove unnecessary code created because of implicit returns
|
|
|
|
|
* DS207: Consider shorter variations of null checks
|
|
* DS207: Consider shorter variations of null checks
|
|
|
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
|
|
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
|
|
|
*/
|
|
*/
|
|
@@ -29,7 +28,7 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
logger.debug({ projectId }, 'fetching invites for project')
|
|
logger.debug({ projectId }, 'fetching invites for project')
|
|
|
- return ProjectInvite.find({ projectId }, function (err, invites) {
|
|
|
|
|
|
|
+ ProjectInvite.find({ projectId }, function (err, invites) {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
OError.tag(err, 'error getting invites from mongo', {
|
|
OError.tag(err, 'error getting invites from mongo', {
|
|
|
projectId,
|
|
projectId,
|
|
@@ -40,7 +39,7 @@ const CollaboratorsInviteHandler = {
|
|
|
{ projectId, count: invites.length },
|
|
{ projectId, count: invites.length },
|
|
|
'found invites for project'
|
|
'found invites for project'
|
|
|
)
|
|
)
|
|
|
- return callback(null, invites)
|
|
|
|
|
|
|
+ callback(null, invites)
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
|
|
|
|
@@ -49,14 +48,14 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
logger.debug({ projectId }, 'counting invites for project')
|
|
logger.debug({ projectId }, 'counting invites for project')
|
|
|
- return ProjectInvite.countDocuments({ projectId }, function (err, count) {
|
|
|
|
|
|
|
+ ProjectInvite.countDocuments({ projectId }, function (err, count) {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
OError.tag(err, 'error getting invites from mongo', {
|
|
OError.tag(err, 'error getting invites from mongo', {
|
|
|
projectId,
|
|
projectId,
|
|
|
})
|
|
})
|
|
|
return callback(err)
|
|
return callback(err)
|
|
|
}
|
|
}
|
|
|
- return callback(null, count)
|
|
|
|
|
|
|
+ callback(null, count)
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
|
|
|
|
@@ -65,7 +64,7 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
const { email } = invite
|
|
const { email } = invite
|
|
|
- return UserGetter.getUserByAnyEmail(
|
|
|
|
|
|
|
+ UserGetter.getUserByAnyEmail(
|
|
|
email,
|
|
email,
|
|
|
{ _id: 1 },
|
|
{ _id: 1 },
|
|
|
function (err, existingUser) {
|
|
function (err, existingUser) {
|
|
@@ -83,7 +82,7 @@ const CollaboratorsInviteHandler = {
|
|
|
)
|
|
)
|
|
|
return callback(null)
|
|
return callback(null)
|
|
|
}
|
|
}
|
|
|
- return ProjectGetter.getProject(
|
|
|
|
|
|
|
+ ProjectGetter.getProject(
|
|
|
projectId,
|
|
projectId,
|
|
|
{ _id: 1, name: 1 },
|
|
{ _id: 1, name: 1 },
|
|
|
function (err, project) {
|
|
function (err, project) {
|
|
@@ -101,7 +100,7 @@ const CollaboratorsInviteHandler = {
|
|
|
)
|
|
)
|
|
|
return callback(null)
|
|
return callback(null)
|
|
|
}
|
|
}
|
|
|
- return NotificationsBuilder.projectInvite(
|
|
|
|
|
|
|
+ NotificationsBuilder.projectInvite(
|
|
|
invite,
|
|
invite,
|
|
|
project,
|
|
project,
|
|
|
sendingUser,
|
|
sendingUser,
|
|
@@ -117,7 +116,7 @@ const CollaboratorsInviteHandler = {
|
|
|
if (callback == null) {
|
|
if (callback == null) {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
- return NotificationsBuilder.projectInvite(
|
|
|
|
|
|
|
+ NotificationsBuilder.projectInvite(
|
|
|
{ _id: inviteId },
|
|
{ _id: inviteId },
|
|
|
null,
|
|
null,
|
|
|
null,
|
|
null,
|
|
@@ -133,7 +132,7 @@ const CollaboratorsInviteHandler = {
|
|
|
{ projectId, inviteId: invite._id },
|
|
{ projectId, inviteId: invite._id },
|
|
|
'sending notification and email for invite'
|
|
'sending notification and email for invite'
|
|
|
)
|
|
)
|
|
|
- return CollaboratorsEmailHandler.notifyUserOfProjectInvite(
|
|
|
|
|
|
|
+ CollaboratorsEmailHandler.notifyUserOfProjectInvite(
|
|
|
projectId,
|
|
projectId,
|
|
|
invite.email,
|
|
invite.email,
|
|
|
invite,
|
|
invite,
|
|
@@ -142,7 +141,7 @@ const CollaboratorsInviteHandler = {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
return callback(err)
|
|
return callback(err)
|
|
|
}
|
|
}
|
|
|
- return CollaboratorsInviteHandler._trySendInviteNotification(
|
|
|
|
|
|
|
+ CollaboratorsInviteHandler._trySendInviteNotification(
|
|
|
projectId,
|
|
projectId,
|
|
|
sendingUser,
|
|
sendingUser,
|
|
|
invite,
|
|
invite,
|
|
@@ -150,7 +149,7 @@ const CollaboratorsInviteHandler = {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
return callback(err)
|
|
return callback(err)
|
|
|
}
|
|
}
|
|
|
- return callback()
|
|
|
|
|
|
|
+ callback()
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
@@ -165,7 +164,7 @@ const CollaboratorsInviteHandler = {
|
|
|
{ projectId, sendingUserId: sendingUser._id, email, privileges },
|
|
{ projectId, sendingUserId: sendingUser._id, email, privileges },
|
|
|
'adding invite'
|
|
'adding invite'
|
|
|
)
|
|
)
|
|
|
- return Crypto.randomBytes(24, function (err, buffer) {
|
|
|
|
|
|
|
+ Crypto.randomBytes(24, function (err, buffer) {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
OError.tag(err, 'error generating random token', {
|
|
OError.tag(err, 'error generating random token', {
|
|
|
projectId,
|
|
projectId,
|
|
@@ -182,7 +181,7 @@ const CollaboratorsInviteHandler = {
|
|
|
projectId,
|
|
projectId,
|
|
|
privileges,
|
|
privileges,
|
|
|
})
|
|
})
|
|
|
- return invite.save(function (err, invite) {
|
|
|
|
|
|
|
+ invite.save(function (err, invite) {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
OError.tag(err, 'error saving token', {
|
|
OError.tag(err, 'error saving token', {
|
|
|
projectId,
|
|
projectId,
|
|
@@ -205,7 +204,7 @@ const CollaboratorsInviteHandler = {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
|
- return callback(null, invite)
|
|
|
|
|
|
|
+ callback(null, invite)
|
|
|
})
|
|
})
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
@@ -215,23 +214,20 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
logger.debug({ projectId, inviteId }, 'removing invite')
|
|
logger.debug({ projectId, inviteId }, 'removing invite')
|
|
|
- return ProjectInvite.deleteOne(
|
|
|
|
|
- { projectId, _id: inviteId },
|
|
|
|
|
- function (err) {
|
|
|
|
|
- if (err != null) {
|
|
|
|
|
- OError.tag(err, 'error removing invite', {
|
|
|
|
|
- projectId,
|
|
|
|
|
- inviteId,
|
|
|
|
|
- })
|
|
|
|
|
- return callback(err)
|
|
|
|
|
- }
|
|
|
|
|
- CollaboratorsInviteHandler._tryCancelInviteNotification(
|
|
|
|
|
|
|
+ ProjectInvite.deleteOne({ projectId, _id: inviteId }, function (err) {
|
|
|
|
|
+ if (err != null) {
|
|
|
|
|
+ OError.tag(err, 'error removing invite', {
|
|
|
|
|
+ projectId,
|
|
|
inviteId,
|
|
inviteId,
|
|
|
- function () {}
|
|
|
|
|
- )
|
|
|
|
|
- return callback(null)
|
|
|
|
|
|
|
+ })
|
|
|
|
|
+ return callback(err)
|
|
|
}
|
|
}
|
|
|
- )
|
|
|
|
|
|
|
+ CollaboratorsInviteHandler._tryCancelInviteNotification(
|
|
|
|
|
+ inviteId,
|
|
|
|
|
+ function () {}
|
|
|
|
|
+ )
|
|
|
|
|
+ callback(null)
|
|
|
|
|
+ })
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
resendInvite(projectId, sendingUser, inviteId, callback) {
|
|
resendInvite(projectId, sendingUser, inviteId, callback) {
|
|
@@ -239,40 +235,37 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
logger.debug({ projectId, inviteId }, 'resending invite email')
|
|
logger.debug({ projectId, inviteId }, 'resending invite email')
|
|
|
- return ProjectInvite.findOne(
|
|
|
|
|
- { _id: inviteId, projectId },
|
|
|
|
|
- function (err, invite) {
|
|
|
|
|
- if (err != null) {
|
|
|
|
|
- OError.tag(err, 'error finding invite', {
|
|
|
|
|
- projectId,
|
|
|
|
|
- inviteId,
|
|
|
|
|
- })
|
|
|
|
|
- return callback(err)
|
|
|
|
|
- }
|
|
|
|
|
- if (invite == null) {
|
|
|
|
|
- logger.err(
|
|
|
|
|
- { err, projectId, inviteId },
|
|
|
|
|
- 'no invite found, nothing to resend'
|
|
|
|
|
- )
|
|
|
|
|
- return callback(null)
|
|
|
|
|
- }
|
|
|
|
|
- return CollaboratorsInviteHandler._sendMessages(
|
|
|
|
|
|
|
+ ProjectInvite.findOne({ _id: inviteId, projectId }, function (err, invite) {
|
|
|
|
|
+ if (err != null) {
|
|
|
|
|
+ OError.tag(err, 'error finding invite', {
|
|
|
projectId,
|
|
projectId,
|
|
|
- sendingUser,
|
|
|
|
|
- invite,
|
|
|
|
|
- function (err) {
|
|
|
|
|
- if (err != null) {
|
|
|
|
|
- OError.tag(err, 'error resending invite messages', {
|
|
|
|
|
- projectId,
|
|
|
|
|
- inviteId,
|
|
|
|
|
- })
|
|
|
|
|
- return callback(err)
|
|
|
|
|
- }
|
|
|
|
|
- return callback(null)
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ inviteId,
|
|
|
|
|
+ })
|
|
|
|
|
+ return callback(err)
|
|
|
|
|
+ }
|
|
|
|
|
+ if (invite == null) {
|
|
|
|
|
+ logger.err(
|
|
|
|
|
+ { err, projectId, inviteId },
|
|
|
|
|
+ 'no invite found, nothing to resend'
|
|
|
)
|
|
)
|
|
|
|
|
+ return callback(null)
|
|
|
}
|
|
}
|
|
|
- )
|
|
|
|
|
|
|
+ CollaboratorsInviteHandler._sendMessages(
|
|
|
|
|
+ projectId,
|
|
|
|
|
+ sendingUser,
|
|
|
|
|
+ invite,
|
|
|
|
|
+ function (err) {
|
|
|
|
|
+ if (err != null) {
|
|
|
|
|
+ OError.tag(err, 'error resending invite messages', {
|
|
|
|
|
+ projectId,
|
|
|
|
|
+ inviteId,
|
|
|
|
|
+ })
|
|
|
|
|
+ return callback(err)
|
|
|
|
|
+ }
|
|
|
|
|
+ callback(null)
|
|
|
|
|
+ }
|
|
|
|
|
+ )
|
|
|
|
|
+ })
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
getInviteByToken(projectId, tokenString, callback) {
|
|
getInviteByToken(projectId, tokenString, callback) {
|
|
@@ -280,7 +273,7 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
logger.debug({ projectId }, 'fetching invite by token')
|
|
logger.debug({ projectId }, 'fetching invite by token')
|
|
|
- return ProjectInvite.findOne(
|
|
|
|
|
|
|
+ ProjectInvite.findOne(
|
|
|
{ projectId, token: tokenString },
|
|
{ projectId, token: tokenString },
|
|
|
function (err, invite) {
|
|
function (err, invite) {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
@@ -293,7 +286,7 @@ const CollaboratorsInviteHandler = {
|
|
|
logger.err({ err, projectId }, 'no invite found')
|
|
logger.err({ err, projectId }, 'no invite found')
|
|
|
return callback(null, null)
|
|
return callback(null, null)
|
|
|
}
|
|
}
|
|
|
- return callback(null, invite)
|
|
|
|
|
|
|
+ callback(null, invite)
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|
|
|
},
|
|
},
|
|
@@ -303,7 +296,7 @@ const CollaboratorsInviteHandler = {
|
|
|
callback = function () {}
|
|
callback = function () {}
|
|
|
}
|
|
}
|
|
|
logger.debug({ projectId, userId: user._id }, 'accepting invite')
|
|
logger.debug({ projectId, userId: user._id }, 'accepting invite')
|
|
|
- return CollaboratorsInviteHandler.getInviteByToken(
|
|
|
|
|
|
|
+ CollaboratorsInviteHandler.getInviteByToken(
|
|
|
projectId,
|
|
projectId,
|
|
|
tokenString,
|
|
tokenString,
|
|
|
function (err, invite) {
|
|
function (err, invite) {
|
|
@@ -320,7 +313,7 @@ const CollaboratorsInviteHandler = {
|
|
|
return callback(err)
|
|
return callback(err)
|
|
|
}
|
|
}
|
|
|
const inviteId = invite._id
|
|
const inviteId = invite._id
|
|
|
- return CollaboratorsHandler.addUserIdToProject(
|
|
|
|
|
|
|
+ CollaboratorsHandler.addUserIdToProject(
|
|
|
projectId,
|
|
projectId,
|
|
|
invite.sendingUserId,
|
|
invite.sendingUserId,
|
|
|
user._id,
|
|
user._id,
|
|
@@ -336,7 +329,7 @@ const CollaboratorsInviteHandler = {
|
|
|
}
|
|
}
|
|
|
// Remove invite
|
|
// Remove invite
|
|
|
logger.debug({ projectId, inviteId }, 'removing invite')
|
|
logger.debug({ projectId, inviteId }, 'removing invite')
|
|
|
- return ProjectInvite.deleteOne({ _id: inviteId }, function (err) {
|
|
|
|
|
|
|
+ ProjectInvite.deleteOne({ _id: inviteId }, function (err) {
|
|
|
if (err != null) {
|
|
if (err != null) {
|
|
|
OError.tag(err, 'error removing invite', {
|
|
OError.tag(err, 'error removing invite', {
|
|
|
projectId,
|
|
projectId,
|
|
@@ -348,7 +341,7 @@ const CollaboratorsInviteHandler = {
|
|
|
inviteId,
|
|
inviteId,
|
|
|
function () {}
|
|
function () {}
|
|
|
)
|
|
)
|
|
|
- return callback()
|
|
|
|
|
|
|
+ callback()
|
|
|
})
|
|
})
|
|
|
}
|
|
}
|
|
|
)
|
|
)
|