Example #1
0
def article(page=1):
    if not check_permission(current_user, 'admin'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))
    pagination = Article.query.order_by(Article.id.desc())\
            .paginate(page, per_page=30, error_out=True)
    return render_template('admin/article.html', pagination=pagination)
Example #2
0
def create():
    if not check_permission(current_user, 'article'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))
    form = CreateForm(request.form)
    form.category_id.choices = [(c.id, c.category_name) for c in Category.query.all()]
    if request.method == 'POST' and form.validate():
        title = form.title.data
        html_content = form.html_content.data
        raw_content = form.raw_content.data
        category_id = form.category_id.data
        brief = raw_content[:100]

        article = Article(current_user.id, title, brief, raw_content, html_content, category_id)

        f = request.files['cover']
        if f:
            try:
                article.cover = save_file(f)
            except Exception, e:
                pass

        article.save()

        return redirect(url_for('Common.index'))
Example #3
0
def delete_carousel(carousel_id):
    if not check_permission(current_user, 'admin'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))
    carousel = Carousel.query.get(carousel_id)
    carousel.delete()
    kwargs = dict(
        carousel_form=CarouselForm(),
        carousel_update_form=CarouselUpdateForm(),
        carousels=Carousel.query.filter_by(deleted=False).order_by(Carousel.order_num).all(),
    )
    return render_template('admin/carousel.html', **kwargs)
Example #4
0
def permission(page=1):
    if not check_permission(current_user, 'admin'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))
    if request.method == 'POST':
        user = User.query.get(request.form['user_id'])
        for p in list_permission():
            if not request.form.get(p, False):
                set_permission(user, p, 0)
            else:
                set_permission(user, p, 1)

    pagination = User.query.order_by(User.id.desc())\
            .paginate(page, per_page=30, error_out=True)
    return render_template('admin/permission.html', pagination=pagination)
Example #5
0
def category():
    if not check_permission(current_user, 'admin'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))

    category_form = CategoryForm(request.form)
    if category_form.validate():
        c = Category(category_form.category_name.data)
        c.save()

    kwargs = dict(
        category_form=category_form,
        categorys=Category.query.all(),
        category_update_form=CategoryUpdateForm(),
    )
    return render_template('admin/category.html', **kwargs)
Example #6
0
def create(article_id):
    if not check_permission(current_user, 'comment'):
        flash('你没有权限')
        return redirect(url_for('Article.retrieve', article_id=article_id))
    form = CommentForm(request.form)
    if form.validate():
        article = Article.query.get(article_id)
        raw_content = form.content.data
        def _replace(matched):
            user = User.query.filter_by(username=matched.group('username')).first()
            return "<a href=" + url_for('User.profile', user_id=user.id) + ">@{username}</a>:"\
                    .format(username=matched.group('username'))
        html_content = re.sub(r'@(?P<username>[^:]+):', _replace, raw_content)
        comment = Comment(article.id, current_user.id, html_content)
        comment.save()

    return redirect(url_for('Article.retrieve', article_id=article_id))
Example #7
0
def carousel():
    if not check_permission(current_user, 'admin'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))
    form = CarouselForm(request.form)
    if form.validate() and request.method == 'POST':
        order_num = form.order_num.data
        url = form.url.data
        title = form.title.data
        brief = form.brief.data
        cover = ''
        f = request.files['cover']
        if f:
            cover = save_file(f)
        c = Carousel(order_num, url, cover, title, brief)
        c.save()
    kwargs = dict(
        carousel_form=form,
        carousel_update_form=CarouselUpdateForm(),
        carousels=Carousel.query.filter_by(deleted=False).order_by(Carousel.order_num).all(),
    )
    return render_template('admin/carousel.html', **kwargs)
Example #8
0
def analyse():
    if not check_permission(current_user, 'admin'):
        flash('你没有权限')
        return redirect(url_for('Common.index'))
    return render_template('admin/analyse.html')