Esempio n. 1
0
def recent_feed():
    feed = AtomFeed(
        'WhibOx Contest 3nd Edition -- CHES 2021 Challenge',
        feed_url=request.url,
        url=request.url_root,
        author="WhibOx organizing committee",
        subtitle="Submitted challenged order by published date descending")
    programs = Program.get_all_published_sorted_by_published_time()

    for program in programs:
        item_url = f"{request.url_root}candidate/{program._id}.html"
        title = f'New challenge "{program.funny_name}" submitted'
        author = program.user.nickname
        content = render_template('candidate.html', program=program, feed=True)

        if not author or not author.strip():
            author = program.user.username
        feed.add(
            id=item_url,
            title=title,
            title_type='html',
            updated=datetime.fromtimestamp(program._timestamp_published),
            author=author,
            url=item_url,
            categories=[{
                'term': program.status
            }],
            content=content,
            content_type='html',
        )
    return feed.get_response()
Esempio n. 2
0
def recent_feed():
    feed = AtomFeed('Recent Articles',
                    feed_url=request.url,
                    url=request.url_root)
    posts = Posts()
    feed = posts.add_to_feed(feed, request.url)

    return feed.get_response()
Esempio n. 3
0
def feed():
    feed = AtomFeed('BrightonPy Events', feed_url=request.url, url=request.url_root)
    for meeting in reversed(get_meetings()):
        # A little hack
        date = meeting['datetime'] - timedelta(weeks=1)
        feed.add(
            meeting['title'],
            meeting['content'],
            author=meeting['speaker'],
            url=urljoin(request.url_root, url_for('meeting', date=meeting['path'])),
            updated=date,
            published=date
        )
    return feed.get_response()
Esempio n. 4
0
def feeds():
    feeds = AtomFeed(title="Peach Blog's Feeds",
                     feed_url=request.url,
                     url=request.url_root)
    posts = Post.query.order_by(Post.create_at.desc()).all()
    for post in posts:
        feeds.add(post.title,
                  markdown.html(post.content),
                  content_type='html',
                  author='Leetao',
                  url=get_abs_url(post.title),
                  updated=post.last_update,
                  published=post.last_update)
    return feeds.get_response()
Esempio n. 5
0
def feed(blogger):
    blog_author = Blogger.from_subdomain(blogger) or abort(404)
    posts = CommitPost.query \
                .filter_by(blogger=blog_author) \
                .order_by(CommitPost.datetime.desc())
    feed = AtomFeed('$ commits-by ' + (blog_author.name or blog_author.username),
                    feed_url=request.url, url=request.url_root)
    for post in posts:
        feed.add(
            post.get_title(),
            post.get_body(markdown=True),
            content_type='html',
            author=blog_author.name or blog_author.username,
            url=url_for('blog.commit_post', _external=True,
                        blogger=blog_author.username,
                        repo_name=post.repo.full_name,
                        hex=post.hex),
            updated=post.datetime,
            published=post.datetime,
        )
    return feed.get_response()