import html from datetime import datetime, timezone def _format_timestamp(dt: datetime) -> str: return dt.strftime("%d/%m/%Y %H:%M:%S") def _avatar_url(user) -> str: if user.avatar: return user.avatar.url return f"https://cdn.discordapp.com/embed/avatars/{user.discriminator % 5}.png" def generate_transcript(messages: list[dict], ticket_info: dict) -> str: """Génère un transcript HTML stylé. messages: [{"author": discord.User, "content": str, "timestamp": datetime, "attachments": list}] ticket_info: {"category": str, "user_id": int, "channel_id": int} """ now = datetime.now(timezone.utc) date_str = _format_timestamp(now) messages_html = "" for msg in messages: author = msg["author"] content = html.escape(msg["content"]) if msg["content"] else "" timestamp = _format_timestamp(msg["timestamp"]) avatar = _avatar_url(author) is_staff = msg.get("is_staff", False) staff_badge = 'STAFF' if is_staff else "" attachments_html = "" for att in msg.get("attachments", []): if att.url.lower().endswith((".png", ".jpg", ".jpeg", ".gif", ".webp")): attachments_html += ( f'
' ) else: attachments_html += ( f'' ) messages_html += f""" """ if not messages_html: messages_html = '