public AddUserToGamingGroupResult AddExistingUserToGamingGroup(string gamingGroupInvitationId)
{
var invitation = ValidateGamingGroupInvitation(gamingGroupInvitationId);
var result = new AddUserToGamingGroupResult
{
EmailAddress = invitation.InviteeEmail
};
if (invitation.RegisteredUserId == null)
{
result.UserAddedToExistingGamingGroup = false;
}
else
{
var existingUser = ValidateExistingUser(invitation);
AddNewGamingGroupAssociation(invitation);
SwitchCurrentGamingGroup(existingUser, invitation);
result.UserAddedToExistingGamingGroup = true;
UpdateGamingGroupInvitation(invitation, existingUser);
AssociatePlayerWithApplicationUser(invitation, existingUser);
}
return result;
}