Ejemplo n.º 1
0
        public MuteEvent GetNotUnmutedUserMuteEvent(ulong serverId, ulong userId)
        {
            var query = new GetMuteEventsQuery(serverId, takeOnlyNotUnmuted: true, userId);

            // in the same time there should exists only one MUTED MuteEvent per user per server (FirstOrDefault)
            return(this._queryBus.Execute(query).MuteEvents.FirstOrDefault());
        }
        public void UnmuteUsersInit(DiscordServerContext server)
        {
            var users    = this._usersService.GetUsers(server).ToList();
            var muteRole = this._usersRolesService.GetRoleByName(UsersRolesService.MUTED_ROLE_NAME, server);

            if (!users.Any() || muteRole == null)
            {
                return;
            }

            var query            = new GetMuteEventsQuery(server.Id);
            var notUnmutedEvents = this._queryBus.Execute(query).MuteEvents
                                   .Where(x => x.Unmuted == false)
                                   .ToList();

            foreach (var muteEvent in notUnmutedEvents)
            {
                if (muteEvent.TimeRange.End < DateTime.UtcNow)
                {
                    this.RemoveMuteRole(muteEvent, server, users, muteRole);
                }
                else
                {
                    this.RemoveInFuture(muteEvent, server, users, muteRole);
                }
            }
        }
Ejemplo n.º 3
0
        public MuteEvent GetNotUnmutedMuteEvent(DiscordServerContext server, UserContext userContext)
        {
            var getMuteEvents       = new GetMuteEventsQuery(server.Id);
            var allServerMuteEvents = _queryBus.Execute(getMuteEvents).MuteEvents;
            var userMuteEvents      = allServerMuteEvents.Where(x => x.UserId == userContext.Id);

            return(userMuteEvents.FirstOrDefault(x => x.Unmuted == false));
        }
Ejemplo n.º 4
0
        private IEnumerable <MuteEvent> GetMuteEvents(DiscordServerContext server, ulong userId)
        {
            var getMuteEvents       = new GetMuteEventsQuery(server.Id);
            var allServerMuteEvents = _queryBus.Execute(getMuteEvents).MuteEvents;

            var userMuteEvents = allServerMuteEvents.Where(x => x.UserId == userId);

            return(userMuteEvents);
        }
Ejemplo n.º 5
0
        public IEnumerable <MuteEvent> GetNotUnmutedMuteEvents(ulong serverId)
        {
            var query = new GetMuteEventsQuery(serverId, takeOnlyNotUnmuted: true);

            return(this._queryBus.Execute(query).MuteEvents);
        }