diff --git a/post_parser.py b/post_parser.py
index d1b358b..e06e7a9 100644
--- a/post_parser.py
+++ b/post_parser.py
@@ -12,9 +12,8 @@ import os
import json
import html
import inspect
-
from datetime import datetime
-from typing import Union, Dict, Any, List
+from typing import Union, Dict, Any, List, Optional
from pyrogram.types import Message
from pyrogram.enums import MessageMediaType
from bleach.css_sanitizer import CSSSanitizer
@@ -662,15 +661,19 @@ class PostParser:
return None
- def generate_html_footer(self, message: Message) -> str:
+ def generate_html_footer(self, message: Message, flags_list: Optional[List[str]] = None) -> str:
content_footer = []
content_footer.append('
')
if reactions_views_html := self._reactions_views_links(message): # Add reactions, views, date and links
content_footer.append(reactions_views_html)
- flags_list = self._extract_flags(message)
- if flags_list:
- flags_html = self._format_flags(flags_list)
+
+ # Use provided flags_list if available, otherwise extract from message
+ current_flags = flags_list if flags_list is not None else self._extract_flags(message)
+
+ if current_flags:
+ flags_html = self._format_flags(current_flags)
content_footer.append('
' + flags_html)
+
html_footer = '\n'.join(content_footer)
html_footer = self._sanitize_html(html_footer)
return html_footer
diff --git a/rss_generator.py b/rss_generator.py
index 6356414..7ae1044 100644
--- a/rss_generator.py
+++ b/rss_generator.py
@@ -186,8 +186,7 @@ async def _render_messages_groups(messages_groups, post_parser, exclude_flags: s
all_flags.update(msg['flags'])
merged_flags = list(all_flags) # Convert back to list if needed, or keep as set
- main_message['flags'] = merged_flags
- footer_html = post_parser.generate_html_footer(main_message)
+ footer_html = post_parser.generate_html_footer(main_message, flags_list=merged_flags)
html_parts = [
f'