33 lines
819 B
Python
33 lines
819 B
Python
from flask import abort
|
|
from flask import Blueprint
|
|
from flask import render_template
|
|
from flask import url_for
|
|
from flask import redirect
|
|
|
|
from afpy.models.NewsEntry import NewsEntry
|
|
|
|
|
|
rss_bp = Blueprint("rss", __name__)
|
|
|
|
|
|
@rss_bp.route("/feed/<type>/rss.xml")
|
|
def feed_rss(type):
|
|
name = ""
|
|
entries = []
|
|
if type == "emplois":
|
|
return redirect("https://discuss.afpy.org/c/emplois/14.rss")
|
|
elif type == "actualites":
|
|
name = "Actualités"
|
|
entries = NewsEntry.select().where(NewsEntry.state == "published")
|
|
else:
|
|
abort(404)
|
|
title = f"{name} AFPy.org"
|
|
return render_template(
|
|
"pages/rss.xml",
|
|
entries=entries,
|
|
title=title,
|
|
description=title,
|
|
link=url_for("rss.feed_rss", type=type, _external=True),
|
|
type=type,
|
|
)
|