mirror of https://github.com/kianby/stacosys
WIP
parent
0a2cdbbe8f
commit
9146588902
@ -1,3 +1,15 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
|
||||
def fetch():
|
||||
pass
|
||||
|
||||
|
||||
def send(email, subject, body):
|
||||
pass
|
||||
|
||||
|
||||
def delete(content):
|
||||
# TODO delete mail
|
||||
pass
|
||||
|
@ -0,0 +1,52 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: UTF-8 -*-
|
||||
|
||||
from datetime import datetime
|
||||
import markdown
|
||||
import PyRSS2Gen
|
||||
from model.site import Site
|
||||
from model.comment import Comment
|
||||
from core.templater import get_template
|
||||
from conf import config
|
||||
|
||||
|
||||
def generate_all():
|
||||
for site in Site.select():
|
||||
generate_site(site.token)
|
||||
|
||||
|
||||
def generate_site(token):
|
||||
|
||||
site = Site.select().where(Site.token == token).get()
|
||||
rss_title = get_template("rss_title_message").render(site=site.name)
|
||||
md = markdown.Markdown()
|
||||
|
||||
items = []
|
||||
for row in (
|
||||
Comment.select()
|
||||
.join(Site)
|
||||
.where(Site.token == token, Comment.published)
|
||||
.order_by(-Comment.published)
|
||||
.limit(10)
|
||||
):
|
||||
item_link = "%s://%s%s" % (config.get(config.RSS_PROTO), site.url, row.url)
|
||||
items.append(
|
||||
PyRSS2Gen.RSSItem(
|
||||
title="%s - %s://%s%s"
|
||||
% (config.get(config.RSS_PROTO), row.author_name, site.url, row.url),
|
||||
link=item_link,
|
||||
description=md.convert(row.content),
|
||||
guid=PyRSS2Gen.Guid("%s/%d" % (item_link, row.id)),
|
||||
pubDate=row.published,
|
||||
)
|
||||
)
|
||||
|
||||
rss = PyRSS2Gen.RSS2(
|
||||
title=rss_title,
|
||||
link="%s://%s" % (config.get(config.RSS_PROTO), site.url),
|
||||
description="Commentaires du site '%s'" % site.name,
|
||||
lastBuildDate=datetime.now(),
|
||||
items=items,
|
||||
)
|
||||
rss.write_xml(open(config.get(config.RSS_FILE), "w"), encoding="utf-8")
|
||||
|
Loading…
Reference in New Issue