Add method to remove blank uuids

This commit is contained in:
Blade Barringer
2015-08-21 21:28:52 -05:00
parent 3153fbac3c
commit 59dc0cdb4f
2 changed files with 23 additions and 1 deletions

View File

@@ -109,6 +109,20 @@ describe('Invite to Group Controller', function() {
expect(scope.invitees).to.eql([{uuid: ''}]); expect(scope.invitees).to.eql([{uuid: ''}]);
}); });
it('removes blank fields from being sent', function() {
groups.Group.invite.yields();
scope.invitees = [{uuid: 'user1'}, {uuid: ''}, {uuid: 'user3'}];
scope.inviteNewUsers('uuid');
expect(groups.Group.invite).to.be.calledOnce;
expect(groups.Group.invite).to.be.calledWith({
gid: scope.group._id,
}, {
uuids: ['user1', 'user3']
});
});
}); });
context('invalid invite method', function() { context('invalid invite method', function() {

View File

@@ -28,7 +28,7 @@ habitrpg.controller('InviteToGroupCtrl', ['$scope', 'User', 'Groups', 'injectedG
}); });
} }
else if (inviteMethod === 'uuid') { else if (inviteMethod === 'uuid') {
var uuids = _.pluck($scope.invitees, 'uuid'); var uuids = _getOnlyUuids();
Groups.Group.invite({gid: $scope.group._id}, {uuids: uuids}, function(){ Groups.Group.invite({gid: $scope.group._id}, {uuids: uuids}, function(){
Notification.text(window.env.t('invitationsSent')); Notification.text(window.env.t('invitationsSent'));
_resetInvitees(); _resetInvitees();
@@ -41,6 +41,14 @@ habitrpg.controller('InviteToGroupCtrl', ['$scope', 'User', 'Groups', 'injectedG
} }
} }
function _getOnlyUuids() {
var uuids = _.pluck($scope.invitees, 'uuid');
var filteredUuids = _.filter(uuids, function(id) {
return id != '';
});
return filteredUuids;
}
function _resetInvitees() { function _resetInvitees() {
var emptyEmails = [{name:"",email:""},{name:"",email:""}]; var emptyEmails = [{name:"",email:""},{name:"",email:""}];
var emptyInvitees = [{uuid: ''}]; var emptyInvitees = [{uuid: ''}];