def format_log_embeds(self, logs, avatar_url): embeds = [] logs = tuple(logs) title = f"Total Results Found ({len(logs)})" for entry in logs: created_at = parser.parse(entry["created_at"]) prefix = self.bot.config["log_url_prefix"].strip("/") if prefix == "NONE": prefix = "" log_url = f"{self.bot.config['log_url'].strip('/')}{'/' + prefix if prefix else ''}/{entry['key']}" username = entry["recipient"]["name"] + "#" username += entry["recipient"]["discriminator"] embed = discord.Embed(color=self.bot.main_color, timestamp=created_at) embed.set_author( name=f"{title} - {username}", icon_url=avatar_url, url=log_url ) embed.url = log_url embed.add_field( name="Created", value=duration(created_at, now=datetime.utcnow()) ) closer = entry.get("closer") if closer is None: closer_msg = "Unknown" else: closer_msg = f"<@{closer['id']}>" embed.add_field(name="Closed By", value=closer_msg) if entry["recipient"]["id"] != entry["creator"]["id"]: embed.add_field(name="Created by", value=f"<@{entry['creator']['id']}>") embed.add_field( name="Preview", value=format_preview(entry["messages"]), inline=False ) if closer is not None: # BUG: Currently, logviewer can't display logs without a closer. embed.add_field(name="Link", value=log_url) else: logger.debug("Invalid log entry: no closer.") embed.add_field(name="Log Key", value=f"`{entry['key']}`") embed.set_footer(text="Recipient ID: " + str(entry["recipient"]["id"])) embeds.append(embed) return embeds
def format_log_embeds(self, logs, avatar_url): embeds = [] logs = tuple(logs) title = f'Total Results Found ({len(logs)})' for entry in logs: key = entry['key'] created_at = parser.parse(entry['created_at']) log_url = ( f"https://logs.modmail.tk/{key}" if not self.bot.self_hosted else self.bot.config.log_url.strip('/') + f'/logs/{key}' ) username = entry['recipient']['name'] + '#' username += entry['recipient']['discriminator'] embed = discord.Embed(color=discord.Color.blurple(), timestamp=created_at) embed.set_author(name=f'{title} - {username}', icon_url=avatar_url, url=log_url) embed.url = log_url embed.add_field(name='Created', value=duration(created_at, now=datetime.utcnow())) embed.add_field(name='Closed By', value=f"<@{entry['closer']['id']}>") if entry['recipient']['id'] != entry['creator']['id']: embed.add_field(name='Created by', value=f"<@{entry['creator']['id']}>") embed.add_field(name='Preview', value=format_preview(entry['messages']), inline=False) embed.add_field(name='Link', value=log_url) embed.set_footer( text='Recipient ID: ' + str(entry['recipient']['id']) ) embeds.append(embed) return embeds
def format_log_embeds(self, logs, avatar_url): embeds = [] logs = tuple(logs) title = f'Total Results Found ({len(logs)})' for entry in logs: key = entry['key'] created_at = parser.parse(entry['created_at']) prefix = os.getenv('LOG_URL_PREFIX', '/logs') if prefix == 'NONE': prefix = '' log_url = self.bot.config.log_url.strip('/') + f'{prefix}/{key}' username = entry['recipient']['name'] + '#' username += entry['recipient']['discriminator'] embed = discord.Embed(color=self.bot.main_color, timestamp=created_at) embed.set_author(name=f'{title} - {username}', icon_url=avatar_url, url=log_url) embed.url = log_url embed.add_field(name='Created', value=duration(created_at, now=datetime.utcnow())) embed.add_field(name='Closed By', value=f"<@{entry['closer']['id']}>") if entry['recipient']['id'] != entry['creator']['id']: embed.add_field(name='Created by', value=f"<@{entry['creator']['id']}>") embed.add_field(name='Preview', value=format_preview(entry['messages']), inline=False) embed.add_field(name='Link', value=log_url) embed.set_footer( text='Recipient ID: ' + str(entry['recipient']['id']) ) embeds.append(embed) return embeds
def format_log_embeds(self, logs, avatar_url): embeds = [] logs = tuple(logs) title = f'Total des résultats trouvés ({len(logs)})' for entry in logs: key = entry['key'] created_at = parser.parse(entry['created_at']) log_url = ( f"https://support.discord.fr/{key}" if not self.bot.self_hosted else self.bot.config.log_url.strip('/') + f'/logs/{key}' ) username = entry['recipient']['name'] + '#' username += entry['recipient']['discriminator'] embed = discord.Embed(color=self.bot.main_color, timestamp=created_at) embed.set_author(name=f'{title} - {username}', icon_url=avatar_url, url=log_url) embed.url = log_url embed.add_field(name='Créé', value=duration(created_at, now=datetime.utcnow())) embed.add_field(name='Fermé par', value=f"<@{entry['closer']['id']}>") if entry['recipient']['id'] != entry['creator']['id']: embed.add_field(name='Créé par', value=f"<@{entry['creator']['id']}>") embed.add_field(name='Aperçu', value=format_preview(entry['messages']), inline=False) embed.add_field(name='Lien', value=log_url) embed.set_footer( text='ID destinataire: ' + str(entry['recipient']['id']) ) embeds.append(embed) return embeds
def format_log_embeds(self, logs, avatar_url): embeds = [] logs = tuple(logs) title = f"Total Results Found ({len(logs)})" for entry in logs: key = entry["key"] created_at = parser.parse(entry["created_at"]) prefix = os.getenv("LOG_URL_PREFIX", "/logs") if prefix == "NONE": prefix = "" log_url = self.bot.config.log_url.strip("/") + f"{prefix}/{key}" username = entry["recipient"]["name"] + "#" username += entry["recipient"]["discriminator"] embed = discord.Embed(color=self.bot.main_color, timestamp=created_at) embed.set_author(name=f"{title} - {username}", icon_url=avatar_url, url=log_url) embed.url = log_url embed.add_field(name="Created", value=duration(created_at, now=datetime.utcnow())) embed.add_field(name="Closed By", value=f"<@{entry['closer']['id']}>") if entry["recipient"]["id"] != entry["creator"]["id"]: embed.add_field(name="Created by", value=f"<@{entry['creator']['id']}>") embed.add_field(name="Preview", value=format_preview(entry["messages"]), inline=False) embed.add_field(name="Link", value=log_url) embed.set_footer(text="Recipient ID: " + str(entry["recipient"]["id"])) embeds.append(embed) return embeds