Esempio n. 1
0
def feed(request, name):
    if name.startswith('tag-'):
        qs = Post.pub().filter('topics = ', name[4:])
    else:
        qs = Post.pub()
    feed = MyFeed(None,None).setup(qs,5).get_feed()
    response = Response(mimetype=feed.mime_type)
    feed.write(response.stream, 'utf-8')
    return response
Esempio n. 2
0
def index(request):
    latest = Post.pub().fetch(5)
    # latest.reverse()
    ns = NutSettings()
    template = ns.index_layout
    if template:
        template = 'nut:layout/%s' % template
    else:
        template = 'app:articles/index.html'
    return render_template(template, posts=latest)
    latest = Post.pub().get()
    if latest:
        return redirect(quote((u'/%s' % latest.lookup).encode('utf-8')), 301)
    return render_template('app/empty.html')
Esempio n. 3
0
def list(request):
    from logging import info
    from datetime import datetime

    if request.method == 'POST':
        handle_backup(request.files.get('backup'))
    
    pub_bm, upc_bm, unp_bm = None, None, None
    if request.args.get('list','') == 'published':
        pub_bm = request.args.get('bookmark', None)
    elif request.args.get('list','') == 'upcoming':
        upc_bm = request.args.get('bookmark', None)
    elif request.args.get('list','') == 'unpublished':
        unp_bm = request.args.get('bookmark', None)

    pub_prev, pub, pub_next = pager(Post.pub(),
                                   lambda bm: Post.pub().filter('sort_key <', bm),
                                   lambda bm: Post.rpub().filter('sort_key >', bm),
                                    bookmark=pub_bm)
    upc_prev, upc, upc_next = pager(Post.upcoming(),
                                   lambda bm: Post.upcoming()\
                                                  .filter('sort_key <', bm),
                                   lambda bm: Post.rupcoming()\
                                                  .filter('sort_key >', bm),
                                   bookmark=upc_bm)
    unp_prev, unp, unp_next = pager(Post.unpub(),
                                   lambda bm: Post.unpub()\
                                                  .filter('sort_key <', bm),
                                   lambda bm: Post.runpub()\
                                                  .filter('sort_key >', bm),
                                   bookmark=unp_bm)
    return render_template('app:articles/list.html',
                           unpublished_prev = unp_prev,
                           unpublished      = unp,
                           unpublished_next = unp_next,
                           upcoming_prev    = upc_prev,
                           upcoming         = upc,
                           upcoming_next    = upc_next,
                           published_prev   = pub_prev,
                           published        = pub,
                           published_next   = pub_next)
Esempio n. 4
0
def topic(request, tag):
    qs = Post.pub()
    rqs = Post.rpub()
    if tag is not None:
        qs = qs.filter('topics = ', tag)
        rqs = rqs.filter('topics = ', tag)
    prev, posts, next = pager(qs,
                              lambda bm: qs.filter('sort_key <', bm),
                              lambda bm: rqs.filter('sort_key >', bm),
                              bookmark=request.args.get('bookmark', None))
    ns = NutSettings()
    template = ns.archive_layout
    if template:
        template = 'nut:layout/%s' % template
    else:
        template = 'app:articles/archive.html'    
    return render_template(template,
                           prev=prev, next=next,
                           posts = posts,
                           tag=tag)
Esempio n. 5
0
def latest(n=5):
    items = Post.pub().fetch(n)
    #items.reverse()
    return items