diff --git a/app.py b/app.py index 3e87d01..1ec8c77 100644 --- a/app.py +++ b/app.py @@ -452,15 +452,22 @@ def api_posts(): if user_communities: post_source = post_data.get('source', '').lower() post_platform = post_data.get('platform', '').lower() + post_id = post_data.get('id', '').lower() # Check if this post matches any of the user's selected communities matches_community = False for selected_community in user_communities: selected_community = selected_community.lower() - # Match by exact source name or platform name + + # Enhanced matching logic (platform-agnostic): + # 1. Exact source match (e.g., source="programming", community="programming") + # 2. Platform match (e.g., platform="hackernews", community="hackernews") + # 3. Partial match in source (e.g., source="programming", community="program") + # 4. Partial match in post ID (e.g., id="reddit_programming_123", community="programming") if (post_source == selected_community or post_platform == selected_community or - selected_community in post_source): + (selected_community in post_source) or + (selected_community in post_id)): matches_community = True break