Esempio n. 1
0
        private async Task <TeamSearchItem> TransformItemAsync(Database.Entity.TeamSearch dbItem)
        {
            var guild = DiscordClient.GetGuild(dbItem.GuildIDSnowflake);

            if (guild == null)
            {
                GrillBotRepository.Remove(dbItem);
                return(null);
            }

            var channel = guild.GetChannel(dbItem.ChannelIDSnowflake);

            if (channel == null)
            {
                GrillBotRepository.Remove(dbItem);
                return(null);
            }

            var message = await MessageCache.GetAsync(dbItem.ChannelIDSnowflake, dbItem.MessageIDSnowflake);

            if (IsEmptyMessage(message))
            {
                GrillBotRepository.Remove(dbItem);
                return(null);
            }

            return(new TeamSearchItem()
            {
                ID = dbItem.Id,
                ShortUsername = message.Author.GetShortName(),
                Message = FormatMessage(message.Content),
                MessageLink = message.GetJumpUrl(),
                ChannelName = channel.Name
            });
        }
Esempio n. 2
0
        private async Task <TeamSearchItem> TransformItemAsync(Database.Entity.TeamSearch dbItem)
        {
            var guild = DiscordClient.GetGuild(dbItem.GuildIDSnowflake);

            if (guild == null)
            {
                Repository.RemoveSearch(dbItem.Id);
                return(null);
            }

            var channel = guild.GetChannel(dbItem.ChannelIDSnowflake);

            if (channel == null)
            {
                Repository.RemoveSearch(dbItem.Id);
                return(null);
            }

            var message = await MessageCache.GetAsync(dbItem.ChannelIDSnowflake, dbItem.MessageIDSnowflake);

            if (message == null)
            {
                Repository.RemoveSearch(dbItem.Id);
                return(null);
            }

            return(new TeamSearchItem()
            {
                ID = dbItem.Id,
                FullUsername = message.Author.GetFullName(),
                ShortUsername = message.Author.GetShortName(),
                Message = message.Content.Substring("hledam add ".Length + 1),
                MessageLink = message.GetJumpUrl(),
                ChannelName = channel.Name,
                GuildName = channel.Guild.Name
            });
        }