コード例 #1
0
        public void InviteAllGroupMembers(Peanut peanut, UserGroup userGroup, PeanutParticipationType peanutParticipationType,
                                          PeanutInvitationNotificationOptions peanutInvitationNotificationOptions, User user)
        {
            IList <UserGroupMembership> members =
                UserGroupService.FindMembershipsByGroups(PageRequest.All,
                                                         new List <UserGroup> {
                userGroup
            },
                                                         new List <UserGroupMembershipType> {
                UserGroupMembershipType.Administrator, UserGroupMembershipType.Member
            }).ToList();
            PeanutParticipationType participationType = peanutParticipationType;

            if (participationType != null)
            {
                PeanutParticipationDto peanutParticipationDto = new PeanutParticipationDto(participationType, PeanutParticipationState.Pending);
                /*Alle Nutzer einladen, die noch nicht als Teilnehmer am Peanut hinterlegt sind.*/
                IList <UserGroupMembership> inviteableMembers = members.Except(peanut.Participations.Select(part => part.UserGroupMembership)).ToList();
                foreach (UserGroupMembership inviteableMember in inviteableMembers)
                {
                    InviteUser(peanut, inviteableMember, peanutParticipationDto, peanutInvitationNotificationOptions, user);
                }
            }
        }
コード例 #2
0
        public void InviteUser(Peanut peanut, UserGroupMembership userGroupMembership, PeanutParticipationDto peanutParticipationDto,
                               PeanutInvitationNotificationOptions peanutInvitationNotificationOptions, User user)
        {
            /*Nutzer/Teilnahme hinzufügen*/
            AddOrUpdateParticipations(peanut,
                                      new Dictionary <UserGroupMembership, PeanutParticipationDto> {
                { userGroupMembership, peanutParticipationDto }
            },
                                      user);

            /*Den Nutzer benachrichtigen*/
            NotificationService.SendPeanutInvitationNotification(peanut, userGroupMembership.User, peanutInvitationNotificationOptions, user);
        }