update
This commit is contained in:
@@ -80,6 +80,9 @@ def create_newsletter_tracking(
|
||||
link_tracking_map = {}
|
||||
|
||||
if article_links:
|
||||
# Import here to avoid circular dependency
|
||||
from database import articles_collection
|
||||
|
||||
for article in article_links:
|
||||
article_url = article.get('url')
|
||||
article_title = article.get('title', '')
|
||||
@@ -87,13 +90,22 @@ def create_newsletter_tracking(
|
||||
if article_url:
|
||||
link_tracking_id = generate_tracking_id()
|
||||
|
||||
# Create link click tracking record
|
||||
# Look up article metadata from database for personalization
|
||||
article_doc = articles_collection.find_one({'link': article_url})
|
||||
article_id = str(article_doc['_id']) if article_doc else None
|
||||
category = article_doc.get('category', 'general') if article_doc else 'general'
|
||||
keywords = article_doc.get('keywords', []) if article_doc else []
|
||||
|
||||
# Create link click tracking record with metadata
|
||||
link_click_doc = {
|
||||
'tracking_id': link_tracking_id,
|
||||
'newsletter_id': newsletter_id,
|
||||
'subscriber_email': subscriber_email,
|
||||
'article_url': article_url,
|
||||
'article_title': article_title,
|
||||
'article_id': article_id, # NEW: Article database ID
|
||||
'category': category, # NEW: Article category
|
||||
'keywords': keywords, # NEW: Article keywords for personalization
|
||||
'clicked': False,
|
||||
'clicked_at': None,
|
||||
'user_agent': None,
|
||||
|
||||
Reference in New Issue
Block a user