Пример #1
0
def is_folder(slug):
    if slug.split('/')[0] != 'admin':
        folder = Folder.query.filter(guid=slug).one()
        if folder:
            folder.is_folder = True
            folder.pages = Post.query.filter(
                folder_id=folder.id, status='published',
                type='page').order_by('created').all(array=True)
            folder.index = Post.query.filter(folder_id=folder.id,
                                             slug='index',
                                             status='published',
                                             type='page').one()
            folder.posts = Paginator(
                query=Post.query.filter(folder_id=folder.id,
                                        status='published',
                                        type='post').order_by('created'),
                page=request.args.get('page'),
                per_page=5)

            return render_template(get_template('folder.html', config),
                                   this=folder)
        else:
            return is_404()
    else:
        return is_admin_404()
Пример #2
0
def root():
    index = Post.query.filter(folder_id=1,
                              slug='index',
                              status='published',
                              type='page').one()
    return render_template(get_template('index.html', config),
                           index=index,
                           this=False)
Пример #3
0
def is_post(slug):
    post = Post.query.filter(guid=slug).one()
    if post:
        if post.slug == 'index' and post.folder_id != 0:
            return redirect('/'+post.folder.guid+'/')

        post.views += 1
        Post.query.update(post)
        
        if post.type == 'post':
            post.is_post = True
            return render_template(get_template('post.html', config), this=post, show_sidebar=False)
        else:
            post.is_page = True
            post.pages = Post.query.filter(folder_id=post.folder_id, status='published', type='page').order_by('created').all(array=True)
            return render_template(get_template('page.html', config), this=post)
    else:
        return is_404()
Пример #4
0
def posts():
    folder = Folder()
    folder.name = 'Articles'
    folder.guid = 'articles'
    folder.is_folder = True
    folder.posts = Paginator(query=Post.query.filter(status='published',
                                                     type='post').order_by(
                                                         'created', 'DESC'),
                             page=request.args.get('page'),
                             theme='foundation',
                             per_page=5)
    return render_template(get_template('articles.html', config), this=folder)
Пример #5
0
def posts():
    folder = Folder()
    folder.name = 'Articles'
    folder.guid = 'articles'
    folder.is_folder = True
    folder.posts     = Paginator(
            query    = Post.query.filter(status='published', type='post').order_by('created', 'DESC'),
            page     = request.args.get('page'),
            theme    = 'foundation',
            per_page = 5
    )
    return render_template(get_template('articles.html', config), this=folder)
Пример #6
0
def is_post(slug):
    post = Post.query.filter(guid=slug).one()
    if post:
        if post.slug == 'index' and post.folder_id != 0:
            return redirect('/' + post.folder.guid + '/')

        post.views += 1
        Post.query.update(post)

        if post.type == 'post':
            post.is_post = True
            return render_template(get_template('post.html', config),
                                   this=post,
                                   show_sidebar=False)
        else:
            post.is_page = True
            post.pages = Post.query.filter(
                folder_id=post.folder_id, status='published',
                type='page').order_by('created').all(array=True)
            return render_template(get_template('page.html', config),
                                   this=post)
    else:
        return is_404()
Пример #7
0
def is_folder(slug):
    if slug.split('/')[0] != 'admin':
        folder = Folder.query.filter(guid=slug).one()
        if folder:
            folder.is_folder    = True
            folder.pages        = Post.query.filter(folder_id=folder.id, status='published', type='page').order_by('created').all(array=True)
            folder.index        = Post.query.filter(folder_id=folder.id, slug='index', status='published', type='page').one()
            folder.posts        = Paginator(
                query    = Post.query.filter(folder_id=folder.id, status='published', type='post').order_by('created'),
                page     = request.args.get('page'),
                per_page = 5
            )

            return render_template(get_template('folder.html', config), this=folder)
        else:
            return is_404()
    else:
        return is_admin_404()
Пример #8
0
def is_404():
    return render_template(get_template('404.html', config)), 404
Пример #9
0
def is_404():
    return render_template(get_template('404.html', config)), 404
Пример #10
0
def root():
    index = Post.query.filter(folder_id=1, slug='index', status='published', type='page').one()
    return render_template(get_template('index.html', config), index=index, this=False)