feat(cover): filter obituaries from cover headlines
Exclude articles categorized as "Obituaries" from the headline list passed to cover generation. Applied in all three call sites: manual publish, issue regenerate, and auto-publish scheduler. Made-with: Cursor
This commit is contained in:
@@ -103,13 +103,17 @@ def regenerate(issue_id):
|
|||||||
issue = Issue.query.get_or_404(issue_id)
|
issue = Issue.query.get_or_404(issue_id)
|
||||||
article_ids = json.loads(issue.article_ids)
|
article_ids = json.loads(issue.article_ids)
|
||||||
|
|
||||||
|
articles_for_issue = (
|
||||||
|
Article.query.filter(Article.id.in_(article_ids))
|
||||||
|
.order_by(Article.pub_date.asc())
|
||||||
|
.all()
|
||||||
|
)
|
||||||
headlines = [
|
headlines = [
|
||||||
a.title for a in Article.query.filter(Article.id.in_(article_ids))
|
a.title for a in articles_for_issue
|
||||||
.order_by(Article.pub_date.asc()).all()
|
if "Obituaries" not in json.loads(a.categories)
|
||||||
]
|
]
|
||||||
|
|
||||||
categories_list = []
|
categories_list = []
|
||||||
for a in Article.query.filter(Article.id.in_(article_ids)).all():
|
for a in articles_for_issue:
|
||||||
categories_list.extend(json.loads(a.categories))
|
categories_list.extend(json.loads(a.categories))
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -159,13 +159,17 @@ def create_issue():
|
|||||||
week_start = date.fromisoformat(week_start_str)
|
week_start = date.fromisoformat(week_start_str)
|
||||||
week_end = date.fromisoformat(week_end_str)
|
week_end = date.fromisoformat(week_end_str)
|
||||||
|
|
||||||
|
articles_for_issue = (
|
||||||
|
Article.query.filter(Article.id.in_(included_ids))
|
||||||
|
.order_by(Article.pub_date.asc())
|
||||||
|
.all()
|
||||||
|
)
|
||||||
headlines = [
|
headlines = [
|
||||||
a.title for a in Article.query.filter(Article.id.in_(included_ids))
|
a.title for a in articles_for_issue
|
||||||
.order_by(Article.pub_date.asc()).all()
|
if "Obituaries" not in json.loads(a.categories)
|
||||||
]
|
]
|
||||||
|
|
||||||
categories_list = []
|
categories_list = []
|
||||||
for a in Article.query.filter(Article.id.in_(included_ids)).all():
|
for a in articles_for_issue:
|
||||||
categories_list.extend(json.loads(a.categories))
|
categories_list.extend(json.loads(a.categories))
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -76,7 +76,10 @@ class SchedulerManager:
|
|||||||
return
|
return
|
||||||
|
|
||||||
article_ids = [a.id for a in articles]
|
article_ids = [a.id for a in articles]
|
||||||
headlines = [a.title for a in articles]
|
headlines = [
|
||||||
|
a.title for a in articles
|
||||||
|
if "Obituaries" not in json.loads(a.categories)
|
||||||
|
]
|
||||||
|
|
||||||
categories_list = []
|
categories_list = []
|
||||||
for a in articles:
|
for a in articles:
|
||||||
|
|||||||
Reference in New Issue
Block a user